Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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
Enigma — Moteur de rétro-ingénierie natif en C++ avec pipeline de désassemblage, décompilation et analyse pour les binaires PE/ELF, doté d'une interface graphique interactive et d'un décompilateur compatible Ghidra. | Kitploit
Outils/GitHubGitHub/bunnybuzz/enigma
Analyse StatiqueRétro-ingénierieDébogueursAnalyse de MalwareAnalyse de BinairesRétro-Ingénierie Assistée par IA
GitHubbunnybuzz/enigma

Enigma

Moteur de rétro-ingénierie natif en C++ avec pipeline de désassemblage, décompilation et analyse pour les binaires PE/ELF, doté d'une interface graphique interactive et d'un décompilateur compatible Ghidra.

Voir le dépôt
5849il y a 11 joursVé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
image image

Enigma Engine

Un moteur de rétro-ingénierie natif en C++ inspiré du pipeline d'analyse de Ghidra.

Enigma supprime la dépendance à la JVM et fournit un cœur d'analyse autonome qui peut être embarqué, étendu et intégré directement aux outils natifs et aux systèmes d'IA.


État actuel

Enigma est en développement actif et dispose déjà d'un pipeline d'analyse de bout en bout fonctionnel.

Moteur d'analyse

  • Chargement de binaires PE et ELF
  • Désassemblage x86/x64 avec Capstone
  • Génération de Pcode à l'aide de la bibliothèque native de décompilateur de Ghidra
  • Détection de fonctions avec un rappel d'environ 97 % sur les binaires Windows testés
  • Décompilation C
  • Récupération de types avec les signatures de l'API Windows (plus de 1400 prototypes)
  • Symboles, références, fonctions, types et modèle mémoire
  • Pipeline d'analyse avec 139 analyseurs enregistrés
  • Chemin d'importation .gzf de Ghidra
  • Persistance de projet à l'aide de FlatBuffers + LMDB avec des commits et des branches de type git

Interface graphique

  • Désassemblage interactif
  • Visionneuse hexadécimale et correction de binaires
  • Décompilateur
  • Visualisation intégrée du flux de contrôle
  • Graphe d'appels
  • Exploration des références croisées
  • Navigation entre symboles et fonctions
  • Synchronisation entre les vues Désassemblage, Décompilateur et Hexadécimal
  • Renommage de fonctions et de symboles

Le pipeline principal est stable, et les travaux actuels se concentrent sur l'élargissement de la couverture fonctionnelle, l'amélioration de l'intégration moteur/interface graphique et la réduction des écarts de capacités restants identifiés lors des tests de parité avec Ghidra 12.1.3.


Architecture

root@kitploit:~
Binaire (PE / ELF)
        │
        ▼
Chargeur de binaires
        │
        ▼
Désassembleur Capstone
        │
        ▼
Moteur Pcode / Décompilateur
        │
        ▼
Pipeline d'analyse
        │
        ├── Détection de fonctions
        ├── Récupération de types
        ├── Symboles
        ├── Références
        └── Autres analyses
        │
        ▼
Modèle de programme
        │
        ├── Fonctions
        ├── Symboles
        ├── Types
        ├── Mémoire
        └── Références
        │
        ▼
Stockage
        │
        ├── Instantanés FlatBuffers
        ├── Index LMDB
        └── Commits / branches de type git
        │
        ▼
Interface graphique Qt
        │
        ├── Désassemblage
        ├── Décompilateur
        ├── Vue hexadécimale
        ├── CFG / Graphe d'appels
        └── Explorateurs

Travail original vs. composants Ghidra

ComposantSource
Moteur de décompilationBibliothèque native C++ de décompilateur de Ghidra
Spécifications du processeur SleighGhidra
Modèle de programmeImplémentation native C++ d'Enigma
Systèmes de types et de mémoireImplémentation native C++ d'Enigma
Pipeline d'analyseImplémentation native C++ d'Enigma
Détection de fonctionsImplémentation native d'Enigma
Chargeurs de binairesImplémentation native d'Enigma
StockageImplémentation native d'Enigma
Interface graphiqueImplémentation native Qt6

Enigma utilise les composants de Ghidra là où ils fournissent la technologie d'analyse de bas niveau requise, tandis que l'architecture du moteur environnant est implémentée nativement en C++.


Compilation

Prérequis

  • C++17 ou plus récent
  • CMake 3.20+
  • Ninja
  • Qt 6
  • Capstone
  • LMDB

Compilation

root@kitploit:~
git clone https://github.com/adam-040/Enigma.git
cd Enigma/enigma-engine

cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build

Benchmark de détection de fonctions

Testé sur de vrais binaires Windows :

BinaireEnigmaGhidraRappel
notepad.exe62349898 %+
shell32.dll30 23330 99397,55 %
kernel32.dll3 763~3 800~99 %

Feuille de route

Interface graphique

  • Désassemblage interactif
  • Vue hexadécimale
  • Vue C décompilé
  • Navigation entre les vues
  • Visualisation des blocs de base
  • Flèches de flux de contrôle
  • Navigation des références croisées
  • Renommage des symboles et des fonctions
  • Correction de binaires
  • Graphe d'appels
  • Graphe de fonctions
  • Navigateur avancé de références croisées

Moteur et analyse

  • Système de connaissance des fonctions (FKS)
  • Extraction d'empreintes de fonctions
  • Vérification de parité avec Ghidra 12.1.3
  • Achèvement des capacités d'analyse partielles restantes
  • Implémentation native des capacités de chargement et d'analyse manquantes
  • Élargissement de la couverture du démangleur et du système de types
  • Prise en charge d'architectures et de formats supplémentaires

Connaissance et IA

  • Système de connaissance des fonctions (FKS)
  • Extraction d'empreintes de fonctions
  • Partage de connaissances basé sur des dépôts
  • Nommage de fonctions assisté par IA
  • Inférence de types assistée par IA
  • Reconnaissance de motifs

État du projet

Enigma n'est plus seulement un cœur d'analyse prototype. Le pipeline natif, la couche de stockage, les systèmes d'analyse et l'interface graphique sont opérationnels.

Le développement actuel se concentre sur l'élargissement des capacités du moteur et la connexion à l'interface graphique des fonctionnalités déjà présentes dans le backend, tout en implémentant les écarts restants identifiés lors de l'analyse de parité.


Licence

Ce projet est sous licence Apache License 2.0.

Les composants tiers utilisés par Enigma restent soumis à leurs licences respectives.

Télécharger l’outil