新闻动态

软件所混合模糊测试工作获ASE 2026杰出论文奖

近日,中国科学院软件研究所基础软件与系统重点实验室蔡彦课题组完成的论文Hybrid Fuzzing in Input Generation Logic获自动化软件工程国际会议ASE 2026杰出论文奖(Distinguished Paper Award)。该研究提出了一种基于生成器智能进化的混合模糊测试方法,并设计实现了自动化测试工具GenEvo,为复杂结构化输入的软件测试与漏洞挖掘提供了新思路。论文第一作者为卫思为博士生,通讯作者为蔡彦研究员。

模糊测试旨在通过持续生成测试输入、监测程序运行行为来发现软件缺陷。现有混合模糊测试方法虽能通过约束求解生成触达特定程序路径的输入,但后续字节级变异容易破坏校验和、字段依赖等结构,使输入在解析阶段就被拒绝;基于生成器的方法虽然能较好维持输入结构,却往往受限于固定的生成逻辑或缺乏目标引导的变异,难以适应被测程序的具体实现。

基于上述分析,研究团队将定向求解与进化对象的思路从单个测试输入提升为输入生成逻辑,提出将“什么输入能够触达目标分支”的传统求解方法调整为“怎样的生成器能够持续产生触达目标分支的输入”。这一设计将格式约束保留在生成逻辑中,同时根据程序行为不断扩展生成器的能力,兼顾输入的结构有效性与语义多样性。

由此,研究团队提出了自动化测试工具GenEvo。该工具利用大语言模型合成初始输入生成器,并围绕尚未覆盖的程序分支开展定向求解。为提高求解效果,GenEvo结合符合格式规范的参考实现,以及从目标程序中检索出的相关代码,引导模型理解格式要求和程序特有的处理逻辑,生成新的输入生成器。同时,GenEvo将定向求解与开销较低的随机变异相结合,通过覆盖率反馈评估生成器,保留能够探索新行为的生成逻辑并持续演化,实现广泛探索与困难分支突破的协同。

研究团队调用本地部署的Qwen3-32B模型,在来自FuzzBench、UniFuzz和Magma的49个真实程序上开展评估,与涵盖通用、混合、结构感知、生成器及大模型辅助模糊测试的13种基线配置进行了比较。实验结果显示,GenEvo与传统模糊测试器协同运行时,相较所评估基线的分支覆盖率平均提升98.3%,在46个程序上取得最佳覆盖率,并在这些已被广泛测试的程序中发现25个新漏洞。该研究表明,大语言模型不仅可以用于生成测试数据,还可以结合程序反馈持续改进测试数据的生成逻辑,为提升自动化软件测试的覆盖深度和漏洞发现能力提供新的技术路径。


论文链接:https://dl.acm.org/doi/10.1145/3832783.3834412

附件: