
CVE-2021-26855 के लिए PoC एक्सप्लॉइट कोड
CVE-2021-26855 के लिए PoC शोषण कोड।
मूल कोड https://github.com/GreyOrder द्वारा विकसित किया गया था।
CVE-2021-26855 ssrf golang अभ्यास का सरल उपयोग प्रभावित संस्करण
Exchange Server 2013 CU23 से कम है
Exchange Server 2016 CU18 से कम है
Exchange Server 2019 CU7 से कम है
उपयोग की शर्तें
यह भेद्यता पिछले एक्सचेंज भेद्यताओं से अलग है। इस भेद्यता के लिए लॉग इन करने योग्य उपयोगकर्ता पहचान की आवश्यकता नहीं है। यह बिना प्राधिकरण के आंतरिक उपयोगकर्ता संसाधन प्राप्त कर सकता है। इसका उपयोग CVE-2021-27065 के साथ दूरस्थ कमांड निष्पादन को लागू करने के लिए किया जा सकता है।
भेद्यता ट्रिगर आवश्यकताएँ
लक्ष्य सर्वर में भेद्यता
लक्ष्य एक्सचेंज सर्वर एक लोड बैलेंसिंग सर्वर होना चाहिए, अर्थात एक ही समय में दो या अधिक सर्वरों का उपयोग किया जाता है
लक्ष्य ईमेल पता। ध्यान दें कि पता डोमेन में एक ईमेल पता होना चाहिए, न कि केवल एक ईमेल पता। दोनों के बीच अंतर है। परीक्षण के बाद, ऐसा नहीं है, जब तक कि यह सही ईमेल पता है, विशेष परिस्थितियों को छोड़कर
हमलावर को आंतरिक एक्सचेंज सर्वर का पूर्ण योग्य डोमेन नाम (FQDN) भी पहचानना होगा। वास्तव में, केवल सर्वर होस्ट नाम की आवश्यकता है, क्योंकि होस्ट नाम डोमेन के भीतर हल किया जा सकता है।
उपरोक्त चार वस्तुओं में से, FQDN को ntlm type2 संदेश द्वारा कैप्चर किया जा सकता है; ईमेल पतों को सीधे गणना किया जा सकता है। FQDN के लिए एक अतिरिक्त स्पष्टीकरण, क्योंकि मैं केवल ntlm type2 का उपयोग सिस्टम जानकारी कैप्चर करने के लिए करता हूं, डिफ़ॉल्ट रूप से उपकरण द्वारा प्राप्त FQDN वर्तमान में एक्सेस की गई मशीन है, इसलिए भेद्यता को सीधे ट्रिगर नहीं किया जा सकता है। आपको FQDN नाम के आधार पर मैन्युअल रूप से निर्णय लेना होगा और -n का उपयोग करके अन्य एक्सचेंज सर्वर होस्ट नाम को बदलना होगा। उपयोग के निर्देश
इस भेद्यता का शोषण करने के लिए, रूबी पायथन जैसी स्क्रिप्टिंग भाषा का उपयोग करना अधिक सुविधाजनक है। इसे golang सीखने के लिए golang में लिखा गया है, इसलिए यह छोटा उपकरण केवल एक अर्ध-तैयार उत्पाद माना जा सकता है और समय मिलने पर अपडेट किया जाएगा।
यह उपकरण वर्तमान में निम्नलिखित कार्यों का समर्थन करता है:
भेद्यता का पता लगाना (बस जांचें कि क्या इसे हिट किया जा सकता है, और इसका उपयोग पता लगाने के लिए नहीं किया जा सकता)
उपयोगकर्ता गणना
सरल मेल आईडी और विषय पढ़ना
मेल डाउनलोड (अपग्रेड किया गया, अब एक मानक eml फ़ाइल)
उपयोगकर्ता द्वारा सहेजे गए संपर्क पढ़ें (ध्यान दें कि यह वैश्विक नहीं है, केवल लक्ष्य द्वारा सहेजे गए संपर्क)
फ़ोल्डर निर्दिष्ट, मनमाना नहीं, कृपया विवरण के लिए https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/distinguishedfolderid देखें
अन्य उपयोगों के लिए, कृपया स्वयं xml सामग्री संशोधित करें।
उपयोग:
go run CVE-2021-26855-PoC.go -h
-h string आवश्यक, लक्ष्य पता या डोमेन नाम
-U string वैकल्पिक, उपयोगकर्ता सूची की गणना करने की आवश्यकता
-d वैकल्पिक, मेल डाउनलोड करें
-l वैकल्पिक, मेलिंग सूची सूचीबद्ध करें
-n string वैकल्पिक, आपको FQDN निर्दिष्ट करने की आवश्यकता है
-t string वैकल्पिक, अनुरोध विलंब समय (डिफ़ॉल्ट "1")
-u string वैकल्पिक, लक्ष्य निर्दिष्ट करें (डिफ़ॉल्ट "administrator")
-c वैकल्पिक, वर्तमान उपयोगकर्ता द्वारा सहेजे गए संपर्क पढ़ें, सभी नहीं
-f string वैकल्पिक, देखने के लिए फ़ोल्डर निर्दिष्ट करें (डिफ़ॉल्ट "inbox")