
네이티브 C++ 리버스 엔지니어링 엔진으로, PE/ELF 바이너리를 위한 디스어셈블리, 디컴파일 및 분석 파이프라인을 갖추고 있으며, 대화형 GUI와 Ghidra 호환 디컴파일러를 제공합니다.
Ghidra의 분석 파이프라인에서 영감을 받은 네이티브 C++ 리버스 엔지니어링 엔진입니다.
Enigma는 JVM 의존성을 제거하고, 임베드하고 확장하며 네이티브 도구 및 AI 시스템과 직접 통합할 수 있는 독립형 분석 코어를 제공합니다.
Enigma는 활발히 개발 중이며 이미 기능적인 엔드투엔드 분석 파이프라인을 갖추고 있습니다.
.gzf/.rep 가져오기 경로halt_baddata 0건)코어 파이프라인은 안정적이며(78/78 CTest 스위트 통과), 현재 작업은 기능 범위 확장, 엔진/GUI 통합 개선, 그리고 Ghidra 12.1.3 동등성 테스트 중 식별된 남은 기능 격차 해소에 초점을 맞추고 있습니다.
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
| 구성 요소 | 출처 |
|---|---|
| 디컴파일러 엔진 | Ghidra 네이티브 C++ 디컴파일러 라이브러리 |
| Sleigh 프로세서 사양 | Ghidra |
| 프로그램 모델 | 네이티브 Enigma C++ 구현 |
| 타입 및 메모리 시스템 | 네이티브 Enigma C++ 구현 |
| 분석 파이프라인 | 네이티브 Enigma C++ 구현 |
| 함수 탐지 | 네이티브 Enigma 구현 |
| 바이너리 로더 | 네이티브 Enigma 구현 (PE/ELF/Mach-O/COFF) |
| 저장소 | 네이티브 Enigma 구현 |
| GUI | 네이티브 Qt6 구현 |
Enigma는 필요한 저수준 분석 기술을 제공하는 곳에서 Ghidra 구성 요소를 사용하며, 주변 엔진 아키텍처는 C++로 네이티브 구현됩니다.
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는 더 이상 단순한 프로토타입 분석 코어가 아닙니다. 네이티브 파이프라인, 스토리지 계층, 분석 시스템, GUI가 모두 작동 중입니다(78/78 CTest 스위트 통과).
현재 개발은 엔진의 기능을 확장하고 백엔드에 이미 존재하는 기능을 GUI에 연결하는 데 집중되어 있으며, 동시에 Ghidra 12.1.3 디스어셈블러/디컴파일러 패리티 감사에서 확인된 나머지 격차를 해소하고 있습니다(PLAN/ 참조).
이 프로젝트는 Apache License 2.0에 따라 라이선스가 부여됩니다.
Enigma가 사용하는 타사 구성 요소는 해당 라이선스의 적용을 계속 받습니다.