اعرف اللي قصادك. احمي أرضك.
الفرق الزرقاء — الدفاع

Malware Analysis & RE — تفك الـ binary

Static و Dynamic و Sandboxing و Reverse Engineering

المستوى
خبير
المدة
90m
الترتيب
الدرس 61 من 85
IDAGhidraSandboxYARA

ليه بنحلّل المالوير أصلاً؟

تشبيه يقرّب الفكرة
لقيت عقرب في البيت. تعمل إيه؟ تموته وخلاص؟ ده تصرّف على ادهم. الذكي يدرسه الأول: نوعه إيه؟ كام واحد زيّه ممكن يكون في البيت؟ والعلاج لو لدغ حد إيه؟ تحليل المالوير بيديك IOCs علشان تلاقي كل آثار العقرب ده في كل مكان، وTTPs علشان تكشف العقارب اللي شبهه قبل ما تلدغ.

في 2017، WannaCry ضرب 200 ألف جهاز في 150 دولة في 4 أيام. اللي أوقفه مش EDR ولا firewall — لأ، كان باحث (MalwareTech) قعد يحلّل العيّنة، لقي domain غريب في الكود، سجّله بـ 10$، وبكده فعّل kill-switch المهاجم نسي يقفله. ده تحليل المالوير الحقيقي. مش زرار في أداة.

إعداد المعمل

  • FLARE-VM — Windows VM جاهزة بكل أدوات التحليل.
  • REMnux — Linux distro متخصصة.
  • INetSim / FakeNet-NG — لمحاكاة الإنترنت ضمن VM.
  • VBoxManage snapshot قبل كل تحليل.
  • عطّل guest additions و shared folders و clipboard.
  • اعتبر أن البرمجية ستحاول كشف الـ VM — اختبر في بيئة قريبة من الـ bare-metal.

Static Analysis — التحليل الساكن

الخطوات الأولى

1
بصمة سريعة
bash
file sample.exe
sha256sum sample.exe
strings -el sample.exe | head -50   # Unicode strings
strings -a sample.exe | grep -iE "http|\.exe|\.dll|cmd|powershell"
# في VirusTotal / MalwareBazaar
curl -F "file=@sample.exe" https://www.virustotal.com/api/v3/files
2
تحليل الـ PE structure
tools
pestudio sample.exe          # تحليل سريع شامل
PE-bear / CFF Explorer       # عرض الأقسام و الـ imports
detect-it-easy (DIE)         # كشف الـ packer / compiler
capa -f sample.exe           # تحديد القدرات (capabilities)
floss sample.exe             # استخراج obfuscated strings
3
فك الـ packer
معظم البرمجيات الخبيثة مغلّفة (UPX, Themida, VMProtect).
unpacking
upx -d packed.exe                    # UPX فقط
# للبقية: dump من الذاكرة
x64dbg → run until OEP → Scylla dump
# أو
unipacker sample.exe
4
Disassembly / Decompilation
  • IDA Pro — المعيار التجاري.
  • Ghidra — مجاني من NSA، قوي جداً.
  • Binary Ninja — حديث، API ممتاز.
  • radare2 / cutter — مجاني.

Dynamic Analysis — التحليل الديناميكي

الأدوات

dynamic toolkit
# مراقبة العمليات و الملفات و الريجستري
Procmon (sysinternals)
ProcessHacker / System Informer
# مراقبة الشبكة
Wireshark, tcpdump, mitmproxy
# مراقبة API calls
API Monitor, Frida, x64dbg breakpoints
# debugger
x64dbg, WinDbg, OllyDbg
# تتبع Sysmon
sysmon.exe -i config.xml + Event Viewer

Sandbox آلي

  • Cuckoo / CAPE — sandbox مفتوح المصدر.
  • ANY.RUN — interactive عبر المتصفح.
  • Joe Sandbox, Hatching Triage, VMRay — تجاري.
  • Hybrid Analysis — مجاني عبر CrowdStrike.

مكافحة Anti-Analysis

البرمجية الخبيثة الذكية تكشف بيئة التحليل و تتوقف. أمثلة:

VM Detection
CPUID hypervisor bit, registry keys (VBoxGuest), MAC vendor, low CPU/RAM.
Debugger Detection
IsDebuggerPresent, NtQueryInformationProcess, PEB.BeingDebugged, timing checks (rdtsc).
Sandbox Evasion
Sleep skipping detection, no recent files, no mouse movement, hostname patterns.
Process Injection
حقن في عمليات شرعية للاختفاء.

التغلب عليها

  • أدوات: ScyllaHide, TitanHide, x64dbg + plugins.
  • تعديل بيئة الـ VM لتبدو bare-metal (vmwarevbox-cleaner).
  • كسر الـ checks يدوياً في الـ debugger.
  • محاكاة كاملة بـ Qiling Framework أو Unicorn.

YARA — كتابة قواعد للكشف

YARA تتيح كتابة قواعد لمطابقة عائلات البرمجيات الخبيثة بناءً على strings أو patterns.

yara
rule CobaltStrike_Beacon
{
    meta:
        author = "blue-team"
        description = "Generic Cobalt Strike beacon"
    strings:
        $a = "%s as %s\\%s: %d" ascii
        $b = "ReflectiveLoader" ascii
        $c = { 4D 5A 41 52 55 48 89 E5 48 81 EC ?? ?? 00 00 }
    condition:
        uint16(0) == 0x5A4D and 2 of them
}

تشغيل: yara rules/ /path/to/files -r. منصات تستخدمها: VirusTotal Hunting, Microsoft Defender, FireEye.

Reverse Engineering — مهارات أعمق

  • قراءة Assembly (x86, x64, ARM).
  • فهم الـ calling conventions، الـ stack layout، الـ heap.
  • تتبع الـ control flow و كشف الـ obfuscation.
  • Symbolic execution (angr, Triton) لحلّ مسارات معقدة آلياً.
  • Patching binary لتعطيل checks أو اختبار سيناريوهات.

Reporting — كتابة تقرير محترف

  1. Executive summary — نصف صفحة لغير التقنيين. لو المدير ما فهمش، التقرير فشل مهما كان عميق.
  2. Technical analysis — متى وكيف وماذا يفعل.
  3. IOCs: hashes, IPs, domains, mutex, file paths, registry keys.
  4. TTPs مرتبطة بـ MITRE ATT&CK.
  5. Detection: قواعد YARA + Sigma + Suricata جاهزة للنشر.
  6. Remediation: خطوات إزالة + تصلب لمنع التكرار.
خلّصت الدرس؟

علّمه علشان تفضل عارف انت فين على السكة.