antonio-morales/Fuzzing101: An step by step fuzzing tutorial. A GitHub Security Lab initiative
Fuzz testing (or fuzzing) is an automated software testing technique that is based on feeding the program with random/mutated input values and monitoring it for exceptions/crashes. AFL, libFuzzer and HonggFuzz are three of the most successful fuzzers when it comes to real world applications. All three are examples of Coverage-guided evolutionary fuzzers. Evolutionary: is a metaheuristic approach inspired by evolutionary algorithms, which basically consists in the evolution and mutation of the initial subset (seeds) over time, by using a selection criteria (ex. coverage). Coverage-guided: To increase the chance of finding new crashes, coverage-guided fuzzers gather and compare code coverage data between different inputs (usually through instrumentation) and pick those inputs which lead to new execution paths. Simplification of the coverage gathering process of a coverage-guided evolutionary fuzzer Thanks for their help: Are you stuck and looking for help? Do you have suggestions for mak
Fuzzing-101 Do you want to learn how to fuzz like a real expert, but don't know how to start? If so, this is the course for you! 10 real targets, 10 exercises. Are you able to solve all 10? Structure Exercise No. Target CVEs to find Time estimated Main topics Exercise 1 Xpdf CVE-2019-13288 120 mins Afl-clang-fast, Afl-fuzz, GDB Exercise 2 libexif CVE-2009-3895, CVE-2012-2836 6 hours Afl-clang-lto, Fuzz libraries, Eclipse IDE Exercise 3 TCPdump CVE-2017-13028 4 hours ASan, Sanitizers Exercise 4 LibTIFF CVE-2016-9297 3 hours Code coverage, LCOV Exercise 5 Libxml2 CVE-2017-9048 3 hours Dictionari
related reading
- Earn $200K by fuzzing for a weekend: Part 1 | secret clubsecret.club
- GitHub RCE Vulnerability: CVE-2026-3854 Breakdown | Wiz Blogwiz.io
- GitHub - jackyzha0/docker-explained: 🐋 wtf is docker and why is everyone talking about itgithub.com
- Software Engineering at Googleabseil.io
- GitHub - abhivaikar/howtheytest: A collection of public resources about how software companies test their softwaregithub.com
- GitHub - jlevy/the-art-of-command-line: Master the command line, in one pagegithub.com
- Reading 2: Testingweb.mit.edu
- How Figma stays ahead of vulnerabilities with agentsfigma.com
- #1 Solidity Tutorial & Ethereum Blockchain Programming Course | CryptoZombiescryptozombies.io
- Defuse Security Research and Developmentdefuse.ca
- How to Contribute to Open Source | Open Source Guidesopensource.guide
- First Timers Only - Get involved in Open Source and commit code to your first project!firsttimersonly.com