
Kerberos CNAME दुरुपयोग PoC
यह उपकरण केर्बरोस CNAME दुरुपयोग रिले तकनीक का प्रूफ-ऑफ-कॉन्सेप्ट है, जो MITM6 उपकरण पर आधारित है।
शोध में विंडोज केर्बरोस क्लाइंट व्यवहार में एक दोष उजागर हुआ: जब DNS CNAME रिकॉर्ड वापस किया जाता है, तो क्लाइंट उपनाम का अनुसरण करता है और CNAME होस्टनाम को SPN के रूप में उपयोग करके TGS अनुरोध तैयार करता है। यह DNS MITM स्थिति वाले हमलावर को किसी भी डोमेन उपयोगकर्ता को हमलावर द्वारा चुनी गई सेवा के लिए केर्बरोस टिकट का अनुरोध करने के लिए मजबूर करने की अनुमति देता है, जिससे SMB, HTTP और अन्य सेवाओं के विरुद्ध ऑन-डिमांड, क्रॉस-प्रोटोकॉल रिले हमलों को सक्षम किया जा सकता है जहां हस्ताक्षर या चैनल बाइंडिंग लागू नहीं है।
पिछले केर्बरोस रिले तकनीकों के विपरीत जो मशीन खातों तक सीमित थीं या विशिष्ट शर्तों की आवश्यकता थी, यह विधि डिफ़ॉल्ट विंडोज कॉन्फ़िगरेशन पर उपयोगकर्ता खातों के विरुद्ध विश्वसनीय रूप से काम करती है। माइक्रोसॉफ्ट ने https पर CBT को लागू करने और प्रभावित प्रोटोकॉल के लिए डिफ़ॉल्ट रूप से हस्ताक्षर सक्षम करने के लिए एक पैच लागू करके जोखिम को कम किया। इस फिक्स को CVE-2026-20929 के रूप में ट्रैक किया गया है। पूर्ण तकनीकी विवरण, दोहन वॉकथ्रू और प्रभाव विश्लेषण के लिए, Cymulate पर ब्लॉग पोस्ट देखें।
पीड़ित द्वारा एक्सेस करने का प्रयास किए जाने वाले विशिष्ट डोमेन को लक्षित करने के लिए --cname-source का उपयोग करें, या प्रत्येक DNS क्वेरी को विषाक्त करने के लिए का उपयोग करें। दोनों को CNAME प्रतिक्रिया में उपयोग किए जाने वाले लक्ष्य होस्टनाम को निर्दिष्ट करने के लिए की आवश्यकता होती है (पीड़ित तब इस होस्टनाम के लिए TGS का अनुरोध करेगा)।
--cname-source-all--cname--only-dns फ्लैग मूल mitm6 DHCPv6 सर्वर और राउटर विज्ञापन कार्यक्षमता को अक्षम करता है। यह CNAME विषाक्तीकरण को ARP विषाक्तीकरण जैसी अन्य MITM तकनीकों के साथ संयोजित करने की अनुमति देता है।
--passthrough विकल्प एक फ़ाइल स्वीकार करता है जिसमें ऐसे डोमेन होते हैं जिन्हें उनके वास्तविक IP पतों पर हल किया जाना चाहिए (प्रारूप: प्रति पंक्ति domain:ip)। डोमेन नियंत्रकों जैसे महत्वपूर्ण बुनियादी ढांचे से कनेक्टिविटी बनाए रखने के लिए उपयोगी (प्रयोगात्मक)।
pip install -r requirements.txt
रिले लक्ष्य की ओर इशारा करते हुए CNAME के साथ सभी DNS क्वेरी को विषाक्त करें:
python mitm6-cname.py -i eth0 -d corp.local --cname-source-all --cname target.corp.local
केवल एक विशिष्ट होस्टनाम के लिए क्वेरी को विषाक्त करें:
python mitm6-cname.py -i eth0 -d corp.local --cname-source fileserver.corp.local --cname adcs.corp.local
DNS MITM के लिए ARP विषाक्तीकरण का उपयोग करते समय DHCPv6/RA को छोड़ें:
python mitm6-cname.py -i eth0 --only-dns -d corp.local --cname-source-all --cname target.corp.local
# Terminal 1: CNAME poisoning
python mitm6-cname.py -i eth0 -d corp.local --cname-source-all --cname adcs.corp.local
# Terminal 2: Relay to ADCS
krbrelayx.py -t http://adcs.corp.local/certsrv/certfnsh.asp -smb2support --adcs --template User
यह उपकरण केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान किया गया एक गैर-उत्पादन PoC है। कंप्यूटर सिस्टम तक अनधिकृत पहुंच अवैध है। अपने जोखिम पर और केवल उन सिस्टमों के विरुद्ध उपयोग करें जिनका परीक्षण करने की आपके पास स्पष्ट अनुमति है।
MIT