Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/marcgoam/cve-2026-54121-certighost
प्रमाणीकरण और प्राधिकरणविशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणपार्श्व आंदोलनपेनिट्रेशन टेस्टिंगप्रतिकूल हमला
GitHubmarcgoam/cve-2026-54121-certighost

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2026-54121-CertiGhost

CVE-2026-54121 (Certighost) AD CS DC-प्रतिरूपण PoC। पैच किया गया SAN हैंडलिंग + MAQ-सुरक्षित खाता पुन: उपयोग।

रिपॉजिटरी देखें
10251 महीना पहलेअभी तक समीक्षित नहीं

CVE-2026-54121 (Certighost) - पैच किया हुआ फ़ोर्क

CVE-2026-54121 के लिए प्रूफ-ऑफ-कॉन्सेप्ट टूल का एक कार्यशील फ़ोर्क, जिसे Certighost के नाम से भी जाना जाता है। मूल शोध और PoC @H0j3n और @aniqfakhrul द्वारा, विस्तृत विश्लेषण:

  • https://gist.github.com/H0j3n/a5ef2609b5f2944ac2390a191a534c26.

यह फ़ोर्क SAN हैंडलिंग को ठीक करता है जो PKINIT को उन CAs पर सफल होने से रोकती थी जो अनुरोधित SAN का सम्मान करते हैं, --target-san पार्सिंग को मज़बूत करता है, और कंप्यूटर-अकाउंट हैंडलिंग को दोबारा तैयार करता है ताकि यह अब ms-DS-MachineAccountQuota को समाप्त न करे।

उपयोग

रूट के रूप में निष्पादित करें क्योंकि रोग LDAP और SMB सेवाओं को विशेषाधिकार प्राप्त पोर्ट 389 और 445 की आवश्यकता होती है।

root@kitploit:~
sudo python3 certighost.py -d playground.local -u lowpriv -p 'Password1234' --dc-ip 192.168.1.10

सफल समापन पर, लक्ष्य प्रमाणपत्र (.pfx) और Kerberos कैश (.ccache) वर्तमान कार्यशील निर्देशिका में लिखे जाते हैं।

यह स्क्रिप्ट क्या करती है

  1. एक स्थिर कंप्यूटर अकाउंट (CERTIGHOST$, पहले रन पर बनाया गया) का पुन: उपयोग करें या --computer-name के माध्यम से निर्दिष्ट एक का उपयोग करें।
  2. दो रोग लिसनर शुरू करें: पोर्ट 445 पर एक SMB/LSA सर्वर और पोर्ट 389 पर एक LDAP सर्वर।
  3. उस कंप्यूटर अकाउंट के रूप में एक प्रमाणपत्र अनुरोध भेजें, जिसमें नियंत्रित IP की ओर इशारा करने वाला एक कस्टम cdc एट्रिब्यूट (--listener के माध्यम से; वैकल्पिक, छोड़े जाने पर स्वतः पता लगाया जाता है) और लक्ष्य DC के DNS नाम को ले जाने वाला एक rmd एट्रिब्यूट एम्बेड किया गया हो।
  4. CA रोग LSA/LDAP लिसनर से वापस जुड़ता है। वे बनाए गए अकाउंट के रूप में प्रमाणित होते हैं (Netlogon के माध्यम से वास्तविक DC द्वारा सत्यापित) और CA की पूछताछ का उत्तर लक्ष्य DC की पहचान (sAMAccountName, SID, dNSHostName) के साथ देते हैं।
  5. CA DC से संबंधित एक वैध प्रमाणपत्र जारी करता है।
  6. स्क्रिप्ट .ccache और NT हैश का अनुरोध करने के लिए DC के pfx के साथ PKINIT करती है।

इस फ़ोर्क में बदलाव

1. SAN फिक्स (PKINIT को सफल बनाता है)

मूल ने प्रमाणपत्र SAN को CSR subjectAltName एक्सटेंशन और SAN:dns= अनुरोध एट्रिब्यूट दोनों में रोग कंप्यूटर के होस्टनाम से बनाया था, न कि लक्ष्य DC के FQDN से। इसलिए, एक CA पर जो अनुरोधित SAN का सम्मान करता है, जारी किया गया प्रमाणपत्र रोग अकाउंट का dNSHostName लेकर आया, जिससे PKINIT ने इसे गलत प्रिंसिपल से मैप किया और इस त्रुटि के साथ विफल रहा:

root@kitploit:~
KDC_ERR_CLIENT_NAME_MISMATCH(Reserved for PKINIT)

SAN अब लक्ष्य DC का dNSHostName (rmd_value / target_dns) उपयोग करता है, जिस पर PKINIT एक मशीन अकाउंट को मैप करता है। जारी किया गया प्रमाणपत्र अब DNS:<dc>.<domain> प्रस्तुत करता है और AS-REQ DC के रूप में पूरा होता है।

2. मज़बूत --target-san

--target-san अब केवल छोटे NAME रूप के बजाय MEEREEN, MEEREEN$, या FQDN meereen.essos.local (जो sAMAccountName या dNSHostName द्वारा मिलान किया जाता है) में से किसी को भी स्वीकार करता है।

3. कंप्यूटर-अकाउंट पुन: उपयोग (अब MAQ समाप्त नहीं होगा)

मूल हर रन पर एक नया रैंडम GHOST********$ अकाउंट बनाता था। चूँकि ms-DS-MachineAccountQuota के माध्यम से बनाए गए कंप्यूटर अकाउंट Domain Admins के स्वामित्व में होते हैं (निर्माता के नहीं), एक कम-विशेषाधिकार वाला उपयोगकर्ता उन्हें हटा नहीं सकता, इसलिए बार-बार रन करने से अनाथ अकाउंटों के साथ कोटा (डिफ़ॉल्ट 10) जल्दी समाप्त हो जाता था।

यह फ़ोर्क एक स्थिर अकाउंट (CERTIGHOST$, केवल तभी बनाया जाता है जब वह पहले से मौजूद न हो) का पुन: उपयोग करता है, इसलिए कोटा कभी नहीं बढ़ता और रनों के बीच साफ करने के लिए कुछ भी नहीं होता।

4. बचे हुए अकाउंट की चेतावनी

जब अकाउंट पहली बार बनाया जाता है, तो स्क्रिप्ट एक चेतावनी प्रिंट करती है जिसमें बताया जाता है कि इसे AD में छोड़ दिया गया है:

root@kitploit:~
[!] WARNING: computer account CERTIGHOST$ was created and is left in AD.

अकाउंट बाद के रनों पर पुन: उपयोग के लिए बना रहता है। इसे पूरी तरह से हटाने के लिए, इसे Domain Admin (ऑब्जेक्ट के स्वामी) के साथ हटाएँ:

root@kitploit:~
Get-ADComputer CERTIGHOST | Remove-ADComputer -Confirm:$false

आवश्यकताएँ

  • Python 3
  • impacket
  • cryptography, pyasn1, asn1crypto, pycryptodomex

संदर्भ

  • https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-54121
  • https://gist.github.com/H0j3n/a5ef2609b5f2944ac2390a191a534c26
  • https://github.com/aniqfakhrul/CVE-2026-54121 (मूल PoC)

अस्वीकरण

केवल अधिकृत सुरक्षा परीक्षण और शैक्षिक उद्देश्यों के लिए। इसका उपयोग केवल उन प्रणालियों के विरुद्ध करें जिनका परीक्षण करने की आपके पास स्पष्ट अनुमति है।

टूल डाउनलोड करें