基于符号执行的自动利用生成的设计与实现

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:hero_1205
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件漏洞作为一种战略资源被人们所积极关注,并且每年新增的漏洞数量一直居高不下。漏洞一旦被攻击者利用,往往会造成严重的后果。因此,一个关键性的问题是哪些漏洞是可被利用的。自动利用生成技术是发现并验证漏洞的重要而有效的手段,并且为开发者决定先修复哪些缺陷提供了具体、可行的信息。自动利用生成面临的难题是如何自动寻找缺陷和自动产生利用,这其中包含路径爆炸、路径选择、NP-hard求解问题、可利用性判定方式等问题。  本论文以二进制程序为分析对象,提出了基于符号执行的自动利用生成方法。本论文的前提是一个含有漏洞的程序和造成该程序崩溃的字符串输入。首先,我们搜集二进制程序执行过程的运行时信息,获取程序的崩溃状态;其次,根据收集到的路径约束、符号内存信息和崩溃动作等信息,判断此崩溃的可利用性;最后,当可利用性为真时,尝试产生一个控制流劫持的利用输入。  根据上述提出的方法,本论文设计并实现了一个基于符号执行的自动利用生成系统原型:HAVOC。HAVOC为发现的每一个漏洞产生一个控制流劫持的利用,因此保证了它所发现的漏洞都是安全相关并且可利用的。HAVOC针对输入造成程序崩溃的情况进行分析,面临的挑战主要有两点:1)如何重现崩溃路径,获取崩溃状态;2)如何自动生成控制流劫持利用。对于第一点,本论文提出路径导向算法,将崩溃输入作为符号值,重现崩溃路径。对于第二点,我们总结多种控制流劫持的利用原理,建立对应的利用产生模型。此外,对于非法符号读、写操作,HAVOC还可以让程序从崩溃点继续执行,探索程序深层次代码,检测崩溃路径逻辑深处是否还有利用点。为了验证本方法的有效性,本文对HAVOC进行了一系列的测试:通过样本代码测试,保证HAVOC的通用性和正确性;通测试被保护的程序,确定HAVOC能够绕过系统保护机制(ASLR、W⊕R);通过对实际漏洞程序的测试,保证HAVOC对具有实用性。测试结果表明,本文所提出的研究方法和原型系统已达到预期目标。
其他文献
该文面向汉语对话理解,研究了汉语对话中口语语义的表示,建立了汉语对话理解的情景语义模型DSSM(Dialogue-understanding Situational Semantic Model),并将研究成果应用于人
矩形件排样优化通常是指在一定数量的长和宽给定的板材上,尽可能多地排放所需要的矩形件,从而使得所需要的板材尽可能地少,以达到节省材料的目的。这项工作广泛用于机械制造
随着WWW技术的逐渐成熟,基于这一技术的应用以惊人的速度向社会生活方方面面渗透,使得人们交互信息不可避免的电子化和海量化.这些大量的Web数据中隐藏着有用的、重要的知识,
网络安全产品和密码协议中使用的对称密码算法大都采用软件实现方式。相比于硬件实现,密码算法的软件实现具有灵活性强、成本低、应用广泛等优势。密码算法的软件实现性能是评
数字签名是近代密码学所提供的重要服务。它是网络通信双方互信的基础,也是实施电子商务能否真正成功和全面普及的最主要因素。数字签名长期以来被用作作者身份的证明,这是因为
本文在研究图像目标识别特别是汉字识别的基础上讨论了有关模式识别协同方法的研究。在结合车牌汉字识别的应用实例中主要对协同学的学习算法,网络优化,不变性研究等方面展开的
本文首先对无线接入点(AP)进行研究,分析了其原理和功能结构,并在Soekris net4501开发板上实现了一个标准的AP。无线局域网虽然有很多优点,但在目前还存在一些不足,其中最大的问
超声诊断设备是一种高科技产品,它是在医学、超声学、电子学、计算机学及数字图像处理等多学科基础上形成的综合产物.超声诊断设备的研制和生产在某种程度上反映一个国家的科
Web服务的出现给企业电子商务应用带来了前所未有的商机,使得电子商务正朝着基于互操作的Web服务方向前进.Internet为我们提供了可供访问的大量的Web服务,这些服务间常常是孤
公共安全事件严重危害人们的生命财产安全和社会的安定,参与人员在事件爆发前的行为往往表现异常,如频繁集会、深夜活动骤增等。基于大规模的人员活动轨迹数据,挖掘出行为活动异