Ingénierie inversée avec Ghidra
ACTION REQUISE (lire immédiatement)
MAINTENANT : Lire ../field-journal/precedent-reverse.md
MAINTENANT : Confirmer que Ghidra est nécessaire (pas d'IDA / préférence open source / batch headless)
SUIVANT : Lire ../tool-index.md pour connaître le chemin de ghidra / ghidra-mcp
SUIVANT : Outil manquant → bootstrap ghidra-mcp (si le manifeste le prend en charge) ou installer Ghidra manuellement
ACTION : Importer l'échantillon → analyse automatique → exporter la décompilation des fonctions critiques
Cas d'utilisation
- Point d'entrée principal pour le reverse engineering sans licence IDA
- Analyse headless par lots / décompilation dans un pipeline CI
- Automatisation via scripts Ghidra (Java / Python Jython / PyGhidra)
- Interfaçage avec
binary-diff / patch-diff-exploit via ghidriff
Répartition des rôles avec IDA
| Besoin | Priorité |
|---|
| Analyse approfondie avec IDA MCP existant | ida-reverse/ |
| Open source / batch / enseignement | Cette compétence |
| Reconnaissance rapide en ligne de commande uniquement | radare2/ |
Workflow
1. Projet et analyse automatique
□ Créer un projet → Importer le fichier → Analyser (analyseurs par défaut)
□ Enregistrer les types de langage/compilateur et l'adresse de base
□ Marquer l'entrée, la table d'exportation, les références croisées des chaînes
2. Fonctions critiques
□ Remonter depuis les chaînes / API importées
□ Fenêtre de décompilation pour restituer l'algorithme
□ Renommer les fonctions/variables ; ajouter un commentaire "Plate"
□ Si nécessaire, passer à Frida/GDB pour les aspects dynamiques (chapitre dynamique du reverse engineering)
3. Mode Headless (par lots)
analyzeHeadless /chemin/vers/projet Projet -import echantillon.bin -postScript ExportDecomp.py
4. MCP (si configuré)
□ Vérifier le port MCP de ghidra (courant 8765, se référer à tool-index)
□ Utiliser les outils MCP pour récupérer les décompilations / références croisées, interdiction de deviner le port
Chaîne d'outils
| Outil | Usage | Installation |
|---|
| Ghidra | Outil principal de décompilation | Release manuelle / gestionnaire de paquets |
| ghidra-mcp | Pont IA | Nom de capacité ghidra-mcp via bootstrap |
| ghidriff | Différences entre patches | Voir patch-diff-exploit |
Références
references/ghidra-cheatsheet.md
../ida-reverse/ ../radare2/ ../binary-diff/
Contexte d'acheminement
Amont : MASTER R22
Aval : Validation dynamique → Frida/GDB ; exploitation → pwn-chain
Homologue : ida-reverse (exploration commerciale approfondie)
Auto-vérification de la tâche