- بواسطة x32x01 ||
في عالم المالوير، Obfuscation بقت سلاح أساسي عند المطورين علشان يعطلوا التحليل الثابت والتحليل الديناميكي والهندسة العكسية.
الفكرة مش منع التحليل 100%، لكن تزود الوقت والمجهود لدرجة تخلي كشف السلوك الحقيقي صعب أو متأخر ⏳😈.
الفكرة مش منع التحليل 100%، لكن تزود الوقت والمجهود لدرجة تخلي كشف السلوك الحقيقي صعب أو متأخر ⏳😈.
🔐 Packing & Encryption (التغليف والتشفير)
إزاي بيشتغل من جوه؟
- الـ payload الحقيقي بيتحط جوه طبقة compressed أو encrypted
- عند التشغيل، unpacker/decryptor صغير جدًا يفك الكود في الذاكرة بس
- مفيش كتابة للكود المفكوك على الهارد → التحليل الثابت ينهار ❌
تقنيات متقدمة بيستخدمها المالوير
- 🔁 Multi-layer packing (من 3 لـ 7 طبقات)
- 🧰 Custom packers بدل UPX
- ⚡ On‑the‑fly decryption: فك دوال وقت الحاجة بس
ليه ده خطر؟
- Signature-based detection يبقى بلا قيمة
- الكود الحقيقي مش ظاهر غير داخل الذاكرة
بيتحل إزاي؟
- 🧠 Memory dumping + reconstruction
- 🎣 API hooking بعد فك التشفير
- 🧪 Emulation (زي Capstone + Unicorn)
🔄 Polymorphic Malware (تغيير البصمة كل مرة)
الفكرة
- تشفير الكود بمفتاح مختلف كل إصابة
- الملف يطلع مختلف تمامًا لكن السلوك واحد
أدوات شائعة
- 🧬 Mutation engines
- 🔐 Custom XOR + polymorphic decryptor
ليه خطير؟
- كل نسخة Hash مختلف → التوقيعات 0% فعّالة
بيتكشف بإيه؟
- 📊 API sequence analysis
- 🌐 Network behavior
- 🧠 Memory artifacts
- 🤖 Feature engineering من البايتات
♻️ Metamorphic Malware (إعادة كتابة الكود بالكامل)
أخطر نوع تمويه 👑بيعمل إيه؟
- إعادة ترتيب الدوال
- تغيير التدفق البنيوي
- استبدال التعليمات بمرادفات
- تغيير Offsets
النتيجة
- مفيش كود ثابت للمقارنة
- السلوك ثابت وده نقطة الضعف 🎯
🧭 Control Flow Flattening (تسطيح التدفق)
الفكرة
تقسيم الدالة لـ Blocks كتير، وDispatcher يحدد التنفيذ → التدفق الحقيقي يضيععلامات CFF
- 🧱 Blocks صغيرة جدًا
- 🔀 switch‑case ضخم
- 🔁 Central dispatcher loop
التعامل معاه
- 🧩 CFG recovery
- 🛠 Deobfuscation scripts
- 🔍 Symbolic execution
- 🧪 Emulation-based unfolding
🗑 Junk Code Injection (كود مالوش لازمة)
إيه اللي بيحصل؟
- إضافة NOPs
- عمليات رياضية ملهاش استخدام
- متغيرات وهمية
الهدف
- تضليل Disassemblers
- تلخبط Feature extractors وML models
الإزالة
- 🧹 Dead code analysis
- 🔄 Data-flow analysis
- 🧠 IR زي LLVM IR
🧩 API Obfuscation (إخفاء الدوال)
من أخطر الأساليب الحديثة 🔥بيشتغل إزاي؟
- مفيش استيراد مباشر من IAT
- Dynamic Function Resolution وقت التشغيل:
- 🔢 Hashing لأسماء الـ API
- 🧠 البحث داخل DLLs
- 🧬 Indirect syscalls للهروب من EDR
- 🪜 API trampolines
- الاعتماد على PEB / Ldr Modules
ليه خطر؟
- التحليل الثابت مش هيشوف أي Windows API
- السلوك يبان بس أثناء التنفيذ
🤖 إزاي الذكاء الاصطناعي بيفك التمويه؟
Graph Neural Networks (GNN)
- تحليل CFG / Call Graph / Import Graph رغم التمويه
Dynamic Behavior Modeling
- تتبع Syscalls وسلاسل API وشجرة العمليات
Hybrid Detection Models
- دمج Static + Behavioral + Memory features
Embeddings
- تحويل Bytes / Opcodes / Functions لتمثيلات رقمية
النتيجة
- كشف شبه كامل بالتركيز على البنية والسلوك مش الشكل الخارجي 🎯
✅ الخلاصة
تمويه المالوير مش بس تغيير شكل الكود، ده إعادة هندسة لطريقة الكشف نفسها. علشان كده لازم:- ✔️ Behavioral ML
- ✔️ Memory analysis
- ✔️ Binary instrumentation
- ✔️ Hybrid static/dynamic pipelines
- ✔️ Automated deobfuscation frameworks