Pointer Redirecting

Support HackTricks

String-Pointer

Wenn ein Funktionsaufruf eine Adresse eines Strings verwenden soll, der sich im Stack befindet, ist es möglich, den Buffer Overflow auszunutzen, um diese Adresse zu überschreiben und eine Adresse zu einem anderen String im Binärprogramm zu setzen.

Wenn beispielsweise ein system Funktionsaufruf die Adresse eines Strings zur Ausführung eines Befehls verwenden soll, könnte ein Angreifer die Adresse eines anderen Strings im Stack platzieren, export PATH=.:$PATH und im aktuellen Verzeichnis ein Skript mit dem Namen des ersten Buchstabens des neuen Strings erstellen, da dies vom Binärprogramm ausgeführt wird.

Du kannst ein Beispiel dafür finden in:

Funktions-Pointer

Gleich wie String-Pointer, aber auf Funktionen angewendet. Wenn der Stack die Adresse einer Funktion enthält, die aufgerufen werden soll, ist es möglich, sie zu ändern (z.B. um system aufzurufen).

Du kannst ein Beispiel finden in:

Referenzen

Support HackTricks

Last updated