hackweb
appunti di hacking e tecnologia
IT EN
menĂ¹ principale
menĂ¹ utente
non sei loggato

one_gadget e le "house" della heap glibc

24 agosto 2025 · 1 min di lettura · #binary-exploitation #heap #glibc

Spesso, dopo aver ottenuto una scrittura, non vuoi costruire una ROP completa: vuoi un indirizzo che, saltato con lo stato giusto, esegua execve("/bin/sh").

one_gadget

In libc esistono sequenze che chiamano execve("/bin/sh", ...) se certi registri/memoria sono a valori noti. Lo strumento one_gadget li trova e ne elenca i vincoli:

one_gadget /lib/x86_64-linux-gnu/libc.so.6

Sovrascrivendo __free_hook/__malloc_hook (nelle glibc < 2.34) o una funzione in __exit_funcs con un one_gadget, la shell arriva senza catena.

Le house

House of Force, of Spirit, of Orange, of Botcake: famiglie di tecniche che corrompono i metadati della heap (top chunk, freelist, unsorted bin) per ottenere una scrittura dove serve. Cambiano a ogni versione di glibc.

Difesa

Le glibc recenti hanno rimosso gli hook e aggiunto controlli sui metadati. Allocatori hardened, ASLR, e assenza di bug di memoria restano la difesa reale.


« torna alla home

ultimi post
 
il tuo indirizzo IP:
216.73.216.108
visitatore #0
MOTD:
Ogni astrazione perde da qualche parte.
Qui guardiamo dove.
argomenti