Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
ROPInjector — Patchen von ROP-codierten Shellcodes in PEs | Kitploit
Tools/GitHubGitHub/gpoulios/ropinjector
ExploitationIDS/IPS-UmgehungReverse EngineeringShellcodePenetrationstestsBinäranalyseRed TeamingShellcode-GenerierungPayload-EntwicklungBinary-Exploitation
GitHubgpoulios/ropinjector

ROPInjector

1864910vor 8 JahrenVon Kitploit geprüft

Patchen von ROP-codierten Shellcodes in PEs

Repository anzeigen

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

ROPInjector

Ein in C (Win32) geschriebenes Werkzeug, um beliebigen Shellcode in ROP zu konvertieren und in eine gegebene portable executable (PE) zu patchen. Es unterstützt nur 32-Bit-Ziel-PEs und den x86-Befehlssatz.

Veröffentlicht auf der Blackhat USA 2015, "ROPInjector: Using Return Oriented Programming for Polymorphism and Antivirus Evasion" Weitere Informationen:

  • (Whitepaper) https://www.blackhat.com/docs/us-15/materials/us-15-Xenakis-ROPInjector-Using-Return-Oriented-Programming-For-Polymorphism-And-Antivirus-Evasion-wp.pdf
  • (Präsentation) https://www.blackhat.com/docs/us-15/materials/us-15-Xenakis-ROPInjector-Using-Return-Oriented-Programming-For-Polymorphism-And-Antivirus-Evasion.pdf

Verwendung

root@kitploit:~
  ropinjector <file-to-infect> <shellcode-file> <output-file>* [options]*

(* kennzeichnet optionale Argumente)

z. B.

root@kitploit:~
ropinjector.exe firefox.exe revshell.txt
  • file-to-infect : jede 32-Bit-, nicht gepackte PE

  • shellcode-file : der Shellcode, der in die PE-Datei eingefügt werden soll

  • output-file (optional) : Der Name der Ausgabedatei. Falls nicht angegeben, wählt ROPInjector einen passenden Dateinamen, der die Art der durchgeführten Injektion angibt.

  • options :

root@kitploit:~
				
	text		Erzwingt das Lesen der Shellcode-Datei als Textdatei. Shellcode in Textform 
				muss im Format \xHH\xHH\xHH vorliegen.
	
	norop		Wandelt den Shellcode nicht in ROP um.
	
	nounroll	Führt kein Entrollen der SIBs durch.
	
	noinj		Fügt keine fehlenden Gadgets ein.
	
	getpc		Ersetzt keine getPC-Konstrukte im Shellcode.
	
	entry		Lässt den Shellcode vor dem ursprünglichen PE-Code ausführen. Ohne diese
				Option versucht ROPInjector, Aufrufe von ExitProcess(), exit() und ähnlichen 
				Funktionen zu hooken, sodass der Shellcode zuletzt, unmittelbar vor 
				Prozessende, ausgeführt wird.
				
	-d<secs>	Anzahl der Sekunden, die Sleep() vor der Ausführung des Shellcodes gewartet wird.
				Wenn diese Option angegeben wird, wird implizit auch "entry" verwendet.

Tool herunterladen

ROPInjector gibt am Ende einige durch Kommas getrennte Statistiken aus. Diese sind (in der Reihenfolge ihres Erscheinens):

  • der Dateiname der Träger-PE
  • der Ausgabedateiname der resultierenden gepatchten Datei
  • die ursprüngliche Größe der PE-Datei in Bytes
  • die Größe des Shellcodes in Bytes
  • die Größe des Patches in Bytes
  • ob ein Entrollen durchgeführt wurde
  • ob der Shellcode in ROP konvertiert wurde
  • ob getPC-Konstrukte im Shellcode ersetzt wurden
  • ob dem Shellcode beim Eintritt (zuerst ausführen) oder beim Austritt (zuletzt ausführen) Zugriff gewährt wird
  • die Verzögerung in Sekunden, die der Shellcode vor der Ausführung schläft
  • die anfängliche Anzahl von Anweisungen im Shellcode
  • die Anzahl von Anweisungen im Shellcode nach Entrollen und anderen Manipulationen, aber vor ROP
  • die Anzahl von Anweisungen, die durch ROP-Gadgets ersetzt wurden (von denen der vorherigen Metrik, nicht der anfänglichen Anzahl von Anweisungen)
  • die Anzahl injizierter Gadgets
  • die Anzahl der Gadget-Segmente
  • die Anzahl von Anweisungen, die durch injizierte Gadgets ersetzt wurden

LIZENZ

GPLv2.0, http://www.gnu.org/licenses/old-licenses/gpl-2.0.html