咨询与建议

看过本文的还看了

相关文献

该作者的其他文献

文献详情 >NEUZZ: Efficient fuzzing with ... 收藏
arXiv

NEUZZ: Efficient fuzzing with neural program smoothing

作     者:She, Dongdong Pei, Kexin Epstein, Dave Yang, Junfeng Ray, Baishakhi Jana, Suman 

作者机构:Columbia University 

出 版 物:《arXiv》 (arXiv)

年 卷 期:2018年

核心收录:

主  题:Evolutionary algorithms 

摘      要:Fuzzing has become the de facto standard technique for finding software vulnerabilities. However, even state-of-theart fuzzers are not very efficient at finding hard-to-trigger software bugs. Most popular fuzzers use evolutionary guidance to generate inputs that can trigger different bugs. Such evolutionary algorithms, while fast and simple to implement, often get stuck in fruitless sequences of random mutations. Gradient-guided optimization presents a promising alternative to evolutionary guidance. Gradient-guided techniques have been shown to significantly outperform evolutionary algorithms at solving high-dimensional structured optimization problems in domains like machine learning by efficiently utilizing gradients or higher-order derivatives of the underlying function. However, gradient-guided approaches are not directly applicable to fuzzing as real-world program behaviors contain many discontinuities, plateaus, and ridges where the gradientbased methods often get stuck. We observe that this problem can be addressed by creating a smooth surrogate function approximating the target program s discrete branching behavior. In this paper, we propose a novel program smoothing technique using surrogate neural network models that can incrementally learn smooth approximations of a complex, real-world program s branching behaviors. We further demonstrate that such neural network models can be used together with gradient-guided input generation schemes to significantly increase the efficiency of the fuzzing process. Our extensive evaluations demonstrate that NEUZZ significantly outperforms 10 state-of-the-art graybox fuzzers on 10 popular real-world programs both at finding new bugs and achieving higher edge coverage. NEUZZ found 31 previously unknown bugs (including two CVEs) that other fuzzers failed to find in 10 real-world programs and achieved 3X more edge coverage than all of the tested graybox fuzzers over 24 hour runs. Furthermore, NEUZZ also outperformed existing

读者评论 与其他读者分享你的观点

用户名:未登录
我的评分