
محرك هندسة عكسية أصلي بلغة C++ مع خط أنابيب لتفكيك الشيفرة وفك الترجمة وتحليل ملفات PE/ELF الثنائية، ويتميز بواجهة رسومية تفاعلية ومفكك ترجمة متوافق مع Ghidra.
محرك هندسة عكسية أصلي بلغة C++ مستوحى من خط أنابيب التحليل في Ghidra.
يزيل إنيغما الاعتماد على JVM ويوفر نواة تحليل مستقلة يمكن تضمينها وتوسيعها ودمجها مباشرة مع الأدوات الأصلية وأنظمة الذكاء الاصطناعي.
إنيغما قيد التطوير النشط ويمتلك بالفعل خط أنابيب تحليل وظيفي من البداية إلى النهاية.
.gzf من Ghidraخط الأنابيب الأساسي مستقر، ويركز العمل الحالي على توسيع تغطية الميزات وتحسين التكامل بين المحرك والواجهة الرسومية وسد الفجوات المتبقية في القدرات التي تم تحديدها أثناء اختبار التكافؤ مع Ghidra 12.1.3.
Binary (PE / ELF)
│
▼
Binary Loader
│
▼
Capstone Disassembler
│
▼
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
| المكوّن | المصدر |
|---|---|
| محرك مفكك الترجمة | مكتبة مفكك الترجمة الأصلية C++ من Ghidra |
| مواصفات معالج Sleigh | Ghidra |
| نموذج البرنامج | تنفيذ أصلي بلغة C++ من إنيغما |
| أنظمة الأنواع والذاكرة | تنفيذ أصلي بلغة C++ من إنيغما |
| خط أنابيب التحليل | تنفيذ أصلي بلغة C++ من إنيغما |
| اكتشاف الدوال | تنفيذ أصلي من إنيغما |
| محملات الملفات الثنائية | تنفيذ أصلي من إنيغما |
| التخزين | تنفيذ أصلي من إنيغما |
| الواجهة الرسومية | تنفيذ أصلي من Qt6 |
يستخدم إنيغما مكونات Ghidra حيث توفر تقنية التحليل منخفضة المستوى المطلوبة، بينما يتم تنفيذ البنية المعمارية المحيطة بالمحرك أصلياً بلغة C++.
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
تم اختباره على ملفات Windows ثنائية حقيقية:
| الملف الثنائي | إنيغما | Ghidra | الاسترجاع |
|---|---|---|---|
notepad.exe | 623 | 498 | 98%+ |
shell32.dll | 30,233 | 30,993 | 97.55% |
kernel32.dll | 3,763 | ~3,800 | ~99% |
لم يعد إنيغما مجرد نواة تحليل نموذجية. خط الأنابيب الأصلي وطبقة التخزين وأنظمة التحليل والواجهة الرسومية كلها قيد التشغيل.
يركز التطوير الحالي على توسيع قدرات المحرك وربط الوظائف الموجودة بالفعل في الواجهة الخلفية بالواجهة الرسومية، مع تنفيذ الفجوات المتبقية التي تم تحديدها أثناء تحليل التكافؤ.
هذا المشروع مرخص بموجب رخصة Apache 2.0.
تظل المكونات الخارجية المستخدمة من قبل إنيغما خاضعة لتراخيصها الخاصة.