论文部分内容阅读
在社会逐渐步入信息化,信息化技术、信息化设备日渐普及的今天,网络给人们的生活带来了巨大的变化,人们对网络的依赖也愈发严重。在使人们生活、工作更加方便的同时,网络也对人们的个人隐私、财产安全造成了巨大的威胁。尤其在近年来,网络安全事件层出不穷,从个人到企业,再到政府部门,都面临着网络与信息安全的挑战。为了应对网络与信息的安全问题,研究者持续对安全防御理论、技术进行深入地研究。ROP攻击作为一种重要的攻击手段,其防御方法始终是研究的热点问题。 本文结合移动目标防御的思想,从攻击表面模型出发,建立一个随机化技术的评估方法,对比各个随机化技术对安全的增益程度,并由此提出一种针对ROP攻击的随机化技术。本文主要工作可以总结如下: 1.提出一种量化衡量随机化技术的评估方法。通过对攻击表面(Attack Surface)进行进一步研究,给出了攻击表面在动态系统中的运用方法,并由此引入安全增益的概念,通过计算各防御手段的安全增益,可以量化评估随机化技术手段的优劣。 2.提出一种静态的随机化技术——指令偏移随机化。与当前主要的随机化技术相比,指令偏移随机化对攻击表面的影响程度更大,安全增益更高。该技术通过对Windows平台下32位静态二进制文件的代码段进行随机化处理,可以使指令地址和指令之间的原有映射关系发生改变,提高软件对ROP攻击的抵抗力。为了解决静态修改代码段造成的控制流异常,本文提出了一种静态控制流修正技术,通过静态反汇编,对控制流进行修正。指令偏移随机化是对地址空间布局随机化(Address Space Layout Randomization,ASLR)的增强,解决了ASLR无法对没有重定向段的模块进行基地址随机化的问题。 3.设计和实现了指令偏移随机化的系统原型,并进行了相应测试。结果表明,在不影响软件正常运行的情况下,系统可以对指令地址和指令之间的关联性降低,提高软件对ROP攻击的抵御能力。