Ret2ret & Reo2pop
Last updated
Last updated
Lernen Sie & üben Sie AWS-Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen Sie & üben Sie GCP-Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Das Haupt Ziel dieser Technik ist es, zu versuchen, ASLR zu umgehen, indem ein vorhandener Zeiger im Stack missbraucht wird.
Grundlegend werden Stack-Überläufe normalerweise durch Zeichenfolgen verursacht, und Zeichenfolgen enden mit einem Nullbyte am Ende im Speicher. Dies ermöglicht es, den Ort, auf den ein bereits vorhandener Zeiger im Stack zeigt, zu reduzieren. Wenn der Stack also 0xbfffffdd
enthielt, könnte dieser Überlauf ihn in 0xbfffff00
umwandeln (beachten Sie das letzte nullte Byte).
Wenn diese Adresse auf unseren Shellcode im Stack zeigt, ist es möglich, den Fluss zu dieser Adresse zu bringen, indem Adressen zur ret
-Anweisung hinzugefügt werden, bis diese erreicht ist.
Daher würde der Angriff wie folgt aussehen:
NOP-Schlitten
Shellcode
Überschreiben des Stacks vom EIP mit Adressen zum ret
(RET-Schlitten)
0x00 hinzugefügt durch die Zeichenfolge, die eine Adresse im Stack modifiziert, sodass sie auf den NOP-Schlitten zeigt
Unter diesem Link können Sie ein Beispiel für eine verwundbare Binärdatei sehen und in diesem das Exploit.
Falls Sie einen perfekten Zeiger im Stack finden, den Sie nicht ändern möchten (bei ret2ret
haben wir das letzte niedrigste Byte in 0x00
geändert), können Sie denselben ret2ret
-Angriff durchführen, aber die Länge des RET-Schlittens muss um 1 verkürzt werden (damit das letzte 0x00
die Daten direkt vor dem perfekten Zeiger überschreibt), und die letzte Adresse des RET-Schlittens muss auf pop <reg>; ret
zeigen.
Auf diese Weise werden die Daten vor dem perfekten Zeiger aus dem Stack entfernt (dies sind die Daten, die vom 0x00
betroffen sind), und das letzte ret
wird auf die perfekte Adresse im Stack zeigen, ohne Änderungen.
Unter diesem Link können Sie ein Beispiel für eine verwundbare Binärdatei sehen und in diesem das Exploit.
Lernen Sie & üben Sie AWS-Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen Sie & üben Sie GCP-Hacking: HackTricks Training GCP Red Team Expert (GRTE)