【ARM 芯片 安全与攻击 5.7 -- 码重用攻击】

什么是代码重用攻击?

代码重用攻击(Code Reuse Attack, CRA)是一种利用现有的合法代码片段来执行恶意行为的攻击方法。由于现代操作系统和处理器通常会采用数据执行保护(DEP)等安全机制,直接在堆栈或堆上执行注入的恶意代码变得困难。代码重用攻击通过拼接或链接现有的代码片段来实现恶意目的,从而绕过这些安全机制。

常见的代码重用攻击技术包括:

  • 返回导向编程(Return-Oriented Programming, ROP):利用程序中现有的小片段代码(称为“gadget”),每个 gadget 以返回指令结尾,通过构建特定的返回地址序列来执行复杂的恶意操作。
  • 跳转导向编程(Jump-Oriented Programming, JOP):类似于 ROP,但利用的是跳转指令而不是返回指令。

ROP 攻击示例

以下是一个通过 ROP 攻击实现 execve("/bin/sh", NULL, NULL) 的示例。这个示例的目的是在没有直接执行注入代码的情况下,利用现有的代码片段来执行一个 shell。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

主公讲 ARM

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值