面向大型库模糊测试的驱动程序生成方法和系统

  • 国民经济行业:信息传输、软件和信息技术服务业/软件和信息技术服务业/其他信息技术服务业/数字内容服务
  • 学科类别:计算机科学技术/计算机科学技术其他学科
  • 权利人:上海交通大学

知识产权简介

本发明旨在解决大型软件库模糊测试中API序列和驱动程序生成质量低、误用率高的难题,提出了一种基于语义特征增强与生命周期分层筛选的驱动程序自动生成框架。该框架利用大模型的语义理解和代码生成能力,设计了基于多源信息融合的API语义特征提取、基于高价值评估的API调度、基于生命周期分层筛选的API序列生成、以及驱动程序生成与修复四个阶段,使得生成的模糊测试驱动程序在严格遵循库函数逻辑约束的同时,显著提升复杂库模糊测试的代码覆盖率并大幅降低大模型的资源开销。

转化前景

现代软件系统高度依赖各类第三方功能库,其安全性直接影响整个系统的稳固性。模糊测试作为一种发现底层漏洞的高效动态测试技术,在维护软件库安全方面至关重要。而模糊测试驱动程序则是连接模糊测试引擎与目标被测库的桥梁,它负责接收变异数据并正确调用目标接口。一个高质量的驱动程序能够有效触发库函数的深层逻辑,是提升模糊测试覆盖率的核心前提。大型软件库(如OpenSSL等库)具有显著的复杂性,主要体现为API数量极其庞大。并且这些API之间存在深层的拓扑依赖关系,遵循严格的生命周期管理要求,例如特定的初始化序列[1]。传统的驱动程序开发依赖人工专家经验,面对大型库时效率极低。目前已有研究尝试利用LLM自动化生成驱动程序,但这些方法在面对大型库时,往往受限于模型上下文长度,且难以理解复杂的跨函数依赖关系,导致生成的驱动出现编译错误或误用,难以应用于大型库模糊测试任务。 本发明提出了一种基于语义特征增强与生命周期分层筛选的模糊测试驱动程序生成技术。该技术通过深入解析库函数多源语义并实施API生命周期的分层匹配,能够在严格遵循大型库调用逻辑约束的前提下,以较低的Token开销生成高质量驱动程序,从而显著提升针对复杂软件库的自动化模糊测试效果与经济性。

基本信息

权利人 上海交通大学
知识产权类型 专利
意向合作模式 许可,转让
预估金额
联系合作