Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
ROPInjector — Patchare shellcode codificati con ROP nei PE | Kitploit
Strumenti/GitHubGitHub/gpoulios/ropinjector
ExploitEvasione IDS/IPSReverse EngineeringShellcodePenetration TestingAnalisi di BinariRed TeamingGenerazione di ShellcodeSviluppo PayloadBinary Exploitation
GitHubgpoulios/ropinjector

ROPInjector

18649108 anni faRevisionato da Kitploit

Patchare shellcode codificati con ROP nei PE

Vedi Repository

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

ROPInjector

Uno strumento scritto in C (Win32) per convertire qualsiasi shellcode in ROP e patcharlo in un dato eseguibile portatile (PE). Supporta solo PE target a 32 bit e il set di istruzioni x86.

Pubblicato a Blackhat USA 2015, "ROPInjector: Using Return Oriented Programming for Polymorphism and Antivirus Evasion" Maggiori informazioni:

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

Utilizzo

root@kitploit:~
  ropinjector <file-da-infettare> <file-shellcode> <file-output>* [opzioni]*

(* indica argomenti opzionali)

e.g.

root@kitploit:~
ropinjector.exe firefox.exe revshell.txt
  • file-da-infettare : qualsiasi PE a 32 bit, non compresso

  • file-shellcode : il file shellcode da patchare nel file PE

  • file-output (opzionale) : Il nome del file di output. Se non specificato, ROPInjector sceglierà un nome di file adatto che indica il tipo di iniezione eseguita.

  • opzioni :

root@kitploit:~
				
	text		Forza la lettura del file shellcode come file di testo. Lo shellcode in forma testuale deve essere nel formato \xHH\xHH\xHH.
	
	norop		Non trasformare lo shellcode in ROP.
	
	nounroll	Non srotolare i SIBs.
	
	noinj		Non iniettare gadget mancanti.
	
	getpc		Non sostituire i costrutti getPC nello shellcode.
	
	entry		Fai eseguire lo shellcode prima del codice PE originale. Senza questa opzione, ROPInjector proverà a hookare le chiamate a ExitProcess(), exit() e simili, in modo che lo shellcode venga eseguito per ultimo, subito prima dell'uscita dal processo.
				
	-d<secs>	Numero di secondi per Sleep() prima di eseguire lo shellcode. Quando questa opzione è specificata, anche 'entry' viene utilizzata implicitamente.

Scarica lo strumento

ROPInjector produrrà alcune statistiche delimitate da virgole alla fine. Queste sono (in ordine di apparizione):

  • il nome del file PE portatore
  • il nome del file di output del file patchato risultante
  • dimensione iniziale del file PE in byte
  • dimensione dello shellcode in byte
  • dimensione della patch in byte
  • se lo srotolamento è stato eseguito
  • se lo shellcode è stato convertito in ROP
  • se i costrutti getPC sono stati sostituiti nello shellcode
  • se l'accesso allo shellcode è concesso durante l'entry (eseguito per primo) o durante l'exit (eseguito per ultimo)
  • il ritardo (in secondi) che lo shellcode attende prima di essere eseguito
  • numero iniziale di istruzioni nello shellcode
  • numero di istruzioni nello shellcode dopo srotolamento e altre manipolazioni, ma prima del ROP
  • numero di istruzioni sostituite da gadget ROP (tra quelle della metrica precedente, non il numero iniziale di istruzioni)
  • numero di gadget iniettati
  • numero di segmenti di gadget
  • numero di istruzioni sostituite da gadget iniettati

LICENZA

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