hacktricks/reversing-and-exploiting/linux-exploiting-basic-esp/one-gadget.md

3 KiB
Raw Blame History

One Gadget

从零开始学习AWS黑客技术成为专家 htARTEHackTricks AWS红队专家

支持HackTricks的其他方式

基本信息

One Gadget 允许获取一个shell而不是使用system和**"/bin/sh"。One Gadget** 将在libc库中找到一种方法来使用只需一个地址就能获取shell (execve("/bin/sh"))。
然而,通常会有一些限制条件,最常见且易于避免的是像 [rsp+0x30] == NULL 这样的情况。由于您控制RSP中的值只需发送更多的NULL值即可避免这种限制。

ONE_GADGET = libc.address + 0x4526a
rop2 = base + p64(ONE_GADGET) + "\x00"*100

要找到One Gadget指示的地址您需要添加libc加载的基地址

{% hint style="success" %} One Gadget对于任意写入执行技术非常有帮助可能会简化ROP链,因为您只需要调用一个地址(并满足要求)。 {% endhint %}

从零开始学习AWS黑客技术成为专家 htARTEHackTricks AWS Red Team Expert

支持HackTricks的其他方式