PageRenderTime 30ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/README.md

https://gitlab.com/MisterCh0c1/fuzzdb
Markdown | 92 lines | 62 code | 30 blank | 0 comment | 0 complexity | e3b63c8138ca693a4a08971d0674a14e MD5 | raw file
  1. FuzzDB is the most comprehensive Open Source database of malicious inputs, predictable resource names, greppable strings for server response messages, and other resources like web shells. It's like an application security scanner, without the scanner.
  2. # Download #
  3. **Preferred method is to check out sources via git, new payloads are added frequently**
  4. ```
  5. git clone git@github.com:fuzzdb-project/fuzzdb.git fuzzdb
  6. ```
  7. While in the FuzzDB dir, you can update your local repo with the command
  8. ```
  9. git pull
  10. ```
  11. You can also browse the [FuzzDB github sources](https://github.com/fuzzdb-project/fuzzdb/tree/master) and there is always a [zip file](https://github.com/fuzzdb-project/fuzzdb/archive/master.zip)
  12. # What's in FuzzDB? #
  13. Some examples:
  14. **Predictable Resource Locations -**
  15. Because of the popularity of a small number of server types, platforms, and package formats, resources such as [logfiles and administrative directories](http://www.owasp.org/index.php/Forced_browsing) are typically located in a small number of [predictable locations](http://projects.webappsec.org/Predictable-Resource-Location).
  16. FuzzDB contains a comprehensive database of these, sorted by platform type, language, and application, making brute force testing less brutish.
  17. (https://github.com/fuzzdb-project/fuzzdb/tree/master/discovery/predictable-filepaths)
  18. **Attack Patterns -**
  19. Categorized by platform, language, and attack type, malicious and malformed inputs known to cause information leakage and exploitation have been collected into sets of test cases.
  20. FuzzDB contains comprehensive lists of [attack payloads](https://github.com/fuzzdb-project/fuzzdb/tree/master/attack-payloads) known to cause issues like OS command injection, directory listings, directory traversals, source exposure, file upload bypass, authentication bypass, http header crlf injections, and more.
  21. (https://github.com/fuzzdb-project/fuzzdb/tree/master/attack)
  22. **Response Analysis -**
  23. Since system responses also contain predictable strings, FuzzDB contains a set of regex pattern dictionaries such as interesting error messages to aid detection software security defects, lists of common Session ID cookie names, and more.
  24. (https://github.com/fuzzdb-project/fuzzdb/wiki/regexerrors)
  25. **Other useful stuff -**
  26. Webshells, common password and username lists, and some handy wordlists.
  27. (https://github.com/fuzzdb-project/fuzzdb/tree/master/web-backdoors) etc etc etc
  28. **Documentation -**
  29. Helpful documentation and cheatsheets sourced from around the web that are relevant to the payload categories are also provided. Many directories contain a README.md file with usage notes.
  30. (https://github.com/fuzzdb-project/fuzzdb/tree/master/docs)
  31. # Why was FuzzDB created? #
  32. The sets of payloads currently built in to open source fuzzing and scanning software are poorly representative of the total body of potential attack patterns. Commercial scanners are a bit better, but not much. However, commercial tools also have a downside, in that that they tend to lock these patterns away in obfuscated binaries.
  33. Furthermore, it's impossible for a human pentester to encounter and memorize all permutations of the meta characters and hex encoding likely to cause error conditions to arise.
  34. FuzzDB was created to aggregate all known attack payloads and common predictable resource names into usable fuzzer payload lists, categorized by function and platform, and make them freely available under an Open Source license. It is immediately usable by web application penetration testers and security researchers.
  35. Released under the dual New BSD and Creative Commons by Attribution licenses, FuzzDB can be leveraged to improve the test cases built into open source and commercial testing software.
  36. # How was the data collected? #
  37. Lots of hours of research while performing penetration tests:
  38. * analysis of default app installs
  39. * analysis of system and application documentation
  40. * analysis of error messages
  41. * researching old web exploits for repeatable attack strings
  42. * scraping scanner payloads from http logs
  43. * various books, articles, blog posts, mailing list threads
  44. * other open source fuzzers and pentest tools
  45. and the input of contributors: https://github.com/fuzzdb-project/fuzzdb/graphs/contributors
  46. # How to Use fuzzdb #
  47. FuzzDB is like an open source application security scanner, without the scanner.
  48. The most common use case is with HTTP proxy and fuzzing tools such as
  49. * OWASP Zap proxy, for which FuzzDB is available as a plugin. (https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project).
  50. * With Burp Proxy's [intruder](http://portswigger.net/intruder/) module. The regex/errors.txt file can be loaded to [pattern match the server responses](https://github.com/fuzzdb-project/fuzzdb/wiki/regexerrors).
  51. Other ways fuzzdb is often used:
  52. * to test web services
  53. * as malicious input payloads for testing non-HTTP network aware application with custom fuzzing tools
  54. * as malicious input payloads for testing GUI or command line software with standard test automation tools
  55. * incorporating the patterns into Open Source software, or into your own commercial product
  56. * in training materials and documentation
  57. * to learn about software exploitation techniques
  58. # Who #
  59. FuzzDB was created by Adam Muntner (amuntner @ gmail.com)
  60. The FuzzDB license is New BSD and Creative Commons by Attribution. I want this project to be freely available in order to make the patterns contained within obsolete. If you use this project in your work, research, or commercial product, you are required to cite it. That's it.
  61. FuzzDB (c) Copyright Adam Muntner, 2010-2015
  62. Portions copyrighted by others, as noted in commit comments and README.md files.