
أداة إلغاء الافتراضية (devirtualizer) معممة لـ VMProtect تدعم الإصدارات 1.x–3.x. أداة CLI مستقلة وإضافة Ghidra لفك تشفير البايت كود تلقائيًا، وتصنيف المعالجات، وإعادة بناء تعليمات x86-64 من الثنائيات المحمية.
أداة إلغاء الافتراضية المعممة لـ VMProtect تدعم الإصدارات 1.x و 2.x و 3.x. أداة CLI مستقلة + إضافة Ghidra.
الحالة: ✅ جاهز للإنتاج | التحقق: 22/22 عينة (100%) | النطاق: VMP ≤3.6 (3.7+ يتطلب هندسة عكسية)
cd /home/ciupix/vmp_devirt_prod
cargo build --release
الملف الثنائي: target/release/vmp_devirt
# تحليل الملف الثنائي
./target/release/vmp_devirt <binary_path>
# تصدير المعالجات
./target/release/vmp_devirt <binary_path> --export-handlers handlers.json
# تصدير البايت كود
./target/release/vmp_devirt <binary_path> --export-bytecode bytecode.json
العينات المختبرة:
راجع VALIDATION_REPORT.md للحصول على النتائج المفصلة.
Input Binary
↓
PE/ELF Loader (src/pe_loader.rs)
↓
Version Detector (src/version.rs)
↓
Dispatch Table Extractor (src/dispatch_table.rs)
├─ Unicorn XOR Key Capture (src/unicorn_emulator.rs)
└─ Pattern Matching Fallback
↓
Handler Classifier (src/handler_classifier.rs)
↓
Bytecode Decoder (src/bytecode.rs)
├─ Operand Decryption (src/decrypt.rs)
└─ ALU Reconstruction (src/alu.rs)
↓
Output (JSON/Pseudo-asm)
الإجمالي: ~2,800 سطر من كود Rust الإنتاجي
القواعد الاستقرائية المبنية على:
VMP 1.x/2.x: استخراج مفتاح XOR عبر مطابقة الأنماط في قسم .text
VMP 3.x: توزيع سلسلة المعالج
مطابقة الأنماط على:
FUTURE_WORK.md للتفاصيل.VALIDATION_REPORT.md - نتائج الاختبار الشاملةIMPLEMENTATION_COMPLETE.md - حالة التنفيذUNICORN_IMPLEMENTATION_REPORT.md - تفاصيل التقاط مفتاح XORالبنية مبنية على تحليل تسريب مصدر VMP 3.5.1:
استخدام بحثي/تعليمي
للاستفسارات أو الأسئلة، راجع تقارير التحقق أو توثيق التنفيذ.
آخر تحديث: 2026-06-01 الحالة: جاهز للإنتاج
| الإصدار |
|---|
| العينات |
|---|
| النجاح |
|---|
| متوسط الوقت |
|---|
| VMP 1.x | 4 | 4/4 | 38ms |
| VMP 2.x | 6 | 6/6 | 734ms |
| VMP 3.x | 12 | 12/12 | 39ms |
| الوحدة | الغرض | الأسطر |
|---|
src/lib.rs | واجهة المكتبة الرئيسية | 150 |
src/version.rs | كشف إصدار VMP | 200 |
src/pe_loader.rs | تحميل ملفات PE/ELF | 350 |
src/dispatch_table.rs | استخراج جدول التوزيع | 400 |
src/unicorn_emulator.rs | التقاط مفتاح XOR | 308 |
src/handler_classifier.rs | تحديد نوع المعالج | 280 |
src/bytecode.rs | قراءة/فك ترميز البايت كود | 320 |
src/decrypt.rs | سلاسل ValueCryptor | 250 |
src/alu.rs | إعادة بناء عمليات ALU | 200 |
src/opcode_table.rs | إدارة كود التشغيل | 180 |
src/bin/cli.rs | أداة CLI | 400 |