Affiliation:
1. Australian National University, Australia
2. École Polytechnique Fédérale de Lausanne, Switzerland
Abstract
This Replicating Computational Report (RCR) describes (a) our
datAFLow
fuzzer and (b) how to replicate the results in “
datAFLow
: Toward a Data-Flow-Guided Fuzzer.” Our primary artifact is the
datAFLow
fuzzer. Unlike traditional coverage-guided greybox fuzzers—which use
control-flow
coverage to drive program exploration—
datAFLow
uses
data-flow
coverage to drive exploration. This is achieved through a set of LLVM-based analyses and transformations. In addition to
datAFLow
, we also provide a set of tools, scripts, and patches for (a) statically analyzing data flows in a target program, (b) compiling a target program with the
datAFLow
instrumentation, (c) evaluating
datAFLow
on the Magma benchmark suite, and (d) evaluating
datAFLow
on the
DDFuzz
dataset.
datAFLow
is available at https://github.com/HexHive/datAFLow.
Publisher
Association for Computing Machinery (ACM)
Reference15 articles.
1. Efficiently Finding Data Flow Subsumptions
2. Baggy Bounds with Accurate Checking
3. Andrea Fioraldi, Dominik Maier, Heiko Eißfeldt, and Marc Heuse. 2020. AFL++: Combining incremental steps of fuzzing research. In USENIX Workshop on Offensive Technologies (WOOT). Retrieved from https://www.usenix.org/conference/woot20/presentation/fioraldi.
4. An experimental comparison of the effectiveness of branch testing and data flow testing
5. Magma