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

3.9 KiB

WWW2Exec - __malloc_hook

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Malloc Hook

Zgodnie z Oficjalną stroną GNU, zmienna __malloc_hook to wskaźnik wskazujący na adres funkcji, która zostanie wywołana za każdym razem, gdy zostanie wywołane malloc(), przechowywany w sekcji danych biblioteki libc. Dlatego jeśli ten adres zostanie nadpisany na przykład przez One Gadget i zostanie wywołane malloc, to One Gadget zostanie wywołany.

Aby wywołać malloc, można poczekać, aż program go wywoła, lub wywołać printf("%10000$c"), co alokuje zbyt wiele bajtów, co powoduje, że libc wywołuje malloc, aby je zaalokować na stercie.

Więcej informacji na temat One Gadget znajdziesz w:

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

{% hint style="warning" %} Zauważ, że haki są wyłączone dla GLIBC >= 2.34. Istnieją inne techniki, które można stosować w nowszych wersjach GLIBC. Zobacz: https://github.com/nobodyisnobody/docs/blob/main/code.execution.on.last.libc/README.md. {% endhint %}

References

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks: