Skip to content
STIMSMITH

Coverage-Guided Fuzzing

Technique

Coverage-guided fuzzing (CGF) is a feedback-driven testing technique that uses execution feedback, most commonly code coverage, to steer input mutation toward unexplored program behavior. Public research describes CGF as effective at finding many bugs, while cautioning that higher coverage does not necessarily imply better fault detection because triggering a bug may require reaching a relevant program state in addition to exercising a path. The technique has been applied to software, hardware/processor verification (e.g., RFUZZ, DifuzzRTL, TheHuzz, ChatFuzz, FuSS, GoldenFuzz, ReFuzz, Fuzzilicon), and LLM-based multi-agent systems (FLARE), with active research on alternative feedback signals (e.g., mutation scores, microcode-level feedback, contextual-bandit-driven seed reuse) to escape coverage plateaus.

First seen 5/25/2026
Last seen 8/9/2026
Evidence 74 chunks
Wiki v7

WIKI

Overview

Coverage-guided fuzzing (CGF) is a testing technique that uses execution feedback, commonly code coverage, to guide input mutation toward inputs that explore more program behavior. Public research describes CGF as an effective technique that has detected many bugs across software applications and as a technique that focuses on maximizing code coverage during fuzzing. However, the same research cautions that higher coverage does not necessarily imply better fault detection: triggering a bug can require both exercising a particular path and reaching an interesting program state on that path. [CGF definition and coverage caveat]

Feedback signals

READ FULL ARTICLE →

NEIGHBORHOOD

4 nodes · 4 edges
graph · Coverage-Guided Fuzzing · depth=1

RELATIONSHIPS

43 connections
AFL ← implements 100% 8e
AFL++ implements coverage-guided fuzzing to discover new code paths.
libFuzzer ← implements 100% 7e
libFuzzer is a library for coverage-guided fuzz testing.
The paper proposes a novel coverage-guided fuzzing approach for ISS verification.
DiFuzzRTL ← implements 100% 3e
It relies on coverage feedback to steer mutations.
Employs coverage-guided fuzzing to verify instruction set simulators.
Coverage Feedback uses → 100% 3e
Coverage-guided fuzzing uses coverage metrics to direct test generation.
RFUZZ ← implements 90% 2e
RFUZZ is a coverage-directed grey-box fuzzer for RTL.
The paper leverages coverage-guided fuzzing techniques based on LLVM libFuzzer.
Functional Coverage ← part of 90% 2e
Functional coverage is integrated as part of the coverage-guided fuzzing approach.
LLVM libFuzzer uses → 100% 2e
The coverage-guided fuzzing technique is implemented using LLVM libFuzzer.
The paper compares its approach to coverage-guided fuzzing
State Coverage uses → 90% 2e
Coverage-guided fuzzing uses state coverage to guide mutation.
Code Coverage uses → 100% 2e
Coverage-guided fuzzing uses code coverage as feedback for test case generation.
Custom Mutation Procedure uses → 100% 2e
The CGF approach uses a specialized mutator tailored for ISS verification.
ELF Binary uses → 90% 2e
The CGF approach transforms bytestreams into ELF binaries for execution.
Seed Input uses → 93% 2e
Coverage-guided fuzzing uses seed inputs that are mutated based on coverage feedback.
Branch Coverage uses → 100% 2e
Coverage-guided fuzzing uses branch coverage as a metric to guide exploration.
FuSS Framework ← implements 100% 2e
The FuSS framework implements coverage-guided fuzzing as a core component.
SearchSYS ← implements 95% 2e
SearchSYS employs coverage-guided fuzzing via AFL++ to explore simulator code.
The paper employs Coverage-Guided Fuzzing as one of its two core verification techniques.
TheHuzz ← implements 88% 1e
Uses code and register coverage to guide input mutations.
The paper discusses coverage-guided fuzzing as a related approach and notes its limitations.
Clang Compiler Instrumentation uses → 100% 1e
Coverage-guided fuzzing relies on Clang compiler instrumentation for coverage reporting.
The paper discusses coverage-guided fuzzing as a related competing approach for hardware verification.
Fuzzilicon ← implements 95% 1e
Fuzzilicon applies coverage-guided fuzzing to commercial x86 CPUs.
BugsBunny ← implements 85% 1e
BugsBunny is a directed hardware fuzzer that implements coverage-guided fuzzing.
american fuzzy lop (AFL) ← implements 90% 1e
AFL is a well-known coverage-guided fuzzer.
Fuzzing implements → 95% 1e
Coverage-guided fuzzing is a specific type of fuzzing technique.
The paper discusses coverage-guided fuzzing as a related approach for processor verification.
Aurora-Fuzz ← implements 85% 1e
Aurora-Fuzz implements coverage-guided fuzzing inherited from Fuzzware, measuring translation blocks visited.
Seed Trimming ← part of 88% 1e
Seed trimming is a step in coverage-guided fuzzing for efficient configuration management.
Input Mutation uses → 100% 1e
Coverage-guided fuzzing uses input mutation to explore new execution paths.
Instruction Set Simulator (ISS) evaluates → 90% 1e
Coverage-guided fuzzing has been used for testing Instruction Set Simulators.
LiFU ← implements 95% 1e
LiFU uses coverage feedback to guide fuzzing.
Cross-Level Verification ← uses 95% 1e
Cross-level verification employs Coverage-Guided Fuzzing for unit-level verification.
DiFuzzRTL ← uses 90% 1e
The philosophy statement clarifies that DifuzzRTL adopts a coverage-guided fuzzing approach to drive its testing process.
register coverage uses → 68% 1e
Register-coverage is presented as the coverage signal that steers fuzzing, aligning with the coverage-guided fuzzing technique employed by DifuzzRTL.
MorFuzz ← uses 100% 1e
MorFuzz is described as a coverage-guided processor fuzzer.
Fuzzilicon ← uses 98% 1e
Fuzzilicon combines microcode-level instrumentation with coverage-guided fuzzing.
Mutation-based Fuzzing uses → 95% 1e
Coverage-guided fuzzing employs mutation-based techniques on randomly created data.
Functional Coverage uses → 100% 1e
The proposed CGF approach integrates functional coverage to complement code coverage.
Fuzzware ← implements 95% 1e
Fuzzware uses coverage feedback to guide the fuzzing process.
The paper mentions coverage-guided fuzzing tailored for ISS-level verification as a related research direction.

CITATIONS

7 sources
7 citations — click to expand
[1] CGF is described as effective at detecting many bugs while cautioning that higher coverage does not necessarily imply better fault detection, because triggering a bug may require both exercising a specific path and reaching an interesting program state on that path. Investigating Coverage Guided Fuzzing with Mutation Testing
[2] FLARE applies coverage-guided fuzzing to LLM-based multi-agent systems by extracting specifications and behavioral spaces from agent definitions, building test oracles, and fuzzing to expose failures, reporting 96.9% inter-agent coverage, 91.1% intra-agent coverage, and 56 previously unknown failures on 16 open-source applications. FLARE: Agentic Coverage-Guided Fuzzing for LLM-Based Multi-Agent Systems
[3] Verifying instruction set simulators using coverage-guided fuzzing has been investigated, treating the ISS as the target under test. A RISC-V Test Sequences Generation Method Based on Instruction ...
[4] DifuzzRTL is a differential fuzz testing framework for CPU verification that introduces a register-coverage metric to comprehensively capture RTL design states and guide input generation, cross-checks RTL simulation results against an ISA simulator, and automatically instruments register-coverage into target RTL designs. DifuzzRTL — CPU RTL Differential Fuzzer | Open Awesome
[5] ReFuzz selects and mutates highly effective tests from historic processor designs using contextual bandits to improve vulnerability detection and coverage efficiency on new target processors. NDSS 2026 hardware security research announcement (ReFuzz)
[6] Fuzzilicon is the first framework to perform post-silicon fuzzing on x86 CPUs with deep microcode-level instrumentation, extracting feedback directly from the processor's internal microcode execution and combining it with coverage-guided fuzzing to uncover subtle microarchitectural vulnerabilities. NDSS 2026 hardware security research announcement (Fuzzilicon)
[7] GoldenFuzz introduces a two-stage fuzzing strategy that decouples test refinement from vulnerability exploration using a fast golden-reference model of the device, achieving high coverage and discovering new high-severity vulnerabilities across RISC-V processors. NDSS 2026 hardware security research announcement (GoldenFuzz)