
CVE-2023-21554 पीओसी
इस रिपॉजिटरी में एक रेडी-टू-रन प्रूफ ऑफ कॉन्सेप्ट है जो TCP पोर्ट 1801 पर सुनने वाली Microsoft Message Queuing को लक्षित करता है। यह कार्य मूल प्रोजेक्ट की सामग्री पर आधारित है और उसका उपयोग करता है:
https://github.com/leongxudong/MSMQ-Vulnerability
यह रिपॉजिटरी उस प्रोजेक्ट द्वारा प्रदान किए गए बाइनरी आर्टिफैक्ट्स का उपयोग करती है। PoC में शामिल और संदर्भित बाइनरी फ़ाइलें हैं:
establish_connection.binconnection_parameters.binuser_message.binयह PoC, पोर्ट 1801 पर लक्षित होस्ट को MSMQ प्रोटोकॉल फ्रेम का एक क्रम भेजकर CVE 2023 21554 में वर्णित स्थिति को पुन: प्रस्तुत करने का प्रयास करता है। PoC स्क्रिप्ट केवल नेटवर्क-स्तरीय गतिविधि करती हैं और कोई पोस्ट-एक्सप्लॉइटेशन कार्रवाई नहीं करती हैं। यह प्रोजेक्ट केवल एक पृथक लैब वातावरण में विश्लेषण और रक्षात्मक सत्यापन के लिए है।
CVE-2023-21554.py — मूल PoC स्क्रिप्ट जो तीनों बाइनरी ब्लॉब्स को क्रम में भेजती हैCVE-2023-21554.py — हमलावर-पक्ष सहायक स्क्रिप्ट जो प्रतिक्रियाओं, हेक्सडंप, टाइमस्टैम्प और सॉकेट-स्तरीय त्रुटियों को लॉग करती है। अधिक उपयोगी हमलावर-पक्ष साक्ष्य प्राप्त करने के लिए इस स्क्रिप्ट का उपयोग करेंestablish_connection.bin — मूल रिपॉजिटरी से बाइनरी स्टेज एक पेलोडconnection_parameters.bin — मूल रिपॉजिटरी से बाइनरी स्टेज दो पेलोडuser_message.bin — मूल रिपॉजिटरी से बाइनरी स्टेज तीन पेलोडREADME.md — यह फ़ाइलतीनों बाइनरी फ़ाइलों को PoC स्क्रिप्ट के समान फ़ोल्डर में रखें
लक्षित IP पता सेट करने के लिए PoC स्क्रिप्ट या CVE-2023-21554.py को संपादित करें
अपने हमलावर मशीन पर लक्षित IP और पोर्ट के लिए नेटवर्क कैप्चर प्रारंभ करें। एक अलग शेल में उदाहरण कमांड (IP को अपने लक्ष्य से बदलें):
sudo tcpdump -i eth0 host 10.0.2.15 and port 1801 -w msmq_test.pcap
टाइमस्टैम्प्ड लॉग और हेक्सडंप प्राप्त करने के लिए उन्नत जाँच स्क्रिप्ट चलाएँ
python3 CVE-2023-21554.py
विश्लेषण के लिए PoC आउटपुट और नेटवर्क कैप्चर फ़ाइल सहेजें
CVE-2023-21554.py पेलोड चरण के तुरंत बाद connection_reset या orderly_close की रिपोर्ट करता है (ये सहायक द्वारा मुद्रित स्पष्ट स्थितियाँ हैं)।mqsvc.exe क्रैश हो जाती है या पुनः प्रारंभ होती है।mqsvc.exe का संदर्भ देते हैं।mqsvc प्रक्रिया में एक अपवाद दिखाता है।प्रत्येक फ़िल्टर के लिए <TARGET> को अपने लक्षित IP से बदलें।
हमलावर और लक्ष्य के बीच MSMQ पोर्ट पर सभी ट्रैफ़िक दिखाएँ:
ip.addr == <TARGET> && tcp.port == 1801
केवल सर्वर-उत्पन्न TCP RST दिखाएँ:
ip.src == <TARGET> && tcp.port == 1801 && tcp.flags.reset == 1
वे पैकेट दिखाएँ जिनमें एप्लिकेशन डेटा हो (गैर-रिक्त TCP पेलोड):
ip.addr == <TARGET> && tcp.port == 1801 && tcp.len > 0
शून्य-लंबाई वाले सेगमेंट या FIN दिखाएँ:
ip.addr == <TARGET> && tcp.port == 1801 && (tcp.len == 0 || tcp.flags.fin == 1)
रीट्रांसमिशन और TCP विसंगतियाँ दिखाएँ:
tcp.analysis.retransmission || tcp.analysis.fast_retransmission || tcp.analysis.duplicate_ack
tcp.len मान या RST से ठीक पहले वाले पैकेट को देखें।server_reply.hex)।CVE-2023-21554.py से पूर्ण stdout लॉग को एक टेक्स्ट फ़ाइल में सहेजेंmsmq_test.pcap)mqsvc.exe का क्रैश डंप कैप्चर करें और विश्लेषण के लिए सहेजेंयह कोड लक्षित होस्ट पर सेवा क्रैश और अस्थिरता पैदा कर सकता है। इसे उन सिस्टमों के विरुद्ध न चलाएँ जिनके स्वामी आप नहीं हैं या जिनके परीक्षण की आपके पास स्पष्ट अनुमति नहीं है। हमेशा एक पृथक लैब वातावरण में परीक्षण करें और परीक्षण चलाने से पहले VM स्नैपशॉट लें। मूल कार्य का श्रेय अपस्ट्रीम प्रोजेक्ट को जाता है:
https://github.com/leongxudong/MSMQ-Vulnerability
यह रिपॉजिटरी मूल प्रोजेक्ट से व्युत्पन्न है:
https://github.com/leongxudong/MSMQ-Vulnerability
यदि आप डिटेक्शन सहायक या साक्ष्य संग्रह स्क्रिप्ट जोड़ते हैं तो कृपया उनका दस्तावेजीकरण करें और सुरक्षित लैब उपयोग के निर्देश शामिल करें।
मूल संदर्भ और बाइनरी आर्टिफैक्ट्स के लिए ऊपर दिए गए लिंक पर अपस्ट्रीम रिपॉजिटरी देखें। रक्षात्मक मार्गदर्शन के लिए CVE 2023 21554 के बारे में विक्रेता सलाह और प्रकाशित राइटअप देखें।