ADCS-ESC1
السلام عليكم ورحمة الله وبركاته
الحمد لله على جميع نِعمه علينا ما علمنا منها وما لم نعلم حمداً والصلاة والسلام على نبينا محمد اشرف الخلق والمرسلين, اما بعد:
مقدمة:
في هذي المقالة راح نتطرق لي اول تكنيك Domain Privilege Escalation عن طريق الـActive Directory Certificate Service
ماهي الـActive Directory Service Certificate :
بإختصار يعتبر الـADCS ميزة من مزايا الوندوز سيرفر وتمكن الـDomain Admins من انشاء شهادات لتحكم في صلاحية المستخدمين والأجهزة في بيئة الـActive Directory بحيث أن من الممكن السماح لقروب معين او جهاز طلب شهادة عن طريق الـCertificate Authority (CA) لتمكنه من استخدام خدمة او الدخول لموقع محدد او حتى فك تشفير ملف معين وغيره الكثير.
ماهو تكنيك ESC-1:
في هذا التكينك راح يتم إستغلال قالب لشهادة معينه عن طريق الـSubject Alternative Name (SAN) الـSAN بتسمح لي المهاجم بطلب شهادة لشخص اخر مثل الـDomain Admins عن طريق تعويض الـUser Principal Name(UPN) لكن هذي تطلب شروط يجب ان يتم وضعها في القالب الخاص بالشهادة:
1- يجب ان تكون خلية msPKI-Certificate-Name-Flag تحمل قيمة CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT وهذا اللي راح يساعدنا في استغلال الـSubject Alternative Name بحيث نستطيع وضع مستخدم اخر لطلب شهادته (:
2- يجب ان تكون خلية Extended Key Usage(EKU) ضمن احد هذي الخيارات PKINIT Client Authentication, Smart Card Logon, Any Purpose, or no EKU
3- يجب ان يكون القروب المتواجد فيه ضمن الـEnrollment Rights
الأدوات المستخدمة: Rubeus,PowerView,Certify
الشرح:
في بداية الأمر انا داخل بالمستخدم jehad كما هو موضح بالأسفل:
الان راح ننفذ هذا الامر عن طريق اداة Certify :
.\Certify.exe find
هذا الامر راح يبحث لنا عن جميع القوالب الخاصة بالشهادات ومعلوماتها ايضا ومن القروبات اللي يمكنك طلب شهادة
نلاحظ مع بعض في الصورة السابقة ان القالب اللي إسمه ESC1-Vulnerable يحمل جميع الشروط اللتي تم ذكرها مسبقا
بما تم التعرف على ان القالب ESC1-Vulnerable مصاب يجب استخراج الـSID الخاص بالمستخدم اللي راح يتم استهدافه حتى نطلب شهادة بصلاحيته والمستخدم اللي راح نستهدفه Domain Admins
عن طريق هذا الامر يتم إستخراج الـSID:
get-netuser -identity Administrator | select objectsid
الان راح ننفذ هذا الامر عن طريق اداة Certify حتى نطلب شهادة بصلاحية الـAdministrator :
.\Certify.exe request /ca:WIN-GAA5SPNFAL9.vulnerable.local\ca-vulnerable /altname:administrator /sidextension:S-1-5-21-2470528004-2415548218-3837842802-500 /template:ESC1-Vulnerable
الان تم انشاء Certificate بصلاحية الـAdministrator لكن بصيغة pem لكن لا نستطيع استخدامها نحتاج نحولها الى صيغة pfx عن طريق اداة openssl :
openssl pkcs12 -in Administrator.pem -keyex -CSP "Microsoft Enhanced Cryptographic Provider v1.0" -export -out Administrator.pfx
الان راح نستخدم اداة Rubeus حتى نطلب الـTGT الخاصة بالـAdministrator عن طريق الشهادة
بعد تم طلب الـTGT وحقنها في الميموري اصبحنا نملك صلاحيات الـDomain Admins خلونا ننفذ امر directory listing على الـDomain Controller حتى نثبت ذلك.
وصلنا لنهاية المقالة
شاكر لكم.
التعليقات (0)
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !