CVE-2020-1472 उर्फ Zerologon Exploit POC

यह क्या है?
NetLogon (MS-NRPC), एक कमजोर अंतर-डोमेन नियंत्रण सुरक्षा चैनल स्थापित कर सकता है।
डोमेन कंट्रोलर्स पर मशीन खाते के पासवर्ड को शून्य करना संभव है।
नोट्स:
- जब पासवर्ड शून्य किया जाता है तो DC आधा टूटा हुआ होगा, हालाँकि यह प्रोग्राम समाप्त होने पर पासवर्ड वापस बदल देता है
- DC के साथ DNS समस्याएँ उत्पन्न कर सकता है (रीबूट से ठीक होता है)
- केर्बरोस टिकटों का जीवनकाल 10 घंटे होता है, उसके बाद वे समाप्त हो जाते हैं
- अतिरिक्त नेटलॉगन संरचनाओं के साथ GitHub से नवीनतम impacket की आवश्यकता है।
- कृपया ध्यान दें कि डिफ़ॉल्ट रूप से यह डोमेन कंट्रोलर सिस्टम खाते का पासवर्ड बदलता है और फिर उसे वापस बदल देता है। हाँ, यह आपको DCSync करने की अनुमति देता है, लेकिन यह थोड़े समय के लिए अन्य डोमेन कंट्रोलर्स के साथ संचार भी तोड़ देता है, इसलिए इससे सावधान रहें!
शोध करें:
आवश्यक निर्भरताएँ
- अतिरिक्त नेटलॉगन संरचनाओं के साथ GitHub से नवीनतम impacket की आवश्यकता है।
भेद्यता की जाँच करें:
- स्क्रिप्ट का डिफ़ॉल्ट व्यवहार यह जाँचना है कि क्या यह भेद्य है और कुछ भी नहीं बदलना है!
zerologon.py का उपयोग
- ऊपर दिया गया ब्लॉग/श्वेतपत्र पढ़ें ताकि आपको पता चले कि आप क्या कर रहे हैं
- यह स्क्रिप्ट डोमेन कंट्रोलर्स को CVE-2020-1472 के लिए जाँचेगी।
- यदि -exploit विकल्प प्रदान किया गया है तो यह:
- डोमेन कंट्रोलर सिस्टम पासवर्ड को शून्य कर देगा
- ntds हैश प्राप्त करने के लिए zeropassword के साथ secretsdump की DRSUAPI को कॉल करेगा
- rid :500: वाला डोमेन एडमिन खाता प्राप्त करने के लिए डंप किए गए डेटा को पार्स करेगा और lsa secrets प्राप्त करने के लिए secretsdump को फिर से कॉल करेगा
- plain_password_hex मान के लिए दूसरे डंप को पार्स करेगा
- DC के सिस्टम पासवर्ड को उसके मूल मान पर पुनर्स्थापित करने के लिए hex मान के साथ restore स्क्रिप्ट को कॉल करेगा
python zerologon.py
usage: zerologon.py [-h] [-exploit] dc_name dc_ip
Tests whether a domain controller is vulnerable to the Zerologon attack. Resets the DC account password to an empty string
when vulnerable.
positional arguments:
dc_name The (NetBIOS) computer name of the domain controller.
dc_ip IP Address of the domain controller.
optional arguments:
-h, --help show this help message and exit
-exploit Zero out the computer's hash
इसका पता लगाएं:
- SetPassword के लिए विशेषाधिकार अनुरोध के साथ इवेंट 4661 (पुराने पासवर्ड की जानकारी के बिना) (स्क्रीनशॉट संलग्न है)
- किसी खाते का पासवर्ड बदलने के प्रयास के लिए इवेंट 4723
- Password Last Set मान के लिए उपयोगकर्ता खाते के बदले जाने पर इवेंट 4738
इसे पैच करें:
प्रभावित सिस्टम:
- Windows Server 2008 R2 for x64-based Systems Service Pack 1
- Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
- Windows Server 2012
- Windows Server 2012 (Server Core installation)
- Windows Server 2012 R2
- Windows Server 2012 R2 (Server Core installation)
- Windows Server 2016
- Windows Server 2016 (Server Core installation)
- Windows Server 2019
- Windows Server 2019 (Server Core installation)
- Windows Server, version 1903 (Server Core installation)
- Windows Server, version 1909 (Server Core installation)
- Windows Server, version 2004 (Server Core installation)