Improving Grey-Box Fuzzing by Modeling Program Behavior
Siddharth Karamcheti, Gideon Mann, and David Rosenberg

TL;DR
This paper enhances grey-box fuzzing efficiency by using machine learning to model program behavior, guiding input generation towards uncertain areas to improve code coverage and vulnerability discovery.
Contribution
It introduces a machine learning-based approach to model program execution, focusing fuzzing efforts on uncertain inputs to reduce redundancy and increase bug detection efficiency.
Findings
Achieved higher code coverage than baseline fuzzers.
Discovered more crashes with fewer executions.
Effective in DARPA Cyber Grand Challenge binaries.
Abstract
Grey-box fuzzers such as American Fuzzy Lop (AFL) are popular tools for finding bugs and potential vulnerabilities in programs. While these fuzzers have been able to find vulnerabilities in many widely used programs, they are not efficient; of the millions of inputs executed by AFL in a typical fuzzing run, only a handful discover unseen behavior or trigger a crash. The remaining inputs are redundant, exhibiting behavior that has already been observed. Here, we present an approach to increase the efficiency of fuzzers like AFL by applying machine learning to directly model how programs behave. We learn a forward prediction model that maps program inputs to execution traces, training on the thousands of inputs collected during standard fuzzing. This learned model guides exploration by focusing on fuzzing inputs on which our model is the most uncertain (measured via the entropy of the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Advanced Malware Detection Techniques · Software Engineering Research
Methods7 Fastest Ways to Call American Airlines Reservations Number (USA Guide)
