AD CS Domain Escalation
यह पोस्ट के उन्नति तकनीक खंडों का सारांश है:
गलत रूप से कॉन्फ़िगर किए गए प्रमाणपत्र टेम्पलेट - ESC1
स्पष्टीकरण
गलत रूप से कॉन्फ़िगर किए गए प्रमाणपत्र टेम्पलेट - ESC1 का विवरण
उच्च अधिकार वाले उपयोगकर्ताओं को उचित अधिकार उपलब्ध कराए गए हैं उद्यम CA द्वारा।
प्रबंधक स्वीकृति की आवश्यकता नहीं है।
अधिकृत कर्मचारियों के द्वारा हस्ताक्षर की आवश्यकता नहीं है।
प्रमाणपत्र टेम्पलेट पर सुरक्षा विवरण अत्यधिक अनुमति देते हैं, जिससे उच्च अधिकार वाले उपयोगकर्ता अधिकार प्राप्त कर सकते हैं।
प्रमाणपत्र टेम्पलेट को प्रमाणीकरण को सुविधा प्रदान करने के लिए कॉन्फ़िगर किया गया है:
विस्तारित कुंजी उपयोग (EKU) पहचानकर्ता जैसे क्लाइंट प्रमाणीकरण (OID 1.3.6.1.5.5.7.3.2), PKINIT क्लाइंट प्रमाणीकरण (1.3.6.1.5.2.3.4), स्मार्ट कार्ड लॉगऑन (OID 1.3.6.1.4.1.311.20.2.2), कोई उद्देश्य (OID 2.5.29.37.0), या कोई EKU नहीं (SubCA) शामिल हैं।
अनुरोधकर्ताओं को प्रमाणपत्र साइनिंग अनुरोध (CSR) में subjectAltName शामिल करने की अनुमति दी गई है:
यदि मौजूद है, तो प्रमाणपत्र में पहचान के लिए Active Directory (AD) subjectAltName (SAN) को प्राथमिकता देता है। इसका मतलब है कि एक CSR में SAN को निर्दिष्ट करके, किसी भी उपयोगकर्ता (जैसे, डोमेन प्रशासक) का प्रतिनिधित्व करने के लिए प्रमाणपत्र का अनुरोध किया जा सकता है। यह दर्शाता है कि क्या अनुरोधकर्ता द्वारा SAN को निर्दिष्ट किया जा सकता है, प्रमाणपत्र टेम्पलेट के AD ऑब्जेक्ट के माध्यम से
mspki-certificate-name-flag
संपत्ति के माध्यम से। यह संपत्ति एक बिटमास्क है, औरCT_FLAG_ENROLLEE_SUPPLIES_SUBJECT
झंडा की उपस्थिति अनुरोधकर्ता द्वारा SAN की निर्दिष्टि की अनुमति देती है।
उपरोक्त कॉन्फ़िगरेशन उच्च अधिकार वाले उपयोगकर्ताओं को किसी भी चयनित SAN के साथ प्रमाणपत्र अनुरोध करने की अनुमति देता है, जिससे केरबेरोस या एसचैनल के माध्यम से किसी भी डोमेन प्रिंसिपल के रूप में प्रमाणीकरण संभव होता है।
यह सुविधा कभी-कभी HTTPS या होस्ट प्रमाणपत्रों की त्वरित उत्पादन का समर्थन करने के लिए सक्षम की जाती है, उत्पादों या डिप्लॉयमेंट सेवाओं द्वारा, या समझौते की कमी के कारण।
इसे ध्यान में रखा गया है कि इस विकल्प के साथ प्रमाणपत्र बनाने पर चेतावनी दी जाती है, जो एक मौजूदा प्रमाणपत्र टेम्पलेट (जैसे WebServer
टेम्पलेट, जिसमें CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT
सक्षम है) की तरह नहीं होता है, और फिर उसे डुप्लिकेट किया जाता है और फिर संशोधित किया जाता है एक प्रमाणीकरण OID शामिल करने के लिए।
दुरुपयोग
विकल्प प्रमाणपत्र टेम्पलेट्स को खोजने के लिए आप निम्नलिखित को चला सकते हैं:
इस कमजोरी का दुरुपयोग करके एडमिनिस्ट्रेटर की भूमिका अभिमानित करने के लिए निम्नलिखित को चलाया जा सकता है:
फिर आप उत्पन्न प्रमाणपत्र को .pfx
प्रारूप में परिवर्तित कर सकते हैं और इसका उपयोग करके Rubeus या certipy का उपयोग करके प्रमाणीकरण कर सकते हैं:
Windows बाइनरी "Certreq.exe" और "Certutil.exe" का उपयोग PFX उत्पन्न करने के लिए किया जा सकता है: https://gist.github.com/b4cktr4ck2/95a9b908e57460d9958e8238f85ef8ee
AD Forest के कॉन्फ़िगरेशन स्कीमा में प्रमाणपत्र टेम्प्लेट की जाँच, विशेष रूप से उनमें से जो मंजूरी या हस्ताक्षर की आवश्यकता नहीं है, क्लाइंट प्रमाणीकरण या स्मार्ट कार्ड लॉगऑन EKU वाले होते हैं, और CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT
फ्लैग सक्षम हो, तो निम्नलिखित LDAP क्वेरी चलाकर किया जा सकता है:
गलत रूप से कॉन्फ़िगर किए गए प्रमाणपत्र टेम्प्लेट - ESC2
स्पष्टीकरण
दूसरे दुरुपयोग स्थिति में पहले वाले का एक रूपांतरण है:
उच्च-अधिकारित उपयोगकर्ताओं को उद्यम CA द्वारा पंजीकरण अधिकार प्रदान किए जाते हैं।
प्रबंधक स्वीकृति की आवश्यकता निषेधित की जाती है।
अधिकृत हस्ताक्षरों की आवश्यकता छूट दी जाती है।
प्रमाणपत्र टेम्पलेट पर अत्यधिक अनुमतिपूर्ण सुरक्षा विवरणकारी, जो प्रमाणपत्र पंजीकरण अधिकार उच्च-अधिकारित उपयोगकर्ताओं को प्रदान करता है।
प्रमाणपत्र टेम्पलेट को किसी भी उद्देश्य EKU या कोई EKU शामिल किया गया है।
किसी भी उद्देश्य EKU एक प्रमाणपत्र को प्राप्त करने की अनुमति देता है एक हमलावर द्वारा किसी भी उद्देश्य, सहित क्लाइंट प्रमाणीकरण, सर्वर प्रमाणीकरण, कोड साइनिंग, आदि। इसी तकनीक का उपयोग ESC3 के लिए इस स्थिति का शोषण करने के लिए किया जा सकता है।
कोई EKU वाले प्रमाणपत्र जो उप-CA प्रमाणपत्र के रूप में कार्य करते हैं, किसी भी उद्देश्य के लिए शोषित किए जा सकते हैं और नए प्रमाणपत्रों के लिए हस्ताक्षर करने के लिए भी उपयोग किए जा सकते हैं। इसलिए, एक हमलावर उप-CA प्रमाणपत्र का उपयोग करके नए प्रमाणपत्रों में विभिन्न EKUs या क्षेत्रों को निर्दिष्ट कर सकता है।
हालांकि, डोमेन प्रमाणीकरण के लिए नए प्रमाणपत्र कार्य करेंगे अगर उप-CA को NTAuthCertificates
ऑब्जेक्ट द्वारा विश्वसनीय नहीं माना जाता है, जो कि डिफ़ॉल्ट सेटिंग है। फिर भी, एक हमलावर नए प्रमाणपत्रों को किसी भी EKU और विभिन्न प्रमाणपत्र मानों के लिए निर्दिष्ट कर सकता है। इन्हें संभावित रूप से दुरुपयोग के लिए एक व्यापक उद्देश्यों के लिए (जैसे, कोड साइनिंग, सर्वर प्रमाणीकरण, आदि) और नेटवर्क में अन्य एप्लिकेशनों के लिए महत्वपूर्ण प्रभाव हो सकते हैं जैसे SAML, AD FS, या IPSec।
इस स्थिति के भीतर मेल खाने वाले टेम्पलेटों की जांच करने के लिए AD वन्य कॉन्फ़िगरेशन स्कीमा में, निम्नलिखित LDAP क्वेरी चलाई जा सकती है:
गलत रूप से कॉन्फ़िगर किए गए इन्रोलमेंट एजेंट टेम्प्लेट - ESC3
स्पष्टीकरण
यह परिदृश्य पहले और दूसरे के समान है, लेकिन एक विभिन्न EKU (सर्टिफिकेट रिक्वेस्ट एजेंट) का दुरुपयोग कर रहा है और 2 विभिन्न टेम्प्लेट है (इसलिए इसमें 2 सेट की आवश्यकताएं हैं),
सर्टिफिकेट रिक्वेस्ट एजेंट EKU (OID 1.3.6.1.4.1.311.20.2.1), जिसे माइक्रोसॉफ्ट दस्तावेज़ में इन्रोलमेंट एजेंट के रूप में जाना जाता है, किसी प्रधान को दूसरे उपयोगकर्ता के लिए सर्टिफिकेट के लिए रजिस्टर करने की अनुमति देता है।
“इन्रोलमेंट एजेंट” ऐसे एक टेम्प्लेट में रजिस्टर करता है और परिणामस्वरूप सर्टिफिकेट का उपयोग करके दूसरे उपयोगकर्ता के लिए CSR को-साइन करता है। फिर यह को-साइन किए गए CSR को सीए को भेजता है, जो एक टेम्प्लेट में रजिस्टर होता है जो “किसी दूसरे के लिए रजिस्टर करने की अनुमति देता है”, और सीए एक सर्टिफिकेट जो “दूसरे” उपयोगकर्ता का है के साथ प्रतिसाद देता है।
आवश्यकताएं 1:
उच्च-अधिकारी उपयोगकर्ताओं को उच्च-अधिकारी सीए द्वारा इन्रोलमेंट अधिकार प्रदान किए जाते हैं।
प्रबंधक स्वीकृति के लिए आवश्यकता छूट दी गई है।
अधिकृत हस्ताक्षर के लिए कोई आवश्यकता नहीं है।
सर्टिफिकेट टेम्प्लेट का सुरक्षा विवरण अत्यधिक अनुमति देता है, जिससे उच्च-अधिकारी उपयोगकर्ताओं को इन्रोलमेंट अधिकार प्रदान किए जाते हैं।
सर्टिफिकेट टेम्प्लेट में सर्टिफिकेट रिक्वेस्ट एजेंट EKU शामिल है, जो दूसरे प्रधानों के लिए अन्य सर्टिफिकेट टेम्प्लेट का अनुरोध करने की अनुमति देता है।
आवश्यकताएं 2:
उच्च-अधिकारी सीए उच्च-अधिकारी उपयोगकर्ताओं को इन्रोलमेंट अधिकार प्रदान करता है।
प्रबंधक स्वीकृति को छोड़ दिया गया है।
टेम्प्लेट का स्कीमा संस्करण या 1 है या 2 से अधिक है, और यह एक एप्लिकेशन पॉलिसी इश्यूअंस आवश्यकता निर्दिष्ट करता है जो सर्टिफिकेट रिक्वेस्ट एजेंट EKU की आवश्यकता है।
सर्टिफिकेट टेम्प्लेट में परिभाषित एक EKU डोमेन प्रमाणीकरण की अनुमति देता है।
सीए पर इन्रोलमेंट एजेंटों के लिए प्रतिबंध लागू नहीं है।
दुरुपयोग
आप इस स्थिति का दुरुपयोग करने के लिए Certify या Certipy का उपयोग कर सकते हैं:
उपयोगकर्ता जिन्हें एनरोलमेंट एजेंट सर्टिफिकेट प्राप्त करने की अनुमति है, उन टेम्पलेट्स में जिनमें एनरोलमेंट एजेंट्स को नामांकित करने की अनुमति है, और जिनके पक्ष में एनरोलमेंट एजेंट कार्रवाई कर सकता है, उन्हें उद्यम CA द्वारा प्रतिबंधित किया जा सकता है। इसे certsrc.msc
स्नैप-इन खोलकर, CA पर दायाँ क्लिक करके, संपत्तियों पर क्लिक करके, और फिर “एनरोलमेंट एजेंट्स” टैब पर नेविगेट करके प्राप्त किया जा सकता है।
हालांकि, यह दर्जनीय है कि CA के लिए डिफ़ॉल्ट सेटिंग “एनरोलमेंट एजेंट्स को प्रतिबंधित न करें” है। जब एनरोलमेंट एजेंट्स पर प्रतिबंध व्यवस्थापकों द्वारा सक्षम किया जाता है, तो इसे “एनरोलमेंट एजेंट्स को प्रतिबंधित करें” पर सेट करने पर भी, डिफ़ॉल्ट विन्यास अत्यंत अनुमोदनशील रहता है। यह सभी को सभी टेम्पलेट्स में नामांकित होने की अनुमति देता है जैसे कोई भी।
संवेदनशील सर्टिफिकेट टेम्पलेट एक्सेस नियंत्रण - ESC4
व्याख्या
सर्टिफिकेट टेम्पलेट्स पर सुरक्षा विवरण निर्धारित करता है कि टेम्पलेट के संबंध में विशिष्ट AD मुख्य किस प्रमाणों को पास करते हैं।
यदि किसी हमलावर को अनुमतियाँ होती हैं कि वह एक टेम्पलेट को बदल सकता है और पूर्व खंडों में विस्तार से वर्णित किसी भी शोषणीय गलतियों को स्थापित कर सकता है, तो विशेषाधिकार बढ़ाया जा सकता है।
सर्टिफिकेट टेम्पलेट्स के लिए लागू योग्य अनुमतियाँ में शामिल हैं:
मालिक: वस्तु पर नियंत्रण की निर्देशिका देता है, जिससे किसी भी विशेषताओं को संशोधित करने की क्षमता होती है।
पूर्ण नियंत्रण: वस्तु पर पूर्ण अधिकार देता है, जिसमें किसी भी विशेषताओं को संशोधित करने की क्षमता होती है।
लेखनमालिका: वस्तु के मालिक को बदलने की अनुमति देता है जिसे हमलावर के नियंत्रण में एक मुख्य हो।
लेखन डेकल: पहुंच नियंत्रणों को समायोजित करने की अनुमति देता है, जिससे हमलावर को पूर्ण नियंत्रण मिल सकता है।
लेखन संपत्ति: किसी भी वस्तु गुणों को संपादित करने की अनुमति देता है।
दुरुपयोग
एक पिछले जैसे एक privesc का उदाहरण:
ESC4 एक उपयोगकर्ता के पास सर्टिफिकेट टेम्पलेट पर लेखन अधिकार होने पर होता है। इसे उदाहरण के रूप में उपयोग किया जा सकता है कि सर्टिफिकेट टेम्पलेट की विन्यास को ओवरराइट करने के लिए जिससे टेम्पलेट ESC1 के लिए विकल्पी हो सकता है।
जैसा कि हम ऊपर के पथ में देख सकते हैं, केवल JOHNPC
के पास ये अधिकार हैं, लेकिन हमारे उपयोगकर्ता JOHN
के पास JOHNPC
के लिए नई AddKeyCredentialLink
एज है। क्योंकि यह तकनीक सर्टिफिकेटों से संबंधित है, मैंने इस हमला भी लागू किया है, जिसे Shadow Credentials के रूप में जाना जाता है। यहाँ Certipy के shadow auto
कमांड का एक छोटा सा झलक।
Certipy एक एकल कमांड के साथ एक प्रमाणपत्र टेम्पलेट के विन्यास को अधिलेखित कर सकता है। डिफ़ॉल्ट रूप से, Certipy विन्यास को ESC1 के लिए विकल्पित बनाने के लिए विन्यास को अधिलेखित करेगा। हम हमारे हमले के बाद विन्यास को पुनर्स्थापित करने के लिए उपयुक्त होगा।
वंशानुगत PKI ऑब्जेक्ट एक्सेस नियंत्रण - ESC5
व्याख्या
जो व्यापक वेब है जिसमें ACL आधारित संबंधों का जाल है, जिसमें प्रमाणपत्र टेम्पलेट्स और प्रमाणपत्र प्राधिकरण से आगे कई वस्तुएँ शामिल हैं, वे सम्पूर्ण एडी सीएस प्रणाली की सुरक्षा पर प्रभाव डाल सकते हैं। ये वस्तुएं, जो सुरक्षा पर प्रभाव डाल सकती हैं, निम्नलिखित हैं:
The AD computer object of the CA server, which may be compromised through mechanisms like S4U2Self or S4U2Proxy.
The RPC/DCOM server of the CA server.
Any descendant AD object or container within the specific container path
CN=Public Key Services,CN=Services,CN=Configuration,DC=<DOMAIN>,DC=<COM>
. This path includes, but is not limited to, containers and objects such as the Certificate Templates container, Certification Authorities container, the NTAuthCertificates object, and the Enrollment Services Container.
The security of the PKI system can be compromised if a low-privileged attacker manages to gain control over any of these critical components.
EDITF_ATTRIBUTESUBJECTALTNAME2 - ESC6
Explanation
विषय CQure Academy पोस्ट में चर्चा किया गया है जो EDITF_ATTRIBUTESUBJECTALTNAME2
ध्वज के परिणामों पर ध्यान देता है, जैसा कि Microsoft द्वारा उल्लिखित किया गया है। यह विन्यास, जब कोई प्रमाणीकरण प्राधिकरण (CA) पर सक्रिय होता है, तो प्रयोक्ता-निर्धारित मान को विषय वैकल्पिक नाम में शामिल करने की अनुमति देता है किसी भी अनुरोध में, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देता है, समावेशित करने की अनुमति देत
यह ऑपरेशन मुख्य रूप से दूरस्थ रजिस्ट्री एक्सेस का उपयोग करता है, इसलिए, एक वैकल्पिक दृष्टिकोण हो सकता है:
Tools जैसे Certify और Certipy इस गलत विन्यास का पता लगा सकते हैं और इसका शोषण कर सकते हैं:
इन सेटिंग्स को बदलने के लिए, माना जाए कि किसी के पास डोमेन प्रशासनिक अधिकार हैं या समकक्ष, तो निम्नलिखित कमांड को किसी भी कार्यस्थल से निष्पादित किया जा सकता है:
इस कॉन्फ़िगरेशन को अपने वातावरण से अक्षम करने के लिए, ध्वज को हटा दिया जा सकता है:
मई 2022 सुरक्षा अपडेट के बाद, नई जारी की गई प्रमाणपत्र में एक सुरक्षा एक्सटेंशन शामिल होगा जो अनुरोधकर्ता की objectSid
गुणवत्ता को शामिल करेगा। ESC1 के लिए, यह SID निर्दिष्ट SAN से प्राप्त किया जाता है। हालांकि, ESC6 के लिए, SID अनुरोधकर्ता की objectSid
को प्रतिबिम्बित करता है, SAN नहीं।
ESC6 का शोषण करने के लिए, ESC10 (कमजोर प्रमाणपत्र मैपिंग) के लिए प्रणाली को ESC10 के लिए संवेदनशील होना आवश्यक है, जो नए सुरक्षा एक्सटेंशन के ऊपर SAN को प्राथमिकता देता है।
वंशावली प्रमाणपत्र प्राधिकरण एक्सेस नियंत्रण - ESC7
हमला 1
स्पष्टीकरण
सर्टिफिकेट प्राधिकरण के लिए एक्सेस नियंत्रण को सीए क्रियाएँ नियंत्रित करती हैं। ये अनुमतियाँ certsrv.msc
तक पहुँचकर देखी जा सकती हैं, एक सीए पर राइट-क्लिक करके, गुणों का चयन करके, और फिर सुरक्षा टैब पर जाकर। इसके अतिरिक्त, अनुमतियाँ PSPKI मॉड्यूल का उपयोग करके जैसे कमांड के साथ जांची जा सकती हैं:
यह मुख्य अधिकारों, अर्थात ManageCA
और ManageCertificates
, के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अधिकारों के अंदर अन्वय करने के लिए प्रमुख अध
हमला 2
स्पष्टीकरण
पिछले हमले में Manage CA
अनुमतियों का उपयोग किया गया था ताकि EDITF_ATTRIBUTESUBJECTALTNAME2 ध्वज को सक्रिय किया जा सके और ESC6 हमला किया जा सके, लेकिन यह कोई प्रभाव नहीं डालेगा जब तक CA सेवा (CertSvc
) को पुनरारंभ नहीं किया जाता। जब एक उपयोगकर्ता के पास Manage CA
एक्सेस अधिकार होते हैं, तो उपयोगकर्ता को सेवा को पुनरारंभ करने की भी अनुमति होती है। हालांकि, यह यह नहीं मतलब है कि उपयोगकर्ता सेवा को दूरस्थ से पुनरारंभ कर सकता है। इसके अतिरिक्त, अधिकांश पैच किए गए वातावरणों में मई 2022 सुरक्षा अपडेट के कारण ESC6 अक्सर डिफ़ॉल्ट रूप से काम नहीं कर सकता।
इसलिए, यहां एक और हमला प्रस्तुत किया जा रहा है।
आवश्यकताएं:
केवल
ManageCA
अनुमतिManage Certificates
अनुमति (कोManageCA
से प्रदान किया जा सकता है)प्रमाणपत्र टेम्पलेट
SubCA
को सक्रिय होना चाहिए (कोManageCA
से सक्रिय किया जा सकता है)
यह तकनीक उस तथ्य पर निर्भर करती है कि उपयोगकर्ता जिनके पास Manage CA
और Manage Certificates
एक्सेस अधिकार हैं, वे विफल प्रमाणपत्र अनुरोध जारी कर सकते हैं। SubCA
प्रमाणपत्र टेम्पलेट ESC1 के लिए वंशावश है, लेकिन केवल प्रशासक टेम्पलेट में नामांकित हो सकते हैं। इसलिए, एक उपयोगकर्ता SubCA
में नामांकित होने का अनुरोध कर सकता है - जिसे इनकार किया जाएगा - लेकिन फिर प्रबंधक द्वारा जारी किया जाएगा।
दुरुपयोग
आप अपने आप को Manage Certificates
एक्सेस अधिकार प्रदान कर सकते हैं अपने उपयोगकर्ता को एक नए अधिकारी के रूप में जोड़कर।
SubCA
टेम्पलेट को -enable-template
पैरामीटर के साथ CA पर सक्रिय किया जा सकता है। डिफ़ॉल्ट रूप से, SubCA
टेम्पलेट सक्रिय है।
यदि हम इस हमले के लिए पूर्वापेक्षाएं पूरी कर चुके हैं, तो हम SubCA
टेम्प्लेट पर आधारित प्रमाणपत्र का अनुरोध करके शुरू कर सकते हैं।
यह अनुरोध अस्वीकृत किया जाएगा, लेकिन हम निजी कुंजी को सहेजेंगे और अनुरोध आईडी नोट करेंगे।
हमारे Manage CA
और Manage Certificates
के साथ, हम फिर ca
कमांड और -issue-request <request ID>
पैरामीटर के साथ विफल प्रमाणपत्र अनुरोध जारी कर सकते हैं।
और अंत में, हम req
कमांड और -retrieve <request ID>
पैरामीटर के साथ जारी प्रमाणपत्र प्राप्त कर सकते हैं।
NTLM रिले एडी सीएस एचटीटीपी एंडपॉइंट्स - ESC8
स्पष्टीकरण
ऐसे वातावरणों में जहाँ एडी सीएस स्थापित है, यदि एक वेब नामांकन एंडपॉइंट वंशाधिकारी मौजूद है और कम से कम एक प्रमाणपत्र टेम्पलेट प्रकाशित है जो डोमेन कंप्यूटर नामांकन और ग्राहक प्रमाणीकरण की अनुमति देता है (जैसे कि डिफ़ॉल्ट मशीन
टेम्पलेट), तो किसी भी कंप्यूटर को हमलावर द्वारा क्षमता बनाना संभव हो जाता है जिसमें स्पूलर सेवा सक्रिय है!
कई एडी सीएस द्वारा समर्थित एचटीटीपी पर आधारित नामांकन विधियाँ हैं, जिन्हें प्रशासक स्थापित कर सकते हैं। ये एचटीटीपी पर आधारित प्रमाणपत्र नामांकन के इंटरफेस NTLM रिले हमलों के लिए संवेदनशील हैं। एक हमलावर, कंप्रमाइज़ किए गए मशीन से, किसी भी एडी खाता का अनुकरण कर सकता है जो इनबाउंड NTLM के माध्यम से प्रमाणीकृत होता है। शिकार खाता का अनुकरण करते हुए, इन वेब इंटरफेस को हमलावर द्वारा एक ग्राहक प्रमाणीकरण प्रमाणपत्र का अनुरोध किया जा सकता है जो उपयोगकर्ता
या मशीन
प्रमाणपत्र टेम्पलेट का उपयोग करते हुए।
वेब नामांकन इंटरफेस (एक पुराना एएसपी एप्लिकेशन जो
http://<caserver>/certsrv/
पर उपलब्ध है), डिफ़ॉल्ट रूप से केवल HTTP पर है, जो NTLM रिले हमलों के खिलाफ सुरक्षा नहीं प्रदान करता। इसके अतिरिक्त, यह अपने अधिकारण HTTP हेडर के माध्यम से केवल NTLM प्रमाणीकरण की अनुमति देता है, जिससे कि कर्बेरोस जैसे अधिक सुरक्षित प्रमाणीकरण विधियाँ लागू नहीं होतीं।प्रमाणपत्र नामांकन सेवा (सीईएस), प्रमाणपत्र नामांकन नीति (सीईपी) वेब सेवा, और नेटवर्क उपकरण नामांकन सेवा (एनडीईएस) डिफ़ॉल्ट रूप से अपने अधिकारण HTTP हेडर के माध्यम से नेगोटिएट प्रमाणीकरण का समर्थन करते हैं। नेगोटिएट प्रमाणीकरण दोनों कर्बेरोस और NTLM का समर्थन करता है, जिससे हमलावर NTLM प्रमाणीकरण में डाउनग्रेड कर सकता है। हालांकि ये वेब सेवाएँ डिफ़ॉल्ट रूप से HTTPS का समर्थन करती हैं, HTTPS केवल स्वयं NTLM रिले हमलों के खिलाफ सुरक्षित नहीं है। HTTPS सेवाओं के लिए NTLM रिले हमलों से सुरक्षा केवल तब संभव है जब HTTPS को चैनल बाइंडिंग के साथ संयुक्त किया जाता है। दुर्भाग्य से, एडी सीएस आईआईएस पर विस्तारित प्रमाणीकरण के लिए एक्टिवेट नहीं करता, जो चैनल बाइंडिंग के लिए आवश्यक है।
NTLM रिले हमलों की एक सामान्य समस्या है NTLM सत्रों की अल्पकालिकता और हमलावर की सेवाओं के साथ बातचीत करने की असमर्थता जो NTLM साइनिंग की आवश्यकता है। फिर भी, इस सीमा को उपेक्षा करके एक एनटीएलएम रिले हमला उपयोग करके प्रमाणपत्र प्राप्त करने से यह सीमा पार की जा सकती है, क्योंकि प्रमाणपत्र की मान्यता अवधि सत्र की अवधि निर्धारित करती है, और प्रमाणपत्र को सेवाओं के साथ उपयोग किया जा सकता है जो एनटीएलएम साइनिंग को अनिवार्य बनाती है। चुराए गए प्रमाणपत्र का उपयोग करने के निर्देशों के लिए, देखें:
pageAD CS Account Persistenceएनटीएलएम रिले हमलों की एक और सीमा यह है कि एक हमलावर नियंत्रित मशीन को एक पीड़ित खाता द्वारा प्रमाणित किया जाना चाहिए। हमलावर इस प्रमाणीकरण का इंतजार कर सकता है या इस प्रमाणीकरण को बलपूर्वक करने का प्रयास कर सकता है:
pageForce NTLM Privileged Authenticationदुरुपयोग
Certify का cas
सक्षम HTTP AD CS अंत्यस्थानों की जांच करता है:
msPKI-Enrollment-Servers
गुणसूत्र का उपयोग उद्यम प्रमाणपत्र प्राधिकरणों (CAs) द्वारा प्रमाणपत्र पंजीकरण सेवा (CES) इंडपॉइंट्स स्टोर करने के लिए किया जाता है। इन इंडपॉइंट्स को उपयोग करके उपकरण Certutil.exe का उपयोग करके सूचीबद्ध किया जा सकता है:
```powershell Import-Module PSPKI Get-CertificationAuthority | select Name,Enroll* | Format-List * ```
प्रमाणित के साथ दुरुपयोग
Certipy के साथ दुरुपयोग
सर्टिफिकेट का अनुरोध डिफ़ॉल्ट रूप से Certipy द्वारा किया जाता है जो टेम्प्लेट Machine
या User
पर आधारित होता है, जो यह निर्धारित करता है कि क्या खाता नाम $
से समाप्त हो रहा है। एक वैकल्पिक टेम्प्लेट का निर्धारण -template
पैरामीटर का उपयोग करके किया जा सकता है।
PetitPotam जैसी एक तकनीक का उपयोग फिर किया जा सकता है जिससे प्रमाणीकरण को मजबूर किया जा सकता है। जब डोमेन कंट्रोलर्स के साथ काम किया जा रहा हो, तो -template DomainController
का निर्धारण आवश्यक है।
कोई सुरक्षा एक्सटेंशन - ESC9
स्पष्टीकरण
नए मान CT_FLAG_NO_SECURITY_EXTENSION
(0x80000
) के लिए msPKI-Enrollment-Flag
के लिए, जिसे ESC9 कहा जाता है, प्रमाणपत्र में नई szOID_NTDS_CA_SECURITY_EXT
सुरक्षा एक्सटेंशन को समाहित करने से रोकता है। यह ध्वज StrongCertificateBindingEnforcement
को 1
पर सेट किया जाता है (डिफ़ॉल्ट सेटिंग), जो 2
पर सेटिंग के साथ विपरीत है। इसका महत्व उचित होता है जब किसी कमजोर प्रमाणपत्र मैपिंग का उपयोग किया जा सकता है केरबेरोस या शैनल के लिए (जैसे ESC10 में), क्योंकि ESC9 की अनुपस्थिति आवश्यकताओं को बदल नहीं सकती।
इस ध्वज की सेटिंग महत्वपूर्ण होने की स्थितियाँ शामिल हैं:
StrongCertificateBindingEnforcement
को2
पर समायोजित नहीं किया गया है (जिसका डिफ़ॉल्ट1
है), याCertificateMappingMethods
मेंUPN
ध्वज शामिल है।प्रमाणपत्र को
msPKI-Enrollment-Flag
सेटिंग के भीतरCT_FLAG_NO_SECURITY_EXTENSION
ध्वज से चिह्नित किया गया है।कोई भी क्लाइंट प्रमाणीकरण EKU प्रमाणपत्र द्वारा निर्दिष्ट किया गया है।
किसी भी खाते पर
GenericWrite
अनुमतियाँ उपलब्ध हैं जिसका उपयोग करके किसी अन्य को कमजोर करने के लिए।
दुरुपयोग स्थिति
मान लें कि John@corp.local
के पास Jane@corp.local
पर GenericWrite
अनुमतियाँ हैं, जिनका लक्ष्य Administrator@corp.local
को कमजोर करना है। ESC9
प्रमाणपत्र टेम्पलेट, जिसे Jane@corp.local
को नामांकित होने की अनुमति है, इसकी msPKI-Enrollment-Flag
सेटिंग में CT_FLAG_NO_SECURITY_EXTENSION
ध्वज के साथ कॉन्फ़िगर किया गया है।
शुरू में, Jane
का हैश शैडो क्रेडेंशियल का उपयोग करके John
के द्वारा प्राप्त किया जाता है:
इसके बाद, Jane
का userPrincipalName
Administrator
में संशोधित किया जाता है, @corp.local
डोमेन हिस्सा जानबूझकर छोड़ दिया जाता है:
यह संशोधन बाधाएँ उल्लंघित नहीं करता है, क्योंकि Administrator@corp.local
को Administrator
का userPrincipalName
अलग रूप से बना रहता है।
इसके बाद, ESC9
प्रमाणपत्र टेम्पलेट, जिसे वंशावशेषित माना गया है, Jane
के रूप में अनुरोध किया जाता है:
यह नोट किया गया है कि प्रमाणपत्र का userPrincipalName
Administrator
को प्रकट करता है, किसी भी "ऑब्जेक्ट SID" के बिना।
Jane
का userPrincipalName
फिर से उसके मूल, Jane@corp.local
पर लौटाया जाता है:
प्रकारित प्रमाणपत्र के साथ प्रमाणीकरण का प्रयास अब Administrator@corp.local
का NT हैश देता है। प्रमाणपत्र के डोमेन विशिष्टीकरण की कमी के कारण आज्ञा में -domain <domain>
शामिल होना चाहिए:
दुर्बल प्रमाणपत्र मैपिंग - ESC10
व्याख्या
डोमेन कंट्रोलर पर दो रजिस्ट्री कुंजी मान ESC10 द्वारा संदर्भित हैं:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\Schannel
के तहतCertificateMappingMethods
के लिए डिफ़ॉल्ट मान0x18
(0x8 | 0x10
) है, पहले0x1F
पर सेट किया गया था।HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Kdc
के तहतStrongCertificateBindingEnforcement
के लिए डिफ़ॉल्ट सेटिंग1
है, पहले0
था।
मामला 1
जब StrongCertificateBindingEnforcement
को 0
के रूप में कॉन्फ़िगर किया जाता है।
मामला 2
यदि CertificateMappingMethods
में UPN
बिट (0x4
) शामिल है।
दुरुपयोग मामला 1
StrongCertificateBindingEnforcement
को 0
के रूप में कॉन्फ़िगर करने पर, एक खाता A जिसमें GenericWrite
अनुमतियाँ हैं, किसी भी खाता B को कंप्रोमाइज़ करने के लिए उपयोग किया जा सकता है।
उदाहरण के लिए, Jane@corp.local
पर GenericWrite
अनुमतियाँ होने पर, हमलावर Administrator@corp.local
को कंप्रोमाइज़ करने का उद्देश्य रखता है। प्रक्रिया ESC9 को मिरर करती है, जिससे किसी भी प्रमाणपत्र टेम्प्लेट का उपयोग किया जा सकता है।
शुरू में, Jane
की हैश Shadow Credentials का उपयोग करके प्राप्त की जाती है, GenericWrite
का शोषण करते हुए।
इसके बाद, Jane
का userPrincipalName
Administrator
में बदल दिया जाता है, @corp.local
भाग को जानबूझकर छोड़ दिया जाता है ताकि कोई प्रतिबंध उल्लंघन न हो।
निम्नलिखित के अनुसार, एक प्रमाणपत्र जो क्लाइंट प्रमाणीकरण सक्षम करता है, Jane
के रूप में अनुरोधित किया जाता है, डिफ़ॉल्ट User
टेम्पलेट का उपयोग करके।
Jane
का userPrincipalName
फिर से उसके मूल, Jane@corp.local
पर वापस किया जाता है।
प्राप्त प्रमाणपत्र के साथ प्रमाणीकरण करने से Administrator@corp.local
का एनटी हैश प्राप्त होगा, प्रमाणपत्र में डोमेन विवरणों की अनुपस्थिति के कारण कमांड में डोमेन की विशेषीकरण आवश्यक है।
दुरुपयोग मामला 2
CertificateMappingMethods
में UPN
बिट फ्लैग (0x4
) शामिल होने पर, एक खाता A जिसमें GenericWrite
अनुमतियाँ हैं, किसी भी खाता B को कंप्रोमाइज कर सकता है जिसमें userPrincipalName
गुणवत्ता नहीं है, जिसमें मशीन खाते और निर्मित डोमेन प्रशासक Administrator
शामिल हैं।
यहाँ, लक्ष्य DC$@corp.local
को कंप्रोमाइज करना है, Jane
के हैश को शैडो क्रेडेंशियल के माध्यम से प्राप्त करके, GenericWrite
का लाभ उठाते हुए।
Jane
का userPrincipalName
फिर DC$@corp.local
पर सेट किया जाता है।
एक प्रमाणपत्र क्लाइंट प्रमाणीकरण के लिए Jane
के रूप में User
टेम्पलेट का अनुरोध किया जाता है।
Jane
का userPrincipalName
इस प्रक्रिया के बाद अपने मूल स्थिति में वापस लौट जाता है।
कोर्प\डीसी$ के रूप में प्रमाणीकरण सफलता को सूचित करने के लिए, Certipy का -ldap-shell
विकल्प प्रयोग किया जाता है।
प्रमुख नियंत्रक को क्षति पहुंचाने की संभावना वाले संकटित अधिकार देने (RBCD) हमलों को सक्षम करने जैसे आदेशों के माध्यम से LDAP शैली के माध्यम से set_rbcd
जैसे कमांड्स।
यह दुरुपयोगता किसी भी उपयोगकर्ता खाते तक फैलती है जिसमें userPrincipalName
अभाव है या जहां यह sAMAccountName
से मेल नहीं खाता, डिफ़ॉल्ट Administrator@corp.local
एक प्रमुख लक्ष्य है क्योंकि इसके उच्च LDAP विशेषाधिकार होते हैं और डिफ़ॉल्ट रूप से userPrincipalName
की अनुपस्थिति होती है।
ICPR को NTLM पर रिले करना - ESC11
स्पष्टीकरण
यदि CA सर्वर IF_ENFORCEENCRYPTICERTREQUEST
के साथ कॉन्फ़िगर नहीं है, तो RPC सेवा के माध्यम से साइन न करके NTLM रिले हमले किए जा सकते हैं। यहाँ संदर्भ में।
आप certipy
का उपयोग कर सकते हैं यदि Enforce Encryption for Requests
अक्षम है और certipy ESC11
दुरुपयोगताओं को दिखाएगा।
दुरुपयोग स्थिति
एक रिले सर्वर सेटअप करने की आवश्यकता है:
नोट: डोमेन कंट्रोलर्स के लिए, हमें DomainController में -template
निर्दिष्ट करना चाहिए।
या sploutchy के impacket की fork का उपयोग करें:
एडीसीएस सीए को YubiHSM के साथ शैल एक्सेस - ESC12
स्पष्टीकरण
प्रशासक सर्टिफिकेट अथॉरिटी को "Yubico YubiHSM2" जैसी बाह्य उपकरण पर सेट अप कर सकते हैं।
यदि USB उपकरण सीए सर्वर से एक USB पोर्ट के माध्यम से कनेक्ट किया गया है, या एक USB उपकरण सर्वर की स्थिति में, तो YubiHSM में कुंज संग्रह प्रदाता के लिए एक प्रमाणीकरण कुंज (कभी-कभी "पासवर्ड" के रूप में संदर्भित) की आवश्यकता होती है ताकि कुंज उत्पन्न और उपयोग कर सके।
यह कुंज/पासवर्ड स्पष्ट पाठ में HKEY_LOCAL_MACHINE\SOFTWARE\Yubico\YubiHSM\AuthKeysetPassword
के तहत रजिस्ट्री में संग्रहीत है।
संदर्भ यहाँ में।
दुरुपयोग स्थिति
यदि सीए की निजी कुंज एक भौतिक USB उपकरण पर संग्रहीत है जब आपके पास शैल एक्सेस है, तो कुंज को पुनः प्राप्त करना संभव है।
पहले, आपको सीए सर्टिफिकेट प्राप्त करना होगा (यह सार्वजनिक है) और फिर:
OID ग्रुप लिंक दुरुपयोग - ESC13
व्याख्या
The msPKI-Certificate-Policy
attribute allows the issuance policy to be added to the certificate template. The msPKI-Enterprise-Oid
objects that are responsible for issuing policies can be discovered in the Configuration Naming Context (CN=OID,CN=Public Key Services,CN=Services) of the PKI OID container. A policy can be linked to an AD group using this object's msDS-OIDToGroupLink
attribute, enabling a system to authorize a user who presents the certificate as though he were a member of the group. Reference in here.
In other words, when a user has permission to enroll a certificate and the certificate is link to an OID group, the user can inherit the privileges of this group.
Use Check-ADCSESC13.ps1 to find OIDToGroupLink:
दुरुपयोग स्थिति
certipy find
या Certify.exe find /showAllPermissions
का उपयोग करके एक उपयोक्ता अनुमति खोजें।
यदि John
को VulnerableTemplate
को नामांकित करने की अनुमति है, तो उपयोक्ता VulnerableGroup
समूह की विशेषाधिकारों को अनुग्रहित कर सकता है।
इसके लिए केवल टेम्पलेट को निर्दिष्ट करना होगा, यह OIDToGroupLink अधिकारों वाला प्रमाणपत्र प्राप्त करेगा।
प्रमाणपत्रों के माध्यम से वनों को कमजोर करना स्वरूपित रूप में समझाया गया
संकटित सीए के द्वारा वन विश्वास टोड़ना
क्रॉस-वन नामांकन के लिए विन्यास को अनुकूल बनाया जाता है। संसाधन वन से मूल सीए प्रमाणपत्र को प्रबंधकों द्वारा खाता वनों में प्रकाशित किया जाता है, और संसाधन वन से उद्यम सीए प्रमाणपत्र प्रत्येक खाता वन में NTAuthCertificates
और AIA कंटेनर में जोड़े जाते हैं। स्पष्ट करने के लिए, यह व्यवस्था संसाधन वन में सीए को पूर्ण नियंत्रण प्रदान करती है सभी अन्य वनों पर जिनका पीकेआई वह प्रबंधित करता है। यदि यह सीए हमलावरों द्वारा संकटित हो जाए, तो सभी उपयोगकर्ताओं के लिए प्रमाणपत्र उनके द्वारा जाली बनाए जा सकते हैं, इसके फलस्वरूप सुरक्षा सीमा को वन का तोड़ दिया जा सकता है।
विदेशी सिद्धांतों को नामांकन विशेषाधिकार प्रदान किए गए
मल्टी-वन परिवेशों में, सतर्कता की आवश्यकता है जो उन उद्यम सीए जो प्रमाणपत्र टेम्पलेट प्रकाशित करते हैं जिन्हें प्रमाणित उपयोगकर्ता या विदेशी सिद्धांतों (उपयोगकर्ता/समूह वन से बाहरी वन के लिए) नामांकन और संपादन अधिकार देते हैं। विश्वास के अधिकारण के अवसर पर, एडी द्वारा उपयोगकर्ता के टोकन में प्रमाणित उपयोगकर्ता SID जोड़ा जाता है। इस प्रकार, यदि किसी डोमेन के पास एक उद्यम सीए है जिसमें एक टेम्पलेट है जो प्रमाणित उपयोगकर्ताओं को नामांकन अधिकार देता है, तो एक टेम्पलेट को संभावित रूप से एक विभिन्न वन से उपयोगकर्ता द्वारा नामांकन किया जा सकता है। उसी प्रकार, यदि टेम्पलेट द्वारा विदेशी सिद्धांत को नामांकन अधिकार विशेष रूप से प्रदान किए गए हों, तो एक वन से एक अन्य वन में टेम्पलेट में नामांकन करने की संभावना होती है।
दोनों स्थितियाँ एक वन से दूसरे वन में हमले की सतह में वृद्धि करती है। प्रमाणपत्र टेम्पलेट की सेटिंग्स का दुरुपयोग एक हमलावर द्वारा एक विदेशी डोमेन में अतिरिक्त अधिकार प्राप्त करने के लिए किया जा सकता है।
Last updated