الفرق الزرقاء — الدفاعخبير100mL77
تحليل الذاكرة الجنائي مع Volatility
التقاط الذاكرة، plugins، اكتشاف rootkits، تحليل process injection
#Forensics#Volatility#Memory#Rootkit#DFIR
لماذا الذاكرة أصعب وأهم من القرص
تشبيه — شرح مبسط
تخيل أنك تحقق في جريمة في فندق. القرص هو دفتر تسجيل النزلاء — يخبرك من حجز ومن خرج، لكن لا يكشف من كان في الردهة لحظة الجريمة. الذاكرة (RAM) هي الردهة نفسها لحظة الحادثة: من كان يتحدث، أي عمليات كانت قيد التشغيل، أي اتصالات شبكية مفتوحة. هذا ما لا يستطيع المالوير إخفاءه عن الذاكرة.
في الـ DFIR الحديث، أكثر المالوير المتطورة هي fileless — لا تكتب على القرص أبداً، تعيش بالكامل في الذاكرة. هذا الدرس عن Volatility 3، الإطار المعياري لتحليل dump للذاكرة على Windows / Linux / macOS.
التقاط الذاكرة (Acquisition)
01
Windows
powershell
# WinPmem (مفتوح المصدر، Velociraptor الآن)
.\winpmem.exe -o C:\evidence\memory.raw
# Magnet RAM Capture (تجاري، GUI، صفر آثار)
# DumpIt — أبسط، single command
# Hyper-V / VMware: snapshot ثم vmss → vmem
# vmss2core أو vol3 يقرأ vmem مباشرة02
Linux
bash
# AVML — Microsoft، يعمل بدون kernel module
sudo ./avml memory.lime
# LiME (Linux Memory Extractor)
sudo insmod lime.ko "path=/evidence/mem.lime format=lime"
# /proc/kcore — حذر: قد يكون متاحاً للقراءة، يحتاج dwarf للقراءة03
السلسلة الجنائية (Chain of Custody)
SHA256 فوراً بعد الالتقاط. وقّع رقمياً. سجّل من، متى، وأي أداة. الذاكرة لا يمكن إعادة التقاطها — اللحظة فات.
Volatility 3 — الـ plugins الأساسية
bash
# تحديد البروفايل (Vol3 يفعل ذلك تلقائياً غالباً)
vol -f mem.raw windows.info
# 1. العمليات الجارية
vol -f mem.raw windows.pslist
vol -f mem.raw windows.pstree # هرمي
vol -f mem.raw windows.psscan # يكشف العمليات المخفية
# 2. الاتصالات الشبكية (مفتاح اكتشاف C2)
vol -f mem.raw windows.netscan
vol -f mem.raw windows.netstat
# 3. مكتبات DLL لكل عملية
vol -f mem.raw windows.dlllist --pid 1234
# 4. خيوط (Threads) و callstacks
vol -f mem.raw windows.threads --pid 1234
# 5. Registry hive scan
vol -f mem.raw windows.registry.hivelist
vol -f mem.raw windows.registry.printkey --key "Software\Microsoft\Windows\CurrentVersion\Run"اكتشاف Process Injection
الـ injection (T1055) هو حقن code في عملية شرعية لإخفاء النشاط. Volatility يكشفه عبر تحليل memory regions.
01
malfind — السلاح الأول
bash
vol -f mem.raw windows.malfind
# يكشف صفحات RWX غير مرتبطة بملف على القرص — عَلَم أحمر$ vol -f compromise.raw windows.malfind
Process: explorer.exe PID: 4532
VAD: 0x7ff5d0000000-0x7ff5d000ffff
Protection: PAGE_EXECUTE_READWRITE
Notes: Hexdump shows MZ header — DLL injected without LoadLibrary
[!] Injection detected
02
hollowfind
يكشف Process Hollowing (إفراغ عملية شرعية وملؤها بـ payload).
bash
vol -f mem.raw windows.hollowfind03
استخرج الـ payload
bash
vol -f mem.raw windows.dumpfiles --pid 4532 --virtaddr 0x7ff5d0000000
# تستطيع تحليله بـ binwalk / ghidra لاحقاًاستخراج الاعتمادات
bash
# hashes من LSASS dump
vol -f mem.raw windows.hashdump
vol -f mem.raw windows.lsadump
vol -f mem.raw windows.cachedump
# Mimikatz inside memory analysis
vol -f mem.raw windows.mimikatzحالة عملية: تحليل rootkit
01
مؤشر أولي
EDR رصد عملية باسم svchost.exe لكن من user context غير اعتيادي. dump الذاكرة فوراً.
02
فحص psscan vs pslist
bash
vol -f mem.raw windows.pslist > pslist.txt
vol -f mem.raw windows.psscan > psscan.txt
diff pslist.txt psscan.txt
# عمليات في psscan وليست في pslist = مخفية بـ DKOM rootkit03
فحص ssdt و callbacks
bash
vol -f mem.raw windows.ssdt # System Service Descriptor Table — kernel hooks
vol -f mem.raw windows.callbacks # kernel callbacks — مكان شائع لـ rootkits
vol -f mem.raw windows.modules # المكتبات النواة المحمّلة
vol -f mem.raw windows.modscan # عبر pool tag scan — يكشف modules مخفيةالذاكرة متطايرة
بمجرد إعادة تشغيل الجهاز، كل شيء ضاع. سياسة IR صارمة: dump الذاكرة قبل أي تفاعل مع الجهاز، حتى قبل تسجيل دخول المحقق. كل خطوة تغير الذاكرة.
الدفاع — لتسهيل التحليل لاحقاً
- فعّل Sysmon Event 1, 7, 10 (process creation, image load, lsass access)
- EDR ينبغي أن يدعم triage automatic memory capture
- نشر Velociraptor — يجمع memory artifacts من آلاف الأجهزة
- سياسة Memory Integrity (Hypervisor-protected Code Integrity) لتقليل rootkits
- اختبر playbook الـ IR شهرياً مع dump حقيقي من lab
مصادر
- Volatility 3 documentation — volatility3.readthedocs.io
- The Art of Memory Forensics — Ligh, Case, Levy, Walters
- SANS FOR508 — Advanced Incident Response, Threat Hunting
- 13Cubed YouTube — Volatility walkthroughs