计算机研究与发展 ›› 2016, Vol. 53 ›› Issue (8): 1829-1849.doi: 10.7544/issn1000-1239.2016.20150526
傅建明1,2,3,刘秀文1,2,汤毅1,2,李鹏伟1,2
Fu Jianming1,2,3, Liu Xiuwen1,2, Tang Yi1,2,Li Pengwei1,2
摘要: 高级持续性威胁(advanced persistent threat, APT)攻击通常会利用内存地址泄漏绕过地址空间布局随机化(address space layout randomization, ASLR)、利用面向返回编程技术(return-oriented programming, ROP)绕过数据执行保护(data execution prevention, DEP).针对内存地址泄漏漏洞,以漏洞实例为样本,剖析了各种造成越界内存访问的指针或对象的非法操作,以及侧信道信息泄漏漏洞,并基于造成内存泄漏的过程,给出了相应的漏洞分类.同时,从漏洞利用和攻击的过程出发,总结和归纳了内存布局随机化、内存越界读写保护、内存对象内容保护、内存对象地址随机化等对抗内存地址泄漏的防御方法,从而达到内存布局看不清、内存对象读不到、内存对象内容读不懂、关键内存地址猜不准的保护目的.最后,提出从程序设计角度提供对内存布局随机化、代码地址随机化、内存对象保护等的支持,同时与操作系统建立协作防御机制,从而构建纵深和立体的安全防御体系.
中图分类号: