Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
ROPInjector — Patching de shellcodes encodés en ROP dans des PE | Kitploit
Outils/GitHubGitHub/gpoulios/ropinjector
ExploitationÉvasion IDS/IPSRétro-ingénierieShellcodeTests d'IntrusionAnalyse de BinairesRed TeamingGénération de ShellcodeDéveloppement de Charges UtilesExploitation de Binaires
GitHubgpoulios/ropinjector
1864927il y a 8 ansVérifié par Kitploit

ROPInjector

Patching de shellcodes encodés en ROP dans des PE

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

ROPInjector

Un outil écrit en C (Win32) pour convertir n'importe quel shellcode en ROP et le patcher dans un exécutable portable (PE) donné. Il ne prend en charge que les PE cibles 32 bits et le jeu d'instructions x86.

Publié lors de Blackhat USA 2015, « ROPInjector : Utilisation de la programmation orientée retour pour le polymorphisme et l'évasion antivirale » Plus d'informations :

  • (livre blanc) 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

Utilisation

  ropinjector <fichier-à-infecter> <fichier-shellcode> <fichier-sortie>* [options]*

(* désigne des arguments facultatifs)

ex.

ropinjector.exe firefox.exe revshell.txt
  • fichier-à-infecter : tout PE 32 bits non compressé

  • fichier-shellcode : le shellcode à patcher dans le fichier PE

  • fichier-sortie (facultatif) : Le nom du fichier de sortie. S'il n'est pas spécifié, ROPInjector choisira un nom de fichier approprié indiquant le type d'injection effectuée.

  • options :

				
	text		Force la lecture du fichier shellcode en tant que fichier texte. Le shellcode sous forme 
				texte doit être au format \xHH\xHH\xHH.
	
	norop		Ne pas transformer le shellcode en ROP.
	
	nounroll	Ne pas dérouler les SIB.
	
	noinj		Ne pas injecter les gadgets manquants.
	
	getpc		Ne pas remplacer les constructions getPC dans le shellcode.
	
	entry		Faire exécuter le shellcode avant le code PE original. Sans cette
				option, ROPInjector essaiera de hooker les appels à ExitProcess(),
				exit() et similaires afin que le shellcode s'exécute en dernier, juste
				avant la sortie du processus.
				
	-d<secs>	Nombre de secondes à Sleep() avant d'exécuter le shellcode.
				Lorsque cette option est spécifiée, "entry" est également utilisé implicitement.

ROPInjector affichera quelques statistiques séparées par des virgules à la fin. Celles-ci sont (dans l'ordre d'apparition) :

  • le nom du fichier PE porteur
  • le nom du fichier de sortie du fichier patché résultant
  • taille initiale du fichier PE en octets
  • taille du shellcode en octets
  • taille du patch en octets
  • si le déroulement est effectué
  • si le shellcode a été converti en ROP
  • si les constructions getPC sont remplacées dans le shellcode
  • si l'accès au shellcode est donné lors de l'entrée (exécution en premier) ou lors de la sortie (exécution en dernier)
  • le délai en secondes que le shellcode attend avant de s'exécuter
  • nombre initial d'instructions dans le shellcode
  • nombre d'instructions dans le shellcode après déroulement et autres manipulations, mais avant ROP
  • nombre d'instructions remplacées par des gadgets ROP (parmi celles de la métrique précédente, et non le nombre initial d'instructions)
  • nombre de gadgets injectés
  • nombre de segments de gadgets
  • nombre d'instructions remplacées par des gadgets injectés

LICENCE

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

Télécharger l’outil