الفرق الزرقاء — الدفاعخبير90mL61
Malware Analysis & RE — تفك الـ binary
Static و Dynamic و Sandboxing و Reverse Engineering
#IDA#Ghidra#Sandbox#YARA
ليه بنحلّل المالوير أصلاً؟
تشبيه — شرح مبسط
لقيت عقرب في البيت. تعمل إيه؟ تموته وخلاص؟ ده تصرّف على ادهم. الذكي يدرسه الأول: نوعه إيه؟ كام واحد زيّه ممكن يكون في البيت؟ والعلاج لو لدغ حد إيه؟ تحليل المالوير بيديك IOCs علشان تلاقي كل آثار العقرب ده في كل مكان، وTTPs علشان تكشف العقارب اللي شبهه قبل ما تلدغ.
في 2017، WannaCry ضرب 200 ألف جهاز في 150 دولة في 4 أيام. اللي أوقفه مش EDR ولا firewall — لأ، كان باحث (MalwareTech) قعد يحلّل العيّنة، لقي domain غريب في الكود، سجّله بـ 10$، وبكده فعّل kill-switch المهاجم نسي يقفله. ده تحليل المالوير الحقيقي. مش زرار في أداة.
بيئة آمنة وبس — بلاش بطولات
اوعى تفتح ملف مشبوه إلا في VM معزولة بالكامل: شبكة Host-Only أو inetsim، snapshot قبل وبعد، وبعيد خالص عن جهازك الشخصي. مرة واحدة غلط = هتدفع تمنها. ومفيش "بس هبصّ بصّة سريعة" يا نجم — VBox escape موجود من 2018.
غلطات الـ junior في تحليل المالوير
- بيفتح العيّنة على الجهاز الشخصي "بس عشان يشوف" — كده ضيّعت الـ chain of custody وحرقت جهازك في نفس الوقت.
- بيحمّل العيّنة على VirusTotal لعيّنة targeted attack — APT بيراقبوا VT! كده انت بتقولّهم "اتكشفت، غيّروا الـ TTPs".
- بيشغّل الـ binary بدون snapshot — الـ ransomware بيشكرك على الجهاز.
- بينسى يعطّل shared folders والـ clipboard — والمالوير بيقفز من الـ VM للـ host بكل بساطة.
إعداد المعمل
- FLARE-VM — Windows VM جاهزة بكل أدوات التحليل.
- REMnux — Linux distro متخصصة.
- INetSim / FakeNet-NG — لمحاكاة الإنترنت ضمن VM.
- VBoxManage snapshot قبل كل تحليل.
- عطّل guest additions و shared folders و clipboard.
- اعتبر أن البرمجية ستحاول كشف الـ VM — اختبر في بيئة قريبة من الـ bare-metal.
Static Analysis — التحليل الساكن
الخطوات الأولى
01
بصمة سريعة
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/files02
تحليل الـ 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 strings03
فك الـ packer
معظم البرمجيات الخبيثة مغلّفة (UPX, Themida, VMProtect).
unpacking
upx -d packed.exe # UPX فقط
# للبقية: dump من الذاكرة
x64dbg → run until OEP → Scylla dump
# أو
unipacker sample.exe04
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 ViewerSandbox آلي
- 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 أو اختبار سيناريوهات.
بناء المهارة
- crackmes.one — تمارين تدرّجية.
- Practical Malware Analysis (Sikorski & Honig) — الكتاب المرجعي.
- OpenSecurityTraining2 — كورسات RE مجانية ممتازة.
- SANS FOR-610 (REM) — التدريب الاحترافي.
Reporting — كتابة تقرير محترف
- Executive summary — نصف صفحة لغير التقنيين. لو المدير ما فهمش، التقرير فشل مهما كان عميق.
- Technical analysis — متى وكيف وماذا يفعل.
- IOCs: hashes, IPs, domains, mutex, file paths, registry keys.
- TTPs مرتبطة بـ MITRE ATT&CK.
- Detection: قواعد YARA + Sigma + Suricata جاهزة للنشر.
- Remediation: خطوات إزالة + تصلب لمنع التكرار.
الخلاصة الناشفة
تحليل المالوير مش هواية. كل ساعة بتقعدها على عيّنة، فيه 10 شركات تانية بتنضرب بنفس العيّنة دي. اكتبها على ظهر إيدك: شغلك إنك تطلّع IOCs و Sigma rules ينتشروا عند أكتر مدافعين ممكن — قبل ما الـ APT يبدّل الـ infrastructure ويختفي. اللي بيقعد على العيّنة شهر علشان "يفهمها كاملة" قبل ما يطلّع IOC، ده مش باحث، ده هاوي. والـ adversary اختفى من زمان.