期刊文献+

一种有效的Return-Oriented-Programming攻击检测方法 被引量:1

An Effective Approach of Detecting Return-Oriented-Programming Attacks
下载PDF
导出
摘要 Returned-Oriented-Programming(ROP)攻击能突破传统防御机制如DEP和W⊕X.目前ROP攻击检测误报率较高,无法准确区分ROP攻击与正常指令执行.ROP攻击需执行系统调用完成攻击,执行系统调用前寄存器须设置为正确的值,并且每条x86指令对应一个或多个gadget.基于上述特点,提出一种有效的二进制代码级ROP攻击检测方法:截获返回指令并作为起始点计算gadget数目,并在系统调用执行前判断寄存器是否被修改为与其参数类型相同的值.该方法不依赖启发式学习,能准确检测栈溢出的ROP攻击.通过动态插桩工具实现原型系统,对ROP攻击和正常程序进行了测试,实验结果表明系统漏报率和误报率较低,且性能损失较小. Return-Oriented-Programming(ROP) attacks can bypass traditional defenses such as DEP and W ⊕ X.Current detection techniques have high false positives w hich are unable to accurately distinguish attacks from normal instruction execution.ROP attacks need to invoke system calls to achieve attacking goal,before w hich registers must be set to correct values;also each x86 instruction corresponds to one or more gadgets.Bases on such characteristics,a new ROP attack defense technique on binary level w as proposed: it intercepts return instructions,from w hich counts the number of gadgets,then check w hether registers have been changed to correct values just before invoking system call.It does not rely on heuristics and provides accurate detection of ROP attacks by stack smashing.Prototype system is implemented w ith dynamic binary instrumentation tool,and w e evaluated the system w ith normal programs and ROP attacks.Experiment results show it causes low false positives and negatives w hile makes little overhead.
出处 《小型微型计算机系统》 CSCD 北大核心 2013年第7期1625-1630,共6页 Journal of Chinese Computer Systems
基金 保密通信国防科技重点实验室基金项目(9140C1104020903)资助
关键词 ROP GADGET 系统调用 动态插桩 ROP gadget system call dynamic instrumentation
  • 相关文献

参考文献2

二级参考文献31

  • 1Shacham T. The Geometry of Innocent Flesh on the Bone: Return-into-libc Without Function Calls (on the x86)[C] //Proc. of ACM CCS’07. New York, USA: ACM Press, 2007.
  • 2Kornau T. Return Oriented Programming for the ARM Architecture[D]. Bochum, German: Ruhr-University, 2010.
  • 3Chen Ping, Xiao Hai, Shen Xiaobin, et al. Drop: Detecting Return- oriented Programming Malicious Code[C] //Proc. of ICISS’10. Gandhinagar Gujarat, India: [s. n.] , 2010.
  • 4Davi L, Sadeghi A. Winandy M. Dynamic Integrity Measurement and Attestation: Towards Defense Against Return-oriented Programming Attacks[C] //Proc. of ACM Workshop on Scalable Trusted Computing. Chicago, USA: ACM Press, 2009.
  • 5Davi L, Sadeghi A, Winandy M. Ropdefender: A Detection Tool to Defend Against Return-oriented Programming Attacks[R]. Ruhr-University, Tech. Rep.: HGI-TR-2010-001, 2010.
  • 6Francillon A, Perito D. Defending Embedded Systems Against Control Flow Attacks[C] //Proc. of ACM Workshop on Secure Execution of Untrusted Code. New York, USA: ACM Press, 2009.
  • 7Kernels J L, Zhi Wang, Jiang Xuxian, et al. Defeating Return- oriented Rootkits with Return-less Kernels[C] //Proc. of EUROSYS’10. New York, USA: [s. n.] , 2010.
  • 8Checkoway S, Shacham T. Escape from Return-oriented Programming: Return-oriented Programming Without Returns[C] // Proc. of ACM CCS’10. San Diego, USA: [s. n.] , 2010.
  • 9Bletsch T, Jiang Xuxian. Jump-oriented Programming: A New Class of Code-reuse Attack[R]. Association for Computing Machinery, Tech. Rep.: TR-2010-8, 2010.
  • 10Luk C K, Cohn P. Building Customized Program Analysis Tools with Dynamic Instrumentation[C] //Proc. of ACM SIGPLAN Conference on Programming Language Design and Implement- ation. New York, USA: [s. n.] , 2005.

共引文献6

同被引文献6

引证文献1

二级引证文献1

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部