球友会qy提出知识驱动的模糊测试驱动生成框架
文章来源: | 发布时间:2025-10-23 | 【打印】 【关闭】
近期,中国科研实验室软件研究所可信计算与信息保障实验室研究团队针对软件安全领域模糊测试驱动(Fuzzing Harness)自动生成这一技术难题,提出了一种融合大模型的知识驱动生成框架。相关成果论文PromeFuzz: A Knowledge-Driven Approach to Fuzzing Harness Generation with Large Language Models被网络安全领域顶级国际会议ACM CCS 2025录用。论文第一作者为博士后刘昱玮、硕士生邓浚泉,通讯作者为贾相堃副研究员。
针对函数库的安全测试,编写模糊测试驱动是当前广泛采用的有效方案之一,其中如何实现高质量自动化的驱动生成是当前亟需解决的问题。已有研究尝试引入人工智能技术提高驱动生成能力(如Google OSS-Fuzz-Gen、PromptFuzz、CKGFuzzer等),但仍存在语义理解不足、误报率偏高、语言支持有限等问题,难以满足实际应用中的代码覆盖率和语义准确性需求。
研究团队采用程序分析方法和增强检索生成(RAG)技术,提出了一套知识驱动的模糊测试驱动生成框架PromeFuzz,名称意为“预先知晓”。该框架基于代码元数据、API文档和真实调用信息,系统性提取知识,构建出结构化知识库;模拟人类专家利用相关知识进行推理,提升测试驱动的生成能力;此外还集成了专用崩溃分析模块,用于处理大模型生成错误并形成反馈,进一步优化驱动质量并降低误报率。

PromeFuzz工作流程
PromeFuzz可广泛运用于C和C++函数库的模糊测试,现在已在开源库发现25个未知漏洞。进一步的对比实验显示,相较Google OSS-Fuzz-Gen、PromptFuzz、CKGFuzzer等,PromeFuzz的代码覆盖率提升达40%至288%,误报率降低约89%。相关成果已经应用于OpenHarmony系统测试的实际场景,覆盖270余万行核心函数库代码。

PromeFuzz与现有工作的覆盖率对比
该研究取得国家自然科学基金重点项目“大规模缺陷库的自动构建与应用”等支持。
论文及开源代码链接:http://github.com/TCA-ISCAS/PromeFuzz-ccs-2025