Towards Path-Aware Coverage-Guided Fuzzing

Read full text
Authors: Giacomo Priamo, Daniele Cono D’Elia, Mathias Payer, Leonardo Querzoni
Cited by: 0
References: 27

Abstract

Automated fuzz testing is now standard practice, yet key blind spots persist. Coverage-guided fuzzers typically rely on edge coverage as a lightweight proxy for program behavior. However, this metric captures path variations only weakly: it cannot differentiate executions that follow distinct control-flow paths but traverse the same edges—causing many path-dependent bugs to go undetected. Path awareness would offer a richer coverage view but has been considered too costly for fuzzing.We introduce a lightweight method for tracking intra-procedural execution paths, enabling efficient path-aware feedback. This enhances the fuzzer’s ability to detect subtle bugs, even in well-tested software. To counter the resulting seed explosion, we evaluate two strategies—culling and opportunistic path-aware fuzzing—that balance precision and throughput. Our findings show that path-aware fuzzing, when properly guided, uncovers more bugs and reveals untapped potential in fuzzing research.

Fields of Study & Subjects

Software Testing and Debugging Techniques Software System Performance and Reliability Software Engineering Research

Publication details

Journal / source
Proceedings of the CGO/Proceedings of the ... CGO
Pages
84–97
Publication date
31 January 2026
Language
EN