Heap Overflow
Ein Heap-Overflow schreibt über einen Heap-Puffer hinaus und überschreibt Heap-Metadaten oder benachbarte Chunks, wodurch der Heap-Manager korrumpiert und beliebiges Schreiben oder Code-Ausführung erreicht werden kann.
Zweck
Die Ausnutzung von Heap-Pufferüberläufen (Heap-Metadaten-Überschreibung, Unlink-Angriffe) und ihre Abwehr analysieren.
Mechanismus
Überlange Schreibvorgänge überschreiben die Metadaten benachbarter Heap-Chunks (size/fd/bk-Zeiger), sodass Angreifer free/malloc-Operationen des Heaps zu Schreibungen an beliebige Adressen manipulieren können. Moderne Heaps (glibc ptmalloc2) härten Metadaten durch Integritätsprüfungen.
Anwendungsfälle
- Heap-Exploitation
- Analyse der Heap-Härtung
- Speichersicherheit