ICSE2020

Ankou: guiding grey-box fuzzing towards combinatorial difference

Valentin J. M. Manès, Soomin Kim, Sang Kil Cha

被引用 51 次

摘要

Grey-box fuzzing is an evolutionary process, which maintains and evolves a population of test cases with the help of a fitness function. Fitness functions used by current grey-box fuzzers are not informative in that they cannot distinguish different program executions as long as those executions achieve the same coverage. The problem is that current fitness functions only consider a union of data, but not their combination. As such, fuzzers often get stuck in a local optimum during their search. In this paper, we introduce Ankou, the first grey-box fuzzer that recognizes different combinations of execution information, and present several scalability challenges encountered while designing and implementing Ankou. Our experimental results show that Ankou is 1.94× and 8.0× more effective in finding bugs than AFL and Angora, respectively. CCS CONCEPTS • Software and its engineering → Software testing and debugging; • Security and privacy → Software security engineering.