WWW2Exec - __malloc_hook
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:
pageOne GadgetZauważ, ż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.
References
Last updated