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
Outils/GitHubGitHub/bootleg/ret-sync
Analyse Dynamique (Sandboxing)Rétro-ingénierieDébogueursUtilitaires et FrameworksAnalyse de Binaires
GitHubbootleg/ret-sync

ret-sync

ret-sync est un ensemble de plugins qui aide à synchroniser une session de débogage (WinDbg/GDB/LLDB/OllyDbg2/x64dbg) avec les désassembleurs IDA/Ghidra/Binary Ninja.

Voir le dépôt
2.4k30735il y a 7 moisVérifié par Kitploit

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

ret-sync

ret-sync signifie Reverse-Engineering Tools SYNChronization. C'est un ensemble de plugins qui aident à synchroniser une session de débogage (WinDbg/GDB/LLDB/OllyDbg/OllyDbg2/x64dbg) avec un désassembleur (IDA/Ghidra/Binary Ninja). L'idée sous-jacente est simple : tirer le meilleur des deux mondes (analyse statique et dynamique).

Les débogueurs et l'analyse dynamique nous fournissent :

  • une vue locale, avec un contexte dynamique en direct (registres, mémoire, etc.)
  • des fonctionnalités/API spécialisées intégrées (ex : !peb de WinDbg, !drvobj, !address, etc.)

Les désassembleurs et l'analyse statique nous fournissent :

  • une vue macro sur les modules
  • l'analyse de code, les signatures, les types, etc.
  • une vue graphique élaborée
  • la décompilation
  • un stockage persistant des connaissances dans les IDB/GPR

Fonctionnalités clés :

  • synchronisation des vues graphique et de décompilation avec l'état du débogueur
  • plus besoin de gérer l'ASLR, les adresses sont recalculées à la volée
  • transmission de données (commentaire, sortie de commande) du débogueur au désassembleur
  • plusieurs IDB/GPR peuvent être synchronisés en même temps, permettant de suivre facilement plusieurs modules
  • le désassembleur et le débogueur peuvent être sur des hôtes/VM différents

ret-sync est un fork de qb-sync que j'ai développé et maintenu pendant mon séjour chez Quarkslab.


Table des matières

  • Contenu du dépôt
  • Prérequis généraux
  • Version binaire
  • Configuration de ret-sync
  • Installation
    • Extension IDA
    • Extension Ghidra
    • Extension Binary Ninja
    • Extension WinDbg
    • Installation de GNU gdb (GDB)
    • Installation de LLDB
    • Installation d'OllyDbg 1.10
    • Installation d'OllyDbg2
    • Installation de x64dbg
  • Utilisation
    • Commandes du débogueur ret-sync
    • Utilisation avec IDA
    • Utilisation avec Ghidra
    • Utilisation avec Binary Ninja
    • Utilisation avec WinDbg
    • Utilisation avec GNU gdb (GDB)
    • Utilisation avec LLDB
    • Utilisation avec OllyDbg 1.10
    • Utilisation avec OllyDbg2
    • Utilisation avec x64dbg
    • Utilisation de la bibliothèque Python
  • Extension
  • TODO
  • Bugs/Limitations connus
  • Licence
  • Remerciements

Contenu du dépôt

Les plugins pour débogueurs :

  • ext_windbg/sync : fichiers sources de l'extension WinDbg, une fois compilée : sync.dll
  • ext_gdb/sync.py : plugin GDB
  • ext_lldb/sync.py : plugin LLDB
  • ext_olly1 : plugin OllyDbg 1.10
  • ext_olly2 : plugin OllyDbg v2
  • ext_x64dbg : plugin x64dbg

Les plugins pour désassembleurs :

  • ext_ida/SyncPlugin.py
  • ext_ghidra/dist/ghidra_*_retsync.zip : plugin Ghidra
  • ext_bn/retsync : plugin Binary Ninja

Et le plugin bibliothèque :

  • ext_lib/sync.py : bibliothèque Python autonome

Prérequis généraux

Les plugins IDA et GDB nécessitent une installation Python valide. Python 2 (>=2.7) et Python 3 sont pris en charge.

Version binaire

Des binaires précompilés pour les débogueurs WinDbg/OllyDbg/OllyDbg2/x64dbg sont proposés via un pipeline Azure DevOps : Build Status

Sélectionnez la dernière build et vérifiez les artefacts dans la section Related : 6 published.

Une archive précompilée du plugin Ghidra est fournie dans ext_ghidra/dist.

Configuration de ret-sync

ret-sync devrait fonctionner immédiatement pour la plupart des utilisateurs avec une configuration typique : débogueur et désassembleur(s) sur le même hôte, noms de modules correspondants.

Cependant, dans certains scénarios, une configuration spécifique peut être nécessaire. Pour cela, les extensions et plugins recherchent un fichier de configuration global optionnel nommé .sync dans le répertoire personnel de l'utilisateur. Il doit s'agir d'un fichier .INI valide.

De plus, les plugins IDA et Ghidra recherchent également le fichier de configuration d'abord dans le répertoire de l'IDB ou du projet (<project>.rep) pour permettre des paramètres locaux, par IDB/projet. Si un fichier de configuration local est présent, le fichier de configuration global est ignoré.

Les valeurs déclarées dans ces fichiers de configuration remplacent les valeurs par défaut. Veuillez noter qu'aucun fichier .sync n'est créé par défaut.

Ci-dessous, nous détaillons trois scénarios courants où un fichier de configuration est utile/nécessaire :

  • Débogage à distance
  • Décalage des noms de modules
  • PID manquant

Débogage à distance : débogueur et désassembleur sur des hôtes différents

La section [INTERFACE] est utilisée pour personnaliser les paramètres réseau. Supposons que l'on souhaite synchroniser IDA avec un débogueur s'exécutant dans une machine virtuelle (ou simplement un autre hôte), scénario courant de débogage noyau à distance.

Créez simplement deux fichiers .sync :

  • un sur la machine où IDA est installé, dans le répertoire de l'IDB :
  • Pour Ghidra, placez-le dans le répertoire personnel, ex. "/home/user" ou "C:\Users\user".``` [INTERFACE] host=192.168.128.1 port=9234
Il indique au plugin **ret-sync** ``IDA`` d'écouter sur l'interface
``192.168.128.1`` avec le port ``9234``. Il va sans dire que cette
interface doit être accessible depuis la machine distante ou la machine virtuelle.

* une sur la machine où le débogueur est exécuté, dans le répertoire personnel de l'utilisateur :```
[INTERFACE]
host=192.168.128.1
port=9234

Il indique au plugin de débogueur ret-sync de se connecter au plugin ret-sync IDA configuré précédemment pour écouter sur cette interface.

NOTE: Vous devez spécifier une vraie adresse IP ici, et ne pas utiliser 0.0.0.0. En effet, la variable est utilisée par plusieurs sources à la fois pour la liaison et la connexion, donc l'utilisation de 0.0.0.0 entraînera des erreurs étranges.

Les noms des modules IDB et débogueur sont différents```

[ALIASES] ntoskrnl_vuln.exe=ntkrnlmp.exe

La section ``[ALIASES]`` permet de personnaliser le nom utilisé par un désassembleur (IDA/Ghidra) pour enregistrer un module auprès de son répartiteur/gestionnaire de programme.

Par défaut, les plugins de désassembleur utilisent le nom du fichier d'entrée. Cependant, on peut avoir renommé le fichier au préalable et celui-ci ne correspond plus au nom du processus réel ou du module chargé tel que vu par le débogueur.

Ici, on indique simplement au répartiteur de correspondre au nom `ntkrnlmp.exe` (nom réel) au lieu de `ntoskrnl_vuln.exe` (nom IDB).


## gdb avec le frontal de débogage Qt Creator
Télécharger l’outil