首页> 外文期刊>ACM Transaction on Information and System Security >Return-Oriented Programming: Systems, Languages,and Applications
【24h】

Return-Oriented Programming: Systems, Languages,and Applications

机译:面向返回的程序设计:系统,语言和应用程序

获取原文
获取原文并翻译 | 示例

摘要

We introduce return-oriented programming, a technique by which an attacker can induce arbitrary behavior in a program whose control flow he has diverted, without injecting any code. A return-oriented program chains together short instruction sequences already present in a program's address space, each of which ends in a "return" instruction. Return-oriented programming defeats the W©X protections recently deployed by Microsoft, Intel, and AMD; in this context, it can be seen as a generalization of traditional return-into-libc attacks. But the threat is more general. Return-oriented programming is readily exploitable on multiple architectures and systems. It also bypasses an entire category of security measures—those that seek to prevent malicious computation by preventing the execution of malicious code. To demonstrate the wide applicability of return-oriented programming, we construct a Turing-complete set of building blocks called gadgets using the standard C libraries of two very different architectures: Linux/x86 and Solaris/SPARC. To demonstrate the power of return-oriented programming, we present a high-level, general-purpose language for describing return-oriented exploits and a compiler that translates it to gadgets.
机译:我们引入了面向返回的程序设计,该技术使攻击者可以在其控制流已转向的程序中引发任意行为,而无需注入任何代码。面向返回的程序将已经存在于程序地址空间中的短指令序列链接在一​​起,每个短指令序列都以“返回”指令结尾。面向返回的编程克服了Microsoft,Intel和AMD最近部署的W©X保护;在这种情况下,可以看作是对传统的libc返回攻击的概括。但是威胁更为普遍。面向返回的编程易于在多种体系结构和系统上使用。它还绕过了一整类安全措施,这些措施旨在通过阻止执行恶意代码来防止恶意计算。为了证明面向返回的编程的广泛适用性,我们使用两种截然不同的体系结构(Linux / x86和Solaris / SPARC)的标准C库构造了一套图灵完备的构建模块集,称为小工具。为了展示面向收益的编程的强大功能,我们提供了一种用于描述面向收益的漏洞的高级通用语言,以及一种将其转换为小工具的编译器。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号