Come sfruttare una vulnerabilità Use-After-Free?

3

Voglio saperne di più sulle vulnerabilità use-after-free e ho trovato questo tutorial. Eppure non lo capisco molto bene e spero in una spiegazione di come funziona.

    
posta user104787 23.03.2016 - 22:05
fonte

1 risposta

4

Ci sono linguaggi di programmazione come C o C ++ in cui il programma deve allocare manualmente e deallocare la memoria per archiviare i suoi dati. Dopo che la memoria è stata deallocata, quella memoria può essere riutilizzata per memorizzare altri dati. Tuttavia, anche dopo che un programma C ha ufficializzato un blocco di memoria, può comunque leggere da esso e scrivere su di esso. Se ciò accade, è praticamente sempre un bug non intenzionale. In molti casi il compilatore e il sistema operativo possono rilevare quando ciò accade e arrestare il programma, ma non è possibile cogliere ogni eventualità.

Ciò significa che il programma crede che stia leggendo o scrivendo un pezzo di dati (che in realtà non dovrebbe essere più rilevante), ma lo fa con qualche altro dato, completamente non correlato, che è stato archiviato nel frattempo. Ciò può, ad esempio, comportare la sovrascrittura dei dati con i dati forniti dall'attaccante o il risultato di lettura di dati riservati e la sua individuazione nell'output del programma.

Per sapere come sfruttarlo: non esiste una risposta universalmente applicabile perché le situazioni in cui si verificano use-after-free sono strongmente dipendenti dall'applicazione.

    
risposta data 23.03.2016 - 23:50
fonte

Leggi altre domande sui tag