模糊测试
计算机科学
空格(标点符号)
程序设计语言
操作系统
软件
作者
Xiaogang Zhu,Sheng Wen,Seyit Camtepe,Yang Xiang
出处
期刊:ACM Computing Surveys
[Association for Computing Machinery]
日期:2022-01-28
卷期号:54 (11s): 1-36
被引量:106
摘要
Fuzz testing (fuzzing) has witnessed its prosperity in detecting security flaws recently. It generates a large number of test cases and monitors the executions for defects. Fuzzing has detected thousands of bugs and vulnerabilities in various applications. Although effective, there lacks systematic analysis of gaps faced by fuzzing. As a technique of defect detection, fuzzing is required to narrow down the gaps between the entire input space and the defect space. Without limitation on the generated inputs, the input space is infinite. However, defects are sparse in an application, which indicates that the defect space is much smaller than the entire input space. Besides, because fuzzing generates numerous test cases to repeatedly examine targets, it requires fuzzing to perform in an automatic manner. Due to the complexity of applications and defects, it is challenging to automatize the execution of diverse applications. In this article, we systematically review and analyze the gaps as well as their solutions, considering both breadth and depth. This survey can be a roadmap for both beginners and advanced developers to better understand fuzzing.
科研通智能强力驱动
Strongly Powered by AbleSci AI