
Nativ C++-Reverse-Engineering-Engine mit Disassemblierung, Dekompilierung und Analyse-Pipeline für PE/ELF-Binärdateien, ausgestattet mit interaktiver GUI und Ghidra-kompatiblem Decompiler.
Eine native C++-Reverse-Engineering-Engine, inspiriert von GhiDras Analyse-Pipeline.
Enigma beseitigt die JVM-Abhängigkeit und bietet einen eigenständigen Analyse-Kern, der eingebettet, erweitert und direkt mit nativen Tools und KI-Systemen integriert werden kann.
Enigma befindet sich in aktiver Entwicklung und verfügt bereits über eine funktionale End-to-End-Analyse-Pipeline.
.gzf/.rep-Importpfadhalt_baddata bei allen Fixtures)Die Kern-Pipeline ist stabil (78/78 CTest-Suites grün), und die aktuelle Arbeit konzentriert sich auf die Erweiterung der Funktionsabdeckung, die Verbesserung der Engine/GUI-Integration und das Schließen verbleibender Fähigkeitslücken, die während der Ghidra-12.1.3-Paritätstests identifiziert wurden.
Binary (PE / ELF / Mach-O / COFF)
│
▼
Binary Loader
│
▼
Capstone + SLEIGH Disassembly
│
▼
Pcode / Decompiler Engine
│
▼
Analysis Pipeline
│
├── Function Detection
├── Type Recovery
├── Symbols
├── References
└── Other Analyses
│
▼
Program Model
│
├── Functions
├── Symbols
├── Types
├── Memory
└── References
│
▼
Storage
│
├── FlatBuffers snapshots
├── LMDB index
└── Git-like commits / branches
│
▼
Qt GUI
│
├── Disassembly
├── Decompiler
├── Hex View
├── CFG / Call Graph
└── Explorers
| Komponente | Quelle |
|---|---|
| Decompiler-Engine | Ghidra native C++ decompiler library |
| Sleigh-Prozessorspezifikationen | Ghidra |
| Programmodell | Native Enigma C++-Implementierung |
| Typ- und Speichersysteme | Native Enigma C++-Implementierung |
| Analyse-Pipeline | Native Enigma C++-Implementierung |
| Funktionserkennung | Native Enigma-Implementierung |
| Binär-Loader | Native Enigma-Implementierung (PE/ELF/Mach-O/COFF) |
| Speicherung | Native Enigma-Implementierung |
| GUI | Native Qt6-Implementierung |
Enigma verwendet Ghidra-Komponenten dort, wo sie die erforderliche Low-Level-Analysetechnologie bereitstellen, während die umgebende Engine-Architektur nativ in C++ implementiert ist.
flatcgit clone https://github.com/adam-040/Enigma.git
cd Enigma/Enigma-Engine
cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build
ctest --test-dir build --output-on-failure
Enigma ist nicht länger nur ein Prototyp-Analysekern. Die native Pipeline, die Speicherschicht, die Analysesysteme und die GUI sind betriebsbereit (78/78 CTest-Suites erfolgreich).
Die aktuelle Entwicklung konzentriert sich auf die Erweiterung der Fähigkeiten der Engine und die Anbindung bereits im Backend vorhandener Funktionalität an die GUI, während die verbleibenden Lücken geschlossen werden, die bei den Paritätsprüfungen des Disassemblers/Decompilers von Ghidra 12.1.3 identifiziert wurden (siehe PLAN/).
Dieses Projekt ist unter der Apache License 2.0 lizenziert.
Von Enigma verwendete Komponenten von Drittanbietern unterliegen weiterhin ihren jeweiligen Lizenzen.