[发明专利]一种基于行为特征自动机模型的软件漏洞检测方法有效
申请号: | 201210162896.4 | 申请日: | 2012-05-21 |
公开(公告)号: | CN102693393A | 公开(公告)日: | 2012-09-26 |
发明(设计)人: | 王勇;王威;谷大武;吴亮;成贵学;黄亮亮 | 申请(专利权)人: | 上海电力学院 |
主分类号: | G06F21/22 | 分类号: | G06F21/22 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 赵继明 |
地址: | 200090 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 行为 特征 自动机 模型 软件 漏洞 检测 方法 | ||
技术领域
本发明涉及一种计算机软件漏洞的检测方法,尤其是涉及一种基于行为特征自动机模型的软件漏洞检测方法。
背景技术
软件漏洞是程序中存在的安全隐患,若被计算机病毒利用,将会对系统造成严重危害。虽然已经发现了诸多漏洞,并且建立了漏洞库,但是已知漏洞行为描述还不完善。在依据这些描述发现未知漏洞过程中,还需要辅助大量人工判断,自动化推理程度低。
主要问题(1)漏洞库中的行为特征描述语义太模糊,无法利用现有的特征描述去判断软件中存在未知漏洞。
当前漏洞库对漏洞行为描述主要是语义层的,Google Chrome任意代码执行漏洞,他们的漏洞语义描述是“Google Chrome 17.0.963.46之前版本存在竞争条件错误,允许远程攻击者通过会触发效用进程崩溃的向量来执行任意代码”。这样的语义描述太不清晰,这种描述只是说明了特定软件,特定版本号内存在的某种类型漏洞,无法依据这些描述去推理判断其他类型软件中是否存在未知漏洞。
主要问题(2)漏洞行为特征的分类和量化太简单,无法用于未知漏洞检测。
在Google Chrome任意代码执行漏洞进行分类的时候,常见漏洞披露列表CVE采用漏洞库名字+发现年份+编号的形式,如CVE-2011-3961,这样的分类信息还不够。我国国家计算机网络入侵防范中心对该漏洞采用了自己的编号NIPC-2012-0428,对漏洞类型为竞争性条件错误的分类。该分类方法同样应用在中国国家信息安全漏洞库漏洞CNNVD-201202-170中。按照漏洞特征属性方法比时间分类方法已经有了改进。“通用漏洞评分系统”CVSS V2给出该漏洞的风险等级为:9.3,但是这样的量化只是说明漏洞具有很高风险等级,量化等级值对于推理判断并没有作用。
主要问题(3)在漏洞检测过程中,采用词法分析无法检测出行为漏洞,约束分析方法在追踪行为控制流中会产生大量噪音,无法清晰表达行为语义。在检测中还需要辅助大量人工判断,自动化推理程度比较低。
综上所述,在追踪国内外研究现状的基础上,发现存在的瓶颈问题:已知漏洞的行为特征描述太模糊,特征的分类和量化结果太简单,行为特征表现与漏洞的本质联系不明确,因此无法依据这些特征推理检测未知漏洞。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种可根据已知行为特征准确判断是否存在软件漏洞的基于行为特征自动机模型的软件漏洞检测方法。
本发明的目的可以通过以下技术方案来实现:
一种基于行为特征自动机模型的软件漏洞检测方法,该方法包括以下步骤:
1)将具有数据约束的自动机模型从漏洞行为特征库中载入流程,建立具有数据约束的自动机模型;
2)通过自动机模型将漏洞行为特征库中的行为特征序列转换成行为特征语言;
3)通过自动机模型循环判断行为特征是否具有唯一性或度量行为特征个体间的相似性,若行为特征具有唯一性,则执行步骤4),若行为特征具有相似性,则执行步骤5);
4)根据行为特征的语义,自动机模型基于数理逻辑检测软件状态,并报告软件漏洞的存在性;
5)根据行为特征的语义,自动机模型基于贝叶斯逻辑检测软件状态,并报告软件漏洞的存在性。
所述的自动机包括有限状态自动机和行为特征自动机,所述的有限状态自动机判断行为特征是否具有唯一性,所述的行为特征自动机度量行为特征个体间的相似性。
所述的基于数理逻辑检测软件状态具体为:
采用命题逻辑或谓词逻辑表达行为特征语义,自动机模型根据已知行为特征,判断是否存在软件漏洞。
所述的基于贝叶斯逻辑检测软件状态具体为:
在行为特征语义的基础上,利用贝叶斯公式,构建概率逻辑,通过自动机模型判断是否存在软件漏洞。
与现有技术相比,本发明可准确根据已知行为特征,检测软件漏洞的存在性,从而提高计算机软件的可靠性和安全性。
附图说明
图1为本发明检测方法的流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例
如图1所示,一种基于行为特征自动机模型的软件漏洞检测方法,该方法包括以下步骤:
1)漏洞行为特征库中已知漏洞行为特征的表示;
11)建立具有数据约束的自动机模型BAR:
BAR=function(Behavior(),Automaton(),reasoning())
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海电力学院,未经上海电力学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210162896.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种蛋类分选用分拣平台
- 下一篇:热浸涂锌包覆钢的下引成型方法