软件漏洞自动挖掘和验证关键技术研究
发布时间:2021-03-28 08:12
现代软件规模庞大、架构复杂、功能多样化等特点导致软件漏洞的存在不可避免,给信息系统的可靠性和安全性带来严重威胁,直接影响国家战略安全以及个人隐私和财产安全。快速挖掘软件中存在的漏洞并验证其可利用性,可以尽早发现信息系统的安全缺陷并进行针对性防护,从而更好地保障自身信息系统安全。因此,研究如何自动挖掘和验证软件中的漏洞具有重要的学术价值和现实意义。论文围绕软件漏洞自动挖掘和验证中的关键技术展开研究。通过梳理发现,在软件漏洞自动挖掘方面,现有方法仅能挖掘位于软件浅层状态空间的漏洞,难以对深层状态空间进行测试;在软件漏洞自动验证方面,现有方法仅支持触发机理简单、且可单步骤直接利用的漏洞,难以自动处理触发机理和利用过程较为复杂的漏洞。据此,论文以主流符号执行、模糊测试为技术支撑,对如何提升漏洞挖掘效率、扩展复杂漏洞自动利用能力等问题进行了深入研究。论文的主要工作和创新点如下:1、提出了基于智能模糊测试的源代码软件漏洞挖掘方法。首先通过插桩技术动态收集程序运行时信息,实现对程序中条件分支覆盖情况进行细粒度分析;然后,对于半覆盖的条件分支,提出基于操作数感知的关键字段识别方法,以较小开销筛选出与分...
【文章来源】:国防科技大学湖南省 211工程院校 985工程院校
【文章页数】:165 页
【学位级别】:博士
【部分图文】:
2 0 1 1 2 0 1 4 2 0 1图1.2漏洞利用技术研究进展
第五章分析现有利用模式的局限性,重点阐述基于状态迁移组合的堆漏洞利用模式构建方法的原理。第六章介绍漏洞利用模式导向的堆漏洞自动验证方法的原理,重点阐述基于搜索的状态间迁移路径自动构造方法和基于导向模糊测试的迁移路径自动驱动方法,并对二进制软件堆漏洞自动验证系统的设计和实现进行介绍。
图2.1展示了软件错误、软件差错以及软件失效三者之间的关系,其中虚线箭头代表因果关系。软件错误激活后触发软件差错,而软件差错不一定立刻导致软件失效,通常需要将差错沿着当前路径继续向前传播,才能触发软件失效。值得注意的是,软件差错并不一定能够导致软件失效。例如,数据泄露在大多情况下并不影响软件完成规定的功能。软件漏洞至今尚未有统一的严格定义。学术界和工业界均尝试从不同角度对漏洞进行描述[89–91],但由于漏洞本身内涵也随着信息技术的发展在不断变化,因而未能进行严格定义。例如,2006年,欧洲网络和信息安全局提出漏洞是设计或实施中存在的弱点或错误,可导致计算机系统、网络和协议等安全目标出现非预期的结果,其侧重点为产生非预期结果,即软件差错。2011年美国发布的“通用漏洞及风险”(Common Vulnerabilities and Exposures,CVE)中将漏洞定义为软件中的错误,能够被攻击者利用而获得对系统或网络的访问权,其侧重点则是可以被利用获得访问权限。
本文编号:3105194
【文章来源】:国防科技大学湖南省 211工程院校 985工程院校
【文章页数】:165 页
【学位级别】:博士
【部分图文】:
2 0 1 1 2 0 1 4 2 0 1图1.2漏洞利用技术研究进展
第五章分析现有利用模式的局限性,重点阐述基于状态迁移组合的堆漏洞利用模式构建方法的原理。第六章介绍漏洞利用模式导向的堆漏洞自动验证方法的原理,重点阐述基于搜索的状态间迁移路径自动构造方法和基于导向模糊测试的迁移路径自动驱动方法,并对二进制软件堆漏洞自动验证系统的设计和实现进行介绍。
图2.1展示了软件错误、软件差错以及软件失效三者之间的关系,其中虚线箭头代表因果关系。软件错误激活后触发软件差错,而软件差错不一定立刻导致软件失效,通常需要将差错沿着当前路径继续向前传播,才能触发软件失效。值得注意的是,软件差错并不一定能够导致软件失效。例如,数据泄露在大多情况下并不影响软件完成规定的功能。软件漏洞至今尚未有统一的严格定义。学术界和工业界均尝试从不同角度对漏洞进行描述[89–91],但由于漏洞本身内涵也随着信息技术的发展在不断变化,因而未能进行严格定义。例如,2006年,欧洲网络和信息安全局提出漏洞是设计或实施中存在的弱点或错误,可导致计算机系统、网络和协议等安全目标出现非预期的结果,其侧重点为产生非预期结果,即软件差错。2011年美国发布的“通用漏洞及风险”(Common Vulnerabilities and Exposures,CVE)中将漏洞定义为软件中的错误,能够被攻击者利用而获得对系统或网络的访问权,其侧重点则是可以被利用获得访问权限。
本文编号:3105194
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3105194.html