Back to Search Start Over

IntelliGen: Automatic Driver Synthesis for Fuzz Testing

Authors :
Jianzhong Liu
Huafeng Zhang
Fuchen Ma
Mingrui Zhang
Yu Jiang
Source :
ICSE (SEIP)
Publication Year :
2021
Publisher :
IEEE, 2021.

Abstract

Fuzzing is a technique widely used in vulnerability detection. The process usually involves writing effective fuzz driver programs, which, when done manually, can be extremely labor intensive. Previous attempts at automation leave much to be desired, in either degree of automation or quality of output. In this paper, we propose IntelliGen, a framework that constructs valid fuzz drivers automatically. First, IntelliGen determines a set of entry functions and evaluates their respective chance of exhibiting a vulnerability. Then, IntelliGen generates fuzz drivers for the entry functions through hierarchical parameter replacement and type inference. We implemented IntelliGen and evaluated its effectiveness on real-world programs selected from the Android Open-Source Project, Google's fuzzer-testsuite and industrial collaborators. IntelliGen covered on average 1.08X-2.03X more basic blocks and 1.36X-2.06X more paths over state-of-the-art fuzz driver synthesizers FUDGE and FuzzGen. IntelliGen performed on par with manually written drivers and found 10 more bugs.

Details

Database :
OpenAIRE
Journal :
2021 IEEE/ACM 43rd International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP)
Accession number :
edsair.doi...........9fa1320a4c39590040740181d7907d15
Full Text :
https://doi.org/10.1109/icse-seip52600.2021.00041