OTA: An Operation-oriented Time Allocation Strategy for Greybox Fuzzing

被引:4
作者
Li, Xumei [1 ]
Sun, Lei [1 ]
Jiang, Ruobing [1 ]
Qu, Haipeng [1 ]
Yan, Zhen [1 ]
机构
[1] Ocean Univ China, Dept Comp Sci & Technol, Qingdao, Peoples R China
来源
2021 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ANALYSIS, EVOLUTION AND REENGINEERING (SANER 2021) | 2021年
关键词
greybox fuzzing; vulnerability detection; code coverage; automated testing;
D O I
10.1109/SANER50967.2021.00019
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Coverage-based greybox fuzzing (CGF) has been widely studied and commonly used for software vulnerability detection. Existing CGF fuzzers fairly allocate execution time for each mutation operation to generate test cases. However, the fair-time-allocation strategy is revealed to be inefficient by our significant experimental observation that different operations have heterogeneous effectiveness on coverage. Those ineffective operations with vast test cases thus occupy the majority of limited runtime, reducing the opportunities for effective operations to explore more paths and find potential vulnerabilities. In this paper, we propose a novel operation-oriented time allocation strategy OTA, which dynamically allocates operation execution time in real time to cope with the effectiveness variation per operation. OTA has three distinguishing advantages: (1) the execution time per operation is novelly initialized on demand and program-dependent; (2) the execution time for each operation is dynamically weighted by its real-time effectiveness on exploring new coverage; (3) the determination of the execution time per operation is well controlled to achieve a quick convergence. Extensive experiments based on real-world programs and the LAVA-M dataset have been conducted to evaluate the path discovery and vulnerability detection abilities of OTA, which substantially outperforms 5 state-of-the-art fuzzers. In addition, OTA exposes 18 previously unknown vulnerabilities in 6 well-tested programs with 13 confirmed with new CVE IDs.
引用
收藏
页码:108 / 118
页数:11
相关论文
共 32 条
[1]  
[Anonymous], 2016, ANN NETWORK DISTRIBU
[2]  
[Anonymous], 2018, P NETW DISTR SYST SE
[3]  
Blazytko Tim, 2019, P NETW DISTR SYST SE
[4]   Coverage-Based Greybox Fuzzing as Markov Chain [J].
Bohme, Marcel ;
Van-Thuan Pham ;
Roychoudhury, Abhik .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2019, 45 (05) :489-506
[5]   Directed Greybox Fuzzing [J].
Bohme, Marcel ;
Van-Thuan Pham ;
Manh-Dung Nguyen ;
Roychoudhury, Abhik .
CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2017, :2329-2344
[6]  
Bounimova E, 2013, PROCEEDINGS OF THE 35TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2013), P122, DOI 10.1109/ICSE.2013.6606558
[7]   Angora: Efficient Fuzzing by Principled Search [J].
Chen, Peng ;
Chen, Hao .
2018 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP), 2018, :711-725
[8]  
Fioraldi A., 2020, 14 USENIX WORKSH OFF, P1
[9]   CollAFL: Path Sensitive Fuzzing [J].
Gan, Shuitao ;
Zhang, Chao ;
Qin, Xiaojun ;
Tu, Xuwen ;
Li, Kang ;
Pei, Zhongyu ;
Chen, Zuoning .
2018 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP), 2018, :679-696
[10]  
Gan Shuitao, 2020, 29 USENIX SEC S USEN