paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Evaluating and improving neural program-smoothing-based fuzzing

评估与改进基于神经程序平滑的模糊测试
ICSE Proceedings of the 44th International Conference on Software Engineering2022匹配度 3/10 · 论文属于机器学习辅助的模糊测试,关注神经程序平滑模糊器的评测与改进,虽带有PL+AI标签并包含大规模基准与失效分析,但未涉及用户核心方向(静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析)。引用 36 inbox
Mingyuan Wu, Ling Jiang, Jiahong Xiang, Yuqun Zhang, Guowei Yang, Huixin Ma, Sen Nie, Shi Wu, Heming Cui, Lingming Zhang
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:通过大规模基准评测揭示神经程序平滑模糊测试的不稳定性,并提出 PreFuzz 显著提升其边覆盖率。

模糊测试常被建模为以覆盖率最大化为目标的优化问题,但传统搜索式方法易导致变异低效。近期提出的 Neuzz 与 MTFuzz 利用神经网络近似程序分支行为,并以梯度较大的字节进行变异。然而二者仅在有限数据集上评测,其关键组件与实际影响因素尚不明确。本文首先构建包含 28 个流行开源项目的大规模基准套件,对 Neuzz 与 MTFuzz 展开广泛评测,发现其边覆盖率表现不稳定,神经网络模型与变异策略均无法持续有效,梯度引导机制的作用被削弱。基于此,作者提出简洁技术 PreFuzz:以资源高效的边选择机制增强梯度引导,并用概率字节选择机制提升变异有效性。评测表明 PreFuzz 能显著提升 Neuzz/MTFuzz 的边覆盖率,并总结出若干推进未来研究的实践指南。

问题
神经程序平滑模糊测试器(Neuzz、MTFuzz)此前仅在有限数据集上评测,其关键组件是否有效、哪些因素影响模糊测试性能仍不清楚。
方法
构建含 28 个开源项目的大规模基准套件,系统评测 Neuzz 与 MTFuzz,并据此提出 PreFuzz——用资源高效的边选择机制强化梯度引导,用概率字节选择机制提升变异有效性。
评估
在 28 个开源项目基准上对比 Neuzz/MTFuzz,结果显示其边覆盖率不稳定,而 PreFuzz 能显著提升二者的边覆盖率,并凝练出多条实践指南。
原文摘要(Abstract)

Fuzzing nowadays has been commonly modeled as an optimization problem, e.g., maximizing code coverage under a given time budget via typical search-based solutions such as evolutionary algorithms. However, such solutions are widely argued to cause inefficient computing resource usage, i.e., inefficient mutations. To address this issue, two neural program-smoothing-based fuzzers, Neuzz and MTFuzz, have been recently proposed to approximate program branching behaviors via neural network models, which input byte sequences of a seed and output vectors representing program branching behaviors. Moreover, assuming that mutating the bytes with larger gradients can better explore branching behaviors, they develop strategies to mutate such bytes for generating new seeds as test cases. Meanwhile, although they have been shown to be effective in the original papers, they were only evaluated upon a limited dataset. In addition, it is still unclear how their key technical components and whether other factors can impact fuzzing performance. To further investigate neural program-smoothing-based fuzzing, we first construct a large-scale benchmark suite with a total of 28 popular open-source projects. Then, we extensively evaluate Neuzz and MTFuzz on such benchmarks. The evaluation results suggest that their edge coverage performance can be unstable. Moreover, neither neural network models nor mutation strategies can be consistently effective, and the power of their gradient-guidance mechanisms have been compromised. Inspired by such findings, we propose a simplistic technique, PreFuzz, which improves neural program-smoothing-based fuzzers with a resource-efficient edge selection mechanism to enhance their gradient guidance and a probabilistic byte selection mechanism to further boost mutation effectiveness. Our evaluation results indicate that PreFuzz can significantly increase the edge coverage of Neuzz/MTFuzz, and also reveal multiple practical guidelines to advance future research on neural program-smoothing-based fuzzing.

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@inproceedings{WuJXZ0MNWCZ22,
  title = {Evaluating and improving neural program-smoothing-based fuzzing},
  author = {Mingyuan Wu and Ling Jiang and Jiahong Xiang and Yuqun Zhang and Guowei Yang and Huixin Ma and Sen Nie and Shi Wu and Heming Cui and Lingming Zhang},
  booktitle = {ICSE},
  year = {2022},
  doi = {10.1145/3510003.3510089}
}