Return 面向编程漏洞利用技术中的即时小工具

Immediate Gadget in Return Oriented Programming exploit technique

ROP中的直接gadget是什么-Return面向编程中的安全漏洞利用技术?

我正在阅读一些关于 ROP 的理论,并且只写了 Immediate Gadget,我们有一个指向代码序列的指针:

pop %ebx ; ret

说明

pop %ebx 

会将下一个双字载入 %ebx。

但我不明白为什么这会有用?如果您正在从某个库中加载某些内容,那么您正在尝试获取一些有用的小工具,为什么会有 "Immediate"?

当执行此小工具时,您可以控制堆栈上的值,因此您可以使用它将任意值存储到 ebx 寄存器中。

您需要做的就是将所需的值写入堆栈中的正确位置,然后让这个小工具 运行。

所以这个小工具允许您执行等同于 "load immediate" movl 指令的操作:

movl    , %ebx

任意立即数(上面的只是一个例子)。

免责声明:我不是 exploit 编写者,所以请验证我的想法