[发明专利]基于编程模式和模式匹配的漏洞聚类方法有效

专利信息
申请号: 201510443533.1 申请日: 2015-07-27
公开(公告)号: CN105045715B 公开(公告)日: 2018-01-12
发明(设计)人: 张小松;宋珺;牛伟纳;卓中流;陈瑞东;孙恩博;戴中印;黄金 申请(专利权)人: 电子科技大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 电子科技大学专利中心51203 代理人: 李明光
地址: 611731 四川省成*** 国省代码: 四川;51
权利要求书: 查看更多 说明书: 查看更多
摘要: 本方法用于软件脆弱性分析,属于计算机程序安全领域。本发明是一种基于编程模式和模式匹配的漏洞发现方法,可以将程序内所有函数进行统一分析,根据每个函数中出现的不同的关键词、API符号,将每个函数映射到向量空间,并利用矩阵分析方法提取出这些函数中占据主导地位的编程模式,以及每个函数最倾向的编程模式。通过计算欧几里得距离,将编程模式相近的函数发现并聚类为一类,并藉此发现潜在的、和已知漏洞相似的漏洞。
搜索关键词: 基于 编程 模式 匹配 漏洞 方法
【主权项】:
一种基于编程模式和模式匹配的漏洞聚类的方法,具体包括以下步骤:步骤1.编程模式提取;记已知存在漏洞的函数为函数F,对于一个包含(Cf—1)个函数的程序源代码,进行如下步骤的操作:步骤1‑1:将函数F置于所述程序源代码中,此时程序源代码包含有Cf个函数,统计插入函数F后的程序源代码中出现的不同关键词并记其总数量为Cn,所述关键词类型包括保留字、函数名、变量名;步骤1‑2:为该程序源代码的每个函数创建一个维度为Cn的列向量Mi,i=1,2,…Cf,列向量Mi中的每个元素与步骤1‑1所统计的不同关键词一一对应,若列向量Mi对应的函数中包含有相应关键词,则列向量Mi中相应位置的元素值记为1,否则记为零;将创建的Cf个列向量合并为一个Cn×Cf的矩阵M;步骤1‑3:选取特征数值D,0<D≤Cf;步骤1‑4:对矩阵M进行截断奇异值分解M=USVT,并取前D个奇异值,分解之后得到矩阵U、S、V;其中,矩阵U为Cn*D阶矩阵,矩阵S为D*D阶对角矩阵,矩阵V为Cf*D阶矩阵;矩阵V的每一个行向量与所述程序源代码中的每一个函数一一对应,即矩阵V的每一个行向量代表所述程序源代码中的一个函数的模式块,由此得到Cf个与程序源代码的函数一一对应的模式块向量,提取其中与函数F对应的模式块向量;步骤2.模式匹配聚类;对于步骤1中提取出的Cf个函数的模式块向量,进行如下步骤的操作:步骤2‑1:针对程序源代码中除函数F之外的函数所对应的模式块向量,计算每个模式块向量Fi与函数F的模式块向量的欧氏距离;步骤2‑2:设定欧氏距离阈值δ,将与函数F的模式块向量的欧氏距离小于等于阈值δ的模式块向量对应的函数提取出来,即将程序源代码中与带有漏洞的函数F具有较近欧氏距离即较高相似度的函数聚类为一类,供进一步分析。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201510443533.1/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top