Use After Free
Informazioni di base
Come suggerisce il nome, questa vulnerabilità si verifica quando un programma riserva dello spazio nell'heap per un oggetto, scrive alcune informazioni lì, lo libera apparentemente perché non è più necessario e poi vi accede di nuovo.
Il problema qui è che non è illegale (non ci saranno errori) quando una memoria liberata viene acceduta. Quindi, se il programma (o l'attaccante) riesce a allocare la memoria liberata e memorizzare dati arbitrari, quando la memoria liberata viene acceduta dal puntatore iniziale quei dati saranno sovrascritti causando una vulnerabilità che dipenderà dalla sensibilità dei dati che erano stati memorizzati originariamente (se si trattava di un puntatore di una funzione che sarebbe stata chiamata, un attaccante potrebbe controllarlo).
Altri Riferimenti ed Esempi
ARM64. Uso dopo la liberazione: Genera un utente, liberarlo, riutilizzare lo stesso blocco sovrascrivendo la posizione della password dell'utente da quello precedente. Riutilizza l'utente per bypassare il controllo della password
Last updated