首页> 外文期刊>Dependable and Secure Computing, IEEE Transactions on >Marlin: Mitigating Code Reuse Attacks Using Code Randomization
【24h】

Marlin: Mitigating Code Reuse Attacks Using Code Randomization

机译:Marlin:使用代码随机化缓解代码重用攻击

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

摘要

Code-reuse attacks, such as return-oriented programming (ROP), are a class of buffer overflow attacks that repurpose existing executable code towards malicious purposes. These attacks bypass defenses against code injection attacks by chaining together sequence of instructions, commonly known as gadgets, to execute the desired attack logic. A common feature of these attacks is the reliance on the knowledge of memory layout of the executable code. We propose a fine grained randomization based approach that breaks these assumptions by modifying the layout of the executable code and hinders code-reuse attack. Our solution, , randomizes the internal structure of the executable code by randomly shuffling the function blocks in the target binary. This denies the attacker the necessary a priori knowledge of instruction addresses for constructing the desired exploit payload. Our approach can be applied to any ELF binary and every execution of this binary uses a different randomization. We have integrated Marlin into the bash shell that randomizes the target executable before launching it. Our work shows that such an approach incurs low overhead and significantly increases the level of security against code-reuse based attacks.
机译:代码重用攻击(如面向返回的编程(ROP))是一类缓冲区溢出攻击,它们将现有的可执行代码重新用于恶意目的。这些攻击通过将通常称为小工具的指令序列链接在一​​起以执行所需的攻击逻辑,从而绕过了针对代码注入攻击的防御。这些攻击的一个共同特征是依赖于可执行代码的内存布局知识。我们提出了一种基于细粒度随机化的方法,该方法通过修改可执行代码的布局来打破这些假设并阻碍代码重用攻击。我们的解决方案通过随机改组目标二进制文件中的功能块来随机化可执行代码的内部结构。这拒绝了攻击者必要的指令地址先验知识,以构造所需的利用有效载荷。我们的方法可以应用于任何ELF二进制文件,并且此二进制文件的每次执行都会使用不同的随机化。我们已经将Marlin集成到bash shell中,该bash shell在启动目标可执行文件之前将其随机化。我们的工作表明,这种方法产生的开销较低,并且可以大大提高针对基于代码重用的攻击的安全性。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号