[发明专利]一种漏洞导向的模糊测试方法、系统和介质有效
申请号: | 202210275061.3 | 申请日: | 2022-03-21 |
公开(公告)号: | CN114626071B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 沈毅;于璐;施凡;李宇薇;胡淼;李振汉;李阳;黄颖 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F11/36;G06F18/22;G06N3/04;G06N3/126 |
代理公司: | 中国和平利用军工技术协会专利中心 11215 | 代理人: | 刘光德 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 漏洞 导向 模糊 测试 方法 系统 介质 | ||
1.一种漏洞导向的模糊测试方法,其特征在于,所述方法包括以下步骤:
步骤S1:对于给定的二进制测试程序和给定的目标漏洞函数,分析所述二进制测试程序,获取二进制测试程序中每一个函数的控制流图和数据流图,将所述控制流图和所述数据流图结合生成融合语义图;所述融合语义图中的节点为基本块节点,对所述基本块节点内部的语义特征进行提取,得到所述融合语义图中每一个基本块节点的语义特征;进而得到所述二进制测试程序中每一个函数的融合语义图的结构特征和所述融合语义图中基本块节点的语义特征;从已有的漏洞特征库中得到目标漏洞函数的结构特征和语义特征;
对二进制测试程序中的函数与目标漏洞函数进行向量嵌入和比较:使用训练好的语义相似性学习模型对所述二进制测试程序的函数进行向量嵌入,得到每一个函数的特征向量;使用语义相似性学习模型对目标漏洞函数的特征进行向量嵌入,得到漏洞特征向量;使用定义的距离函数得到所述二进制测试程序中每一个函数特征向量与目标漏洞函数特征向量之间的相似性分值;
其中,使用训练好的语义相似性学习模型对所述二进制测试程序的函数进行向量嵌入,得到每一个函数的特征向量,包括:
基于神经网络模型进行特征提取,首先提取二进制测试程序中函数的结构特征和语义特征,使用structure2vec结构进行特征嵌入,得到能够表征函数特征的向量;二进制测试程序中函数的结构特征基于函数的融合语义图得到,结合函数的控制流图和数据流图,得到能够表征函数中基本块之间的控制依赖关系和数据依赖关系的融合语义图,融合语义图中的节点为函数内部的基本块,边表示基本块之间存在控制依赖或者数据依赖;函数的语义特征以基本块为单位,包括函数内每一个基本块中的字符串常量、整数常量、调用指令数目、算术指令数目、总指令数目;基于函数的所述融合语义图,由于融合语义图中的节点为函数内部的基本块,边表示基本块之间存在控制依赖或者数据依赖,则对所述融合语义图的结构进行解析,能够提取所述融合语义图的结构特征;每个融合语义图中包括多个基本块节点,每个基本块节点对应函数中的一个基本块,对所述融合语义图中的每个基本块节点,提取对应的语义特征,将函数的基本块的语义特征和结构特征使用structure2vec结构图嵌入,嵌入后得到的向量作为函数的特征向量;
步骤S2:对二进制测试程序中的函数与目标漏洞函数的相似性分值按从高到低的顺序排序,增加相似性分值大于或等于预设阈值的函数的权重,减少相似性分值小于预设阈值的函数的权重;得到各个函数的权重;
步骤S3:基于各个函数的权重,确定每一个函数中基本块节点的初始权重;
步骤S4:对所述二进制测试程序进行若干次的动态执行,获取所述二进制测试程序的多个执行路径;基于所述多个执行路径,得到执行路径中覆盖的基本块节点的执行频率,确定基本块节点中的边缘节点和常覆盖节点;所述边缘节点为分支语句的候选分支节点中,执行频率小于预置边缘阈值的基本块节点;所述常覆盖节点为执行路径中所有分支的下一执行节点中,执行频率高于预置常覆盖阈值的基本块节点;按照基本块节点的节点类型,对所述基本块节点的权重进行更新;
步骤S5:确定导向式模糊测试的若干个种子,所述导向式模糊测试的种子基于预先设置的变异策略生成新的测试用例,且所述导向式模糊测试的种子基于遗传算法确定;其中,基于更新后的基本块的权重,基于适应度函数,计算每一个种子对应的执行过程中,得到的执行基本块序列权重之和作为适应度值,并根据所述适应度值选择部分种子作为父代;由父代种子进行交叉、变异,得到子代种子。
2.如权利要求1所述的方法,其特征在于,父代种子使用在随机位置进行交叉,并按照不同粒度进行部分变异后,得到子代种子。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210275061.3/1.html,转载请声明来源钻瓜专利网。