Protostar – Heap Buffer Overflow – Heap 0

Continuando con la serie Protostar, in questo articolo andremo ad analizzare una tecnica più avanzata rispetto allo Stack Buffer Overflow. Per questo motivo ho deciso di dividere in più articoli la serie Heap, facendo un livello per articolo. Introduzione Quando un programma viene eseguito, viene allocata dinamicamente della memoria per contenere i dati dello stesso. […]

Protostar – Heap Buffer Overflow – Heap 1

Rispetto al precedente livello, in questo caso il focus inizia ad essere sullo heap e sulla sua struttura, ed andremo quindi a comprendere meglio come è fatto e come è possibile, ovviamente, exploitarlo. Heap 1 Codice Heap 1 Come per lo scorso esercizio, andiamo ad inserire un breakpoint alla fine del codice (riga 35) e […]

Protostar – Heap Buffer Overflow – Heap 2

Proseguiamo con un altro esercizio della serie Protostar. Questa volta andremo ad analizzare una vulnerabilità presente nell’heap quando un programma continua ad utilizzare un puntatore dopo che è stato liberato (con l’istruzione free), Use-After-Free appunto. Il puntatore originale alla memoria liberata viene utilizzato di nuovo e punta ad un punto all’interno della nuova allocazione. Man […]

Protostar – Heap Buffer Overflow – Heap 3

In questo ultimo articolo andremo ad approfondire il funzionamento completo dell’heap, i suoi metadati e come è possibile sfruttarli per superare l’ultimo esercizio.  Sarà fortemente teorico e tecnico ma per comprenderlo è necessario avere delle forti basi della materia. Ciò che andremo a fare sarà carpire le informazioni principali dei vari articoli pubblicati nel corso […]

« Previous Page