hacktricks/binary-exploitation/arbitrary-write-2-exec/aw2exec-__malloc_hook.md

3.6 KiB
Raw Blame History

WWW2Exec - __malloc_hook

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

支持HackTricks的其他方式

Malloc Hook

正如您可以在GNU官方网站中看到的,变量**__malloc_hook是一个指针,指向将在调用malloc()时调用的函数的地址**存储在libc库的数据段中。因此如果将此地址覆盖为例如One Gadget,并调用malloc,则将调用One Gadget

要调用malloc可以等待程序调用它也可以通过调用printf("%10000$c"),这会分配太多字节,使得libc调用malloc在堆中分配它们。

有关One Gadget的更多信息请参见

{% content-ref url="../rop-return-oriented-programing/ret2lib/one-gadget.md" %} one-gadget.md {% endcontent-ref %}

{% hint style="warning" %} 请注意对于GLIBC >= 2.34,挂钩是禁用的。现代GLIBC版本可以使用其他技术。请参阅https://github.com/nobodyisnobody/docs/blob/main/code.execution.on.last.libc/README.md。 {% endhint %}

References

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

支持HackTricks的其他方式