Affiliation:
1. School of Computer Science and Technology, Hangzhou Dianzi University, Hangzhou 310018, China
Abstract
Ensemble fuzzing in parallel with heterogeneous fuzzers has been proposed to leverage the advantages of diverse fuzzers and improve testing efficiency. However, in current ensemble fuzzing methods, the collaboration among different fuzzers is achieved solely by synchronizing the seeds discovered by each fuzzer. This results in a high likelihood of different fuzzers choosing the same seeds and creating a large number of equivalent testcases, thus reducing overall fuzzing efficiency. Meanwhile, the existing task division method proposed by AFLTeam is highly coupled with the fuzzer specially designed for it, making it challenging to apply to ensemble fuzzing directly. So, in this paper, we proposed a callgraph-based task division method suitable for ensemble fuzzing. Firstly, we divided the target program’s callgraph into subgraphs (subtasks) balancing expected workloads. Then, we divided the global seed corpus into subcorpora, each corresponding to a subtask, making fuzzers easily accept the subtasks. Finally, we designed synchronization mechanisms for coverage bitmaps and seeds to realize the collaborative fuzzing among different fuzzers and a cyclic subtask scheduling strategy to fully leverage the benefits of ensemble fuzzing. We implemented a prototype called TAEF. The evaluation results show that in the best-case scenario, our method has up to 24% more branch coverage than previous work.
Funder
“Pioneer” and “Leading Goose” R&D Program of Zhejiang, China
Subject
Fluid Flow and Transfer Processes,Computer Science Applications,Process Chemistry and Technology,General Engineering,Instrumentation,General Materials Science
Reference36 articles.
1. The Art, Science, and Engineering of Fuzzing: A Survey;Manes;IEEE Trans. Softw. Eng.,2021
2. Fuzzing: Challenges and Reflections;Boehme;IEEE Softw.,2021
3. Fuzzing: A survey;Li;Cybersecurity,2018
4. Fuzzing: State of the art;Liang;IEEE Trans. Reliab.,2018
5. Bohme, M., Pham, V.-T., and Roychoudhury, A. (2016, January 24–28). Coverage-Based Greybox Fuzzing as Markov Chain. Proceedings of the the 2016 ACM SIGSAC Conference on Computer and Communications Security, Vienna, Austria.