基于基本块计数的ROP攻击防御方法

来源 :华中科技大学 | 被引量 : 0次 | 上传用户:wgm740821
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
面向返回编程(Return Oriented Programming,ROP)是一种攻击技术,通过重用并链接内存中已存在的代码片段(gadget,以ret、jmp、call跳转指令结尾)组成攻击程序,能够实现任意的攻击行为。目前针对ROP攻击提出的防御方法主要集中于内存代码布局信息的隐藏和控制流监控,但实现的方法都存在一定的局限性,仍不能全面且有效的防御ROP攻击。  通过对ROP攻击中使用的gadget进行特征分析,提出了基于基本块(由两条跳转指令之间的可顺序执行的多条指令组成)计数的ROP攻击防御方法。该方法跟踪系统中程序运行时的指令执行过程,通过对有限长度指令范围内的基本块计数来判断运行程序是否是ROP攻击程序。特别针对以ret指令结尾的gadget和传统函数调用返回方式的不同,提出call和ret指令匹配的检测方法。经过深入搜索和研究发现,仍然存在特殊gadget能够绕过以上提出的一般的ROP攻击防御方法,如超大指令数gadget、可直接执行系统函数的one gadget等,因此提出了针对特殊gadget的ROP攻击防御方法。  根据以上提出的方法,以开源虚拟机DECAF为平台,构建基于基本块计数的ROP攻击防御原型系统,结合虚拟机中的VMI和动态二进制插装,对系统和程序运行时的指令和基本块进行插装计数检测、ret指令返回违反函数调用策略的检测及特殊gadget的执行检测,并实现算法离线搜索识别gadget。  经过实际的攻击防御实验,原型系统能够检测到利用CVE-2012-1889漏洞构建的ROP攻击程序及利用特殊gadget构建的绕过攻击程序,CPU性能平均损耗为30.4%,文件系统性能平均损耗为46.3%。实验测试结果表明我们的方法能够在性能损耗可接受的范围内全面且有效、可靠的防御ROP攻击。
其他文献
普适计算力图将以计算机为中心的计算模式转变为以人为中心的计算模式,其目标是构建一个计算和通信无处不在的环境,并在此基础上透明地提供以人为中心的服务。获取物体的位置信
随着集成电路制作工艺的不断发展和半导体尺寸的日益缩小,存储器的密度越来越大。随着存储器密度和复杂度的快速增长,存储器发生故障的概率越来越高,故障种类也越来越多,这使得存
目前绝大多数的文字识别(OCR)系统,只能识别单一文种的文字,无法同时识别多文种文字。而现有的大量蒙古文文档图像中不仅包含蒙古文,还混有汉文和英文。如果识别时仅使用蒙古
当前社会产生的大量数据需要更好的存储解决方案。近年来,基于网络技术的分布式存储,将数据存储在多个廉价设备上,已经得到了广泛的应用。但是考虑到系统的规模,系统中的构成节点
一个高质量的软件系统常常利用专家的设计经验,这个专家的设计经验称为设计模式。现在,设计模式被广泛地应用于各种软件系统设计中,但是这种架构的设计模式的相关信息在大量
鱼眼摄像机由于能一次性捕获视野达到180°甚至更大范围内的场景信息,在视频监控、机器人导航、目标跟踪及定位等领域有着广泛的应用,但是其存在的严重畸变又给鱼眼摄像机的应
工作流管理系统是实现企业信息化重要支撑系统之一,它通过协调多个人的活动、以协同完成某个共同的任务,从而有效的提高企业的经营效率。工作流引擎作为工作流管理系统的核心
随着云计算技术的发展,各种大小不一的数据中心纷纷出现,而这些数据中心往往存在各种虚拟机管理平台(如Eucalyptus, OpenNebula和OpenStack等),应用场景需求也完全不同,各种
无线通信技术随着科技的发展在不断的更新换代,基于无线信道的参数随机变化的特点,有关应对干扰所造成误码的讨论也在同步跟进。本系统采用新一代的混合自动重传(HARQ,HybridARQ)
随着网络资源的全球化,不同语言国家、民族的互联网用户飞速增长。伴随着不同语言使用者对网络需求的日益加剧并且由于语言的多样性使得跨语言信息检索成为信息检索领域的研