软件所提出基于相似度引导的RISC-V处理器模糊测试方法
文章来源: | 发布时间:2025-12-23 | 【打印】 【关闭】
近日,中国科学院软件研究所智能软件研究中心研究团队依托开源供应链重大基础设施平台“源图”,提出一种基于相似度引导的 RISC-V 处理器模糊测试方法。该方法可以在处理器输入空间直接探索可能触发缺陷漏洞的测试用例,进而辅助验证RISC-V处理器的功能正确性。相关论文SimFuzz: Similarity-guided Block-level Mutation for RISC-V Processor Fuzzing被电子设计自动化领域顶级会议DATE 2026录用,第一作者为硕士生吕浩,通讯作者为吴敬征研究员和凌祥副研究员。
处理器功能正确性关乎计算机系统的底层安全,充分的测试是保障上层操作系统以及应用软件安全的前提。当前,模糊测试技术已经成为验证处理器功能正确性的直接高效方式,可以快速发现处理器实现中的缺陷漏洞。然而,这些面向处理器的模糊测试方法仍然面临两大核心挑战:一是现有覆盖率指标难以全面、准确反应处理器状态;二是缺乏高质量测试种子。
为此,研究团队以“源图”为依托提出了基于相似度引导的模糊测试方法SimFuzz。一方面,团队通过观察发现,同一指令集架构下不同处理器的开发过程可能出现类似错误。因此,SimFuzz设计了针对RISC-V指令的相似度计算方法,引导变异过程直接在处理器输入空间进行探索,以触发处理器更多状态。另一方面,SimFuzz通过“源图”收集现有处理器中已有漏洞的测试用例,从而构建高质量种子库,并通过交叉验证来发现更多潜在边角案例。为避免破坏控制流结构,SimFuzz还采取在种子的基本块层级(basic block-level)进行变异,以增加指令执行数量。

SimFuzz流程示意图
在三款开源RISC-V处理器上的测试中,SimFuzz共发现17个缺陷漏洞,其中14个为新发现缺陷漏洞,涉及处理器译码单元、访存功能等重要模块。在覆盖率方面,SimFuzz构建的种子库规模较小但仍实现了较高覆盖率。同时,SimFuzz未采用覆盖率引导进行变异,其测试效果与采用覆盖率引导的模糊测试方法效果相当,显示出在处理器输入空间直接探索的可能性。

部分实验结果
该研究依托开源软件供应链基础设施平台“源图”开展。目前,“源图”已建成国内规模最大的开源软硬件知识图谱,收录代码行数超过3000亿行。平台形成了覆盖安全性分析、合规性评估、可维护性诊断、供应链推荐、可信代码仓构建等综合开源治理能力。迄今为止,“源图”已成功识别出超百万个存在维护性不足、合规性缺陷及潜在安全风险的项目,为开源社区的安全性和可靠性提供了有效保障。