Smart Greybox Fuzzing
Not on the map. Why?
Abstract (arXiv)
Coverage-based greybox fuzzing (CGF) is one of the most successful methods for automated vulnerability detection. Given a seed file (as a sequence of bits), CGF randomly flips, deletes or bits to generate new files. CGF iteratively constructs (and fuzzes) a seed corpus by retaining those generated files which enhance coverage. However, random bitflips are unlikely to produce valid files (or valid chunks in files), for applications processing complex file formats. In this work, we introduce smart greybox fuzzing (SGF) which leverages a high-level structural representation of the seed file to generate new files. We define innovative mutation operators that work on the virtual file structure rather than on the bit level which allows SGF to explore completely new input domains while maintaining file validity. We introduce a novel validity-based power schedule that enables SGF to spend more time generating files that are more likely to pass the parsing stage of the program, which can expose vulnerabilities much deeper in the processing logic. Our evaluation demonstrates the effectiveness of SGF. On several libraries that parse structurally complex files, our tool AFLSmart explores substantially more paths (up to 200%) and exposes more vulnerabilities than baseline AFL. Our tool AFLSmart has discovered 42 zero-day vulnerabilities in widely-used, well-tested tools and libraries; so far 17 CVEs were assigned.
Key facts. Cited by 6 papers in the map (data through 7 Oct 2026). First posted on arXiv 23 Nov 2018.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 1; 2022: 1; 2023: 0; 2024: 2; 2025: 2.
6 papers.
- 2024LLAMAFUZZ: Large Language Model Enhanced Greybox Fuzzingcited by 14
- 2025TAI3: Testing Agent Integrity in Interpreting User Intentcited by 7
- 2024Learning Program Behavioral Models from Synthesized Input-Output Pairscited by 4
- 2021State Selection Algorithms and Their Impact on The Performance of Stateful Network Protocol Fuzzingcited by 3
- 2025Synthesizing Precise Protocol Specs from Natural Language for Effective Test Generationcited by 2
- 2022SLOPT: Bandit Optimization Framework for Mutation-Based Fuzzingcited by 1
- 2025Synthesizing Precise Protocol Specs from Natural Language for Effective Test Generation22 Nov 2025
- 2025TAI3: Testing Agent Integrity in Interpreting User Intent9 Jun 2025
- 2024Learning Program Behavioral Models from Synthesized Input-Output Pairs11 Jul 2024
- 2024LLAMAFUZZ: Large Language Model Enhanced Greybox Fuzzing11 Jun 2024
- 2022SLOPT: Bandit Optimization Framework for Mutation-Based Fuzzing7 Nov 2022
- 2021State Selection Algorithms and Their Impact on The Performance of Stateful Network Protocol Fuzzing24 Dec 2021