الحركة الجانبية: Pass-the-Hash وPass-the-Ticket
تعرّفوا إلى كيفية إعادة المهاجمين استخدام تجزئات NTLM وتذاكر Kerberos للتحرك جانبيًا من دون معرفة كلمات المرور ذات النص الواضح، وإلى وسائل الدفاع التي توقفهم.
الحركة الجانبية: Pass-the-Hash وPass-the-Ticket درس مجاني في Cloud & IT Cert Prep على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cloud & IT Cert Prep، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cloud & IT Cert Prep 4 دروس في المجموع.
الحركة الجانبية: الانتشار عبر الشبكة
تشير الحركة الجانبية إلى الأساليب التي يستخدمها المهاجمون للانتقال تدريجيًا عبر الشبكة بعد إنشاء موطئ قدم أولي، بهدف الوصول إلى أهداف ذات قيمة أعلى مثل وحدات تحكم النطاق وقواعد البيانات ومحطات عمل المسؤولين. وعلى خلاف الوصول الأولي (الذي يستهدف عادةً نقطة نهاية واحدة)، تستغل الحركة الجانبية علاقات الثقة بين الأنظمة — مثل آليات المصادقة وبيانات الاعتماد المشتركة واتصال الشبكة والأدوات الإدارية — التي يعتمد عليها المستخدمون الشرعيون يوميًا. وتتيح الحركة الجانبية الفعالة لحساب واحد منخفض الصلاحيات تم اختراقه الوصول في نهاية المطاف إلى كل نظام في البيئة.
كيف تعمل مصادقة Windows: NTLM
يُعد NTLM (NT LAN Manager) بروتوكول مصادقة قديمًا في Windows، ويعتمد على آلية التحدي والاستجابة. عند مصادقة عميل لدى خادم، يرسل الخادم تحديًا عشوائيًا؛ ويرد العميل عن طريق تجزئة التحدي باستخدام تجزئة NT الخاصة بالمستخدم (وهي تجزئة ثابتة مشتقة من كلمة المرور). ويتمثل العيب التصميمي الحرج في أن تجزئة NT نفسها تكفي للمصادقة، ولا يلزم استخدام كلمة المرور. تُخزَّن تجزئة NT في قاعدة بيانات Security Account Manager (SAM) على محطات العمل وفي NTDS.DIT على وحدات تحكم النطاق. وإذا حصل المهاجم على تجزئة NT، فيمكنه المصادقة باعتباره ذلك المستخدم من دون معرفة كلمة المرور مطلقًا.
# NT hash example: MD4 of Unicode password
# Password 'Password123' -> NT hash: 58a478135a93ac3bf058a5ea0e8fdb71
# This hash alone is sufficient for NTLM authentication
# An attacker with the hash can authenticate to any service accepting NTLMPass-the-Hash (PtH): المصادقة دون كلمات مرور
يُعد Pass-the-Hash (PtH) أسلوب هجوم يستخدم فيه المهاجم تجزئة NTLM تم الحصول عليها لاعتماد نفسه على أنظمة أخرى دون معرفة كلمة المرور النصية الأصلية. بعد اختراق أحد الأنظمة واستخراج التجزئات من الذاكرة (LSASS) أو قاعدة بيانات SAM، يستبدل المهاجم مواد بيانات الاعتماد الخاصة به بالتجزئة المسروقة في طلبات المصادقة. ويُعد هذا الأمر بالغ الخطورة بصفة خاصة، لأن كلمات مرور مسؤولي النظام المحليين المشتركة (وهي شائعة في البيئات التي لا تستخدم LAPS) تعني أن تجزئة واحدة يمكن أن تتيح اختراق مئات الأجهزة أو آلافها. وتعمل أدوات مثل Mimikatz وImpacket's psexec.py وCrackMapExec على أتمتة هجمات PtH.
# PtH attack using Impacket's psexec (attacker tool - for understanding defenses)
# psexec.py -hashes :58a478135a93ac3bf058a5ea0e8fdb71 administrator@192.168.1.100
# This grants an interactive shell on 192.168.1.100 WITHOUT knowing the password
# Using only the NTLM hash extracted from a previously compromised systemالحماية من Pass-the-Hash
تقلل عدة إجراءات تخفيفية من فعالية هجمات PtH: Local Administrator Password Solution (LAPS) — أداة Microsoft التي تعيّن كلمات مرور فريدة ومتغيرة لمسؤولي النظام المحليين لكل جهاز، بحيث لا تتيح التجزئة المسروقة من جهاز واحد سوى فتح ذلك الجهاز؛ Credential Guard (في Windows 10/11) — يستخدم أمانًا قائمًا على المحاكاة الافتراضية لعزل LSASS داخل بيئة آمنة لا يمكن استخراج التجزئات منها؛ تعطيل NTLM لصالح Kerberos حيثما أمكن؛ تقييد الوصول الإداري من خلال محطات عمل الوصول ذي الامتيازات (PAWs) ونماذج الإدارة المتدرجة؛ ومجموعة الأمان Protected Users في Active Directory، التي تمنع التخزين المؤقت للتجزئات لحسابات أعضائها.
# Check if LAPS is deployed on a domain
# Look for the ms-Mcs-AdmPwd attribute on computer objects
Get-ADComputer -Filter * -Properties ms-Mcs-AdmPwd |
Where {$_.'ms-Mcs-AdmPwd' -ne $null} |
Select-Object Name, 'ms-Mcs-AdmPwd'نظرة عامة على Kerberos: كيفية عمل التذاكر
يُعد Kerberos بروتوكول المصادقة الافتراضي في بيئات Active Directory، ويتجنب إرسال كلمات المرور أو التجزئات عبر الشبكة باستخدام تذاكر مشفرة. وتتم العملية كما يلي: (1) يصادق العميل لدى Key Distribution Center (KDC) — وهو دور تؤديه وحدة تحكم النطاق — ويتلقى Ticket Granting Ticket (TGT) مشفرة باستخدام تجزئة حساب KRBTGT؛ (2) عندما يحتاج العميل إلى الوصول إلى خدمة، يقدّم TGT للحصول على Service Ticket (TGS/ST) مشفرة باستخدام مفتاح الخدمة المستهدفة؛ (3) يقدّم العميل تذكرة الخدمة إلى الهدف، الذي يتحقق من صحتها دون الاتصال بـ KDC. ويبلغ العمر الافتراضي للتذاكر 10 ساعات.
# View current Kerberos tickets on Windows
klist
# Output shows:
# Ticket cache: API:...
# Server: krbtgt/DOMAIN.COM
# Encryption type: AES-256
# Expiration date: <timestamp>Pass-the-Ticket (PtT): سرقة تذاكر Kerberos
يُعد Pass-the-Ticket (PtT) النظير الخاص بـ Kerberos لهجوم Pass-the-Hash: يستخرج المهاجم تذكرة Kerberos صالحة من ذاكرة نظام مخترق ويستوردها إلى جلسته الخاصة للمصادقة باعتباره مالك التذكرة. تُخزَّن تذاكر Kerberos في الذاكرة على Windows، ويمكن استخراجها باستخدام الأمرين Mimikatz's kerberos::list وkerberos::ptt. وتُعد TGTs المسروقة الأعلى قيمة، إذ يمكن استخدامها لطلب تذاكر خدمة لأي خدمة يمكن لمالك التذكرة الوصول إليها. أما Service Tickets (TGS) المسروقة فهي محدودة بدرجة أكبر — إذ لا تمنح سوى الوصول إلى الخدمة المحددة التي أُصدرت لها.
# PtT attack: export and import tickets with Mimikatz
# On compromised system:
# mimikatz# kerberos::list /export <- dumps all tickets to .kirbi files
# On attacker system:
# mimikatz# kerberos::ptt ticket.kirbi <- injects stolen ticket
# Now authenticated as the ticket's owner for its serviceOver-Pass-the-Hash: تحويل التجزئة إلى تذكرة
يربط Over-Pass-the-Hash (oPtH)، الذي يُسمى أيضًا Pass-the-Key، بين سرقة تجزئة NT والحصول على تذكرة Kerberos. يستخدم المهاجم تجزئة NT أو مفتاح AES مسروقًا لـ طلب TGT لـ Kerberos من وحدة تحكم النطاق، حتى من دون معرفة كلمة المرور النصية. ويحوّل هذا الأسلوب التجزئة المسروقة إلى TGT كاملة لـ Kerberos، مما يوفر كل مرونة هجمات PtT. وتكمن قيمة هذا الأسلوب في أن العديد من المؤسسات عطّلت NTLM لصالح Kerberos — إذ يتيح oPtH نجاح الهجمات المعتمدة على التجزئة في البيئات التي تستخدم Kerberos فقط. وتنفذ Mimikatz هذا الأسلوب باستخدام sekurlsa::pth.
بروتوكولات الحركة الجانبية: SMB وWMI وRDP
يستخدم المهاجمون عدة بروتوكولات للتحرك جانبيًا باستخدام بيانات الاعتماد أو التذاكر المسروقة: يتيح SMB (Server Message Block) تنفيذ الأوامر عن بُعد عبر PsExec، كما يوفر الوصول إلى الملفات عن بُعد وإنشاء الخدمات؛ ويتيح WMI (Windows Management Instrumentation) تنفيذ الأوامر عن بُعد، ويُستخدم على نطاق واسع من المسؤولين والمهاجمين على حد سواء بسبب انتشاره وثغرات التسجيل؛ ويوفر RDP (Remote Desktop Protocol) جلسة سطح مكتب تفاعلية؛ بينما يتيح WinRM/PowerShell Remoting تنفيذ أوامر PowerShell على الأنظمة البعيدة. وينبغي للمدافعين تحديد خط أساس للأنظمة التي تستخدم هذه البروتوكولات بشكل شرعي، وإطلاق تنبيهات عند رصد أنماط استخدام شاذة.
# Detection: look for unusual SMB authentication from workstations
# Windows Security Event ID 4624: successful logon
# Windows Security Event ID 4648: explicit credential use
# Splunk query:
# index=windows EventCode=4624 LogonType=3 WorkstationName!='DOMAIN\server*'
# NOT [whitelist of servers]
# | stats count by Computer, AccountName, IpAddressBloodHound: تصور مسارات الهجوم
يُعد BloodHound أداة مفتوحة المصدر يستخدمها أعضاء الفرق الحمراء والمدافعون على حد سواء لتصور مسارات تصعيد الامتيازات والحركة الجانبية في Active Directory. وتجمع الأداة بيانات العلاقات (من عضو في أي مجموعة، ومن يملك حقوق المسؤول على أي جهاز، وأي الحسابات تم تمكين التفويض لها) وتعرضها في صورة رسم بياني، حيث تمثل العقد المستخدمين والأجهزة والمجموعات، وتمثل الحواف الأذونات. ويمكن لاستعلام BloodHound المسمى 'Find Shortest Paths to Domain Admins' أن يوضح للمهاجمين — وللمدافعين — بالضبط تسلسل الاختراقات الذي قد يؤدي إلى السيطرة الكاملة على النطاق. ويستخدم المدافعون BloodHound لإزالة مسارات الامتياز غير الضرورية قبل أن يستغلها المهاجمون.
# Run BloodHound collector (SharpHound) on domain
# SharpHound.exe -c All --outputdirectory C:\Temp
# Outputs JSON files imported into BloodHound Neo4j database
# Key queries for defenders:
# - Find all Domain Admins
# - Find Shortest Paths to Domain Admins
# - Find Principals with DCSync Rightsاكتشاف الحركة الجانبية
يتطلب اكتشاف الحركة الجانبية ربط الأحداث عبر أنظمة متعددة. وتشمل إشارات الاكتشاف الرئيسية: معرّف حدث Windows 4648 (تسجيل الدخول باستخدام بيانات اعتماد صريحة — وهو شائع في PtH/PtT)؛ معرّف الحدث 4769 (طلب تذكرة خدمة Kerberos — ويكون غير معتاد عند طلب تذاكر لخدمات نادرًا ما يتم الوصول إليها)؛ معرّف الحدث 7045/4697 (تثبيت خدمة جديدة — وهو شائع في الحركة الجانبية القائمة على PsExec)؛ الاستخدام غير المعتاد للأدوات الإدارية من محطات عمل غير إدارية (wmic.exe وpsexec.exe)؛ وحالات الشذوذ في مصادقة SMB عندما تصادق محطات العمل لدى محطات عمل أخرى (إذ تنتقل حركة المرور الطبيعية من محطات العمل إلى الخوادم، وليس من جهاز إلى آخر مماثل). وتلتقط منصات EDR ذات إمكانات الاكتشاف السلوكي هذه الأنماط عبر الشبكة.
نموذج الإدارة المتدرجة
يمنع نموذج الإدارة المتدرجة (وهو تصميم Active Directory الموصى به من Microsoft) سرقة بيانات الاعتماد من طبقة واحدة من اختراق الطبقات الأعلى: Tier 0 (طبقة التحكم في الهوية — وحدات تحكم النطاق وAzure AD) — لا يمكن إدارة هذه الأنظمة إلا بواسطة حسابات مسؤولي Tier 0، ولا تسجّل هذه الحسابات الدخول مطلقًا إلى أنظمة Tier 1 أو Tier 2؛ Tier 1 (الخوادم والخدمات السحابية) — حسابات مسؤولي Tier 1 مخصصة؛ Tier 2 (محطات العمل والأجهزة) — حسابات مكتب الدعم والحسابات الإدارية العادية. ومن خلال عزل بيانات الاعتماد ضمن طبقات، لا يمكن استخدام حساب مسؤول محطة عمل مخترقة لمهاجمة وحدات تحكم النطاق. وهذا يواجه مباشرةً الحركة الجانبية باستخدام PtH وPtT.
اختبار سريع
اختبر مدى فهمكم لمفاهيم CompTIA Security+ (SY0-701) الواردة في هذا الدرس.
مراجعة الدرس
تعلّمتم في هذا الدرس ما يلي: يستغل Pass-the-Hash تصميم NTLM الذي يعامل التجزئة كبيانات اعتماد — إذ تكفي تجزئة NT للمصادقة من دون كلمة المرور، وتتم مواجهة ذلك أساسًا باستخدام LAPS وCredential Guard، ويسرق Pass-the-Ticket تذاكر Kerberos الصالحة من الذاكرة للمصادقة باعتباركم مستخدمًا آخر، وتكون تذاكر TGT المسروقة قوية بشكل خاص لأنها تستطيع إنشاء تذاكر خدمة لأي خدمة، كما أن نموذج الإدارة متعدد المستويات يمنع سرقة بيانات الاعتماد في أحد المستويات من تمكين الحركة الجانبية إلى مستويات ذات امتيازات أعلى. بعد ذلك، سنستكشف هجمات Kerberoasting وGolden Ticket التي تستهدف تطبيق Kerberos في Active Directory.
الأسئلة الشائعة
هل درس «الحركة الجانبية: Pass-the-Hash وPass-the-Ticket» مجاني؟
نعم — نص درس «الحركة الجانبية: Pass-the-Hash وPass-the-Ticket» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cloud & IT Cert Prep، انتقل إلى CoddyKit PRO. تتضمن دورة Cloud & IT Cert Prep 4 دروس في المجموع.
ماذا ستتعلم في «الحركة الجانبية: Pass-the-Hash وPass-the-Ticket»؟
تعرّفوا إلى كيفية إعادة المهاجمين استخدام تجزئات NTLM وتذاكر Kerberos للتحرك جانبيًا من دون معرفة كلمات المرور ذات النص الواضح، وإلى وسائل الدفاع التي توقفهم. تتمرن على Cloud & IT Cert Prep مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cloud & IT Cert Prep؟
لا تُشترط خبرة سابقة. Cloud & IT Cert Prep على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «الحركة الجانبية: Pass-the-Hash وPass-the-Ticket»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cloud & IT Cert Prep هذا؟
نعم. كل درس في Cloud & IT Cert Prep يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- دورة حياة APT: من الوصول الأولي إلى الاستمرارية
- الحركة الجانبية: Pass-the-Hash وPass-the-Ticket
- هجمات Kerberoasting وGolden Ticket
- إطار MITRE ATT&CK للكشف والاستجابة