
CVE-2023-38831 पर एक POC डेमो
CVE-2023-38831 पर एक POC डेमो
भेद्यता का संक्षिप्त विवरण
भेद्यता कैसे काम करती है?

शोषण का पहला भाग
पहला भाग शोषण शुरू करने के लिए हमलावर मशीन पर होगा।

1) सबसे पहले, हमें दुर्भावनापूर्ण अटैचमेंट, "pdf", शोषण पायथन कोड और bat स्क्रिप्ट युक्त शोषण फ़ोल्डर बनाने की आवश्यकता होगी, निम्नलिखित कमांड के द्वारा: “git clone https://github.com/HDCE-inc/CVE-2023-38831”

2) यह वही है जो फ़ोल्डर में कोई शोषण होने से पहले होता है,

3) ifconfig के माध्यम से kali मशीन IP पता पता लगाना:

4) फिर हम script.bat पर मौजूदा स्क्रिप्ट को निम्नलिखित कमांड लाइन (उपरोक्त चित्र) में संशोधित करेंगे।
"start" कमांड लाइन प्रक्रिया शुरू करने के लिए है, "/min" पृष्ठभूमि में कमांड प्रॉम्प्ट को छोटा करने के लिए है, ncat हमलावर IP पते से पोर्ट 4444 के माध्यम से कनेक्ट करना शुरू करने के लिए है, और अंत में -e cmd.exe कमांड प्रॉम्प्ट पर कमांड लाइन निष्पादित करने के लिए है।

5) यह निम्नलिखित exploit.py कोड की व्याख्या दिखाता है:
1 बेट फ़ाइल नाम document.pdf, स्क्रिप्ट फ़ाइल नाम bat.script, और आउटपुट जो पीड़ित देखता है RAR फ़ाइल के रूप में, और इस मामले में हम इसे getrich.rar के रूप में सहेजेंगे, पर उपयोगकर्ता इनपुट को संदर्भित करता है।
2 यह जांचने के लिए किए गए चेक को संदर्भित करता है कि kali linux मशीन में CVE-2023-38831 फ़ोल्डर में सही नामकरण परंपरा के साथ मौजूदा फ़ाइलें मौजूद हैं या नहीं, और यदि नामकरण गलत या डुप्लिकेट फ़ाइल है, तो त्रुटि संदेश मुद्रित होगा और प्रोग्राम रुक जाएगा और बाहर निकल जाएगा।
3 os.mkdir() का उपयोग करके एक अस्थायी फ़ाइल गंतव्य बनाने को संदर्भित करता है जो नई बनाई गई फ़ाइल को आर्काइव में संपीड़ित होने से पहले संग्रहीत करता है और कार्यक्षेत्र के रूप में उपयोग किया जाता है।
4 एक प्रतिलिपि लाइन, shutil.copyfile, को संदर्भित करता है जो बेट और स्क्रिप्ट फ़ाइल दोनों को "tmp" के भीतर उनके संबंधित निर्देशिकाओं में संग्रहीत करने के लिए कॉपी करता है ताकि यह सुनिश्चित हो सके कि सभी आवश्यक फ़ाइलें सही और जगह पर हैं अगले चरण पर जाने से पहले। अगला चरण, shutil.make_archive, "tmp" नामक "tmp.zip" से एक आर्काइव बनाता है जिसमें "tmp" फ़ोल्डर में सब कुछ होता है।
5 उपरोक्त कोड चलाने की सफलता और उपयोगकर्ता इनपुट के माध्यम से बेट फ़ाइल, स्क्रिप्ट फ़ाइल और आउटपुट फ़ाइल नाम के आधार पर एक RAR फ़ाइल को शोषण के रूप में सफलतापूर्वक बनाने को संदर्भित करता है।

6) अपना IP पता प्राप्त करने और bat स्क्रिप्ट को संशोधित करने के बाद, अब हम कमांड "python exploit.py" चलाकर दुर्भावनापूर्ण ".rar" बना सकते हैं।
exploit.py को उपयोगकर्ता से 3 क्षेत्रों पर इनपुट की आवश्यकता होगी: बेट फ़ाइल नाम जो मौजूद है document.pdf, स्क्रिप्ट फ़ाइल नाम जिसे हमने पहले संशोधित किया था script.bat, और पीड़ित को फ़ाइल डाउनलोड करने और क्लिक करने के लिए लुभाने के लिए एक आउटपुट RAR फ़ाइल नाम जिसके लिए एक उपयुक्त नाम की आवश्यकता होती है और इस मामले में हमने "steps-to-generate-income.rar" का उपयोग किया। CVE-2023-38831 तब पीड़ित मशीन का शोषण करने के लिए तैयार है।
शोषण का दूसरा भाग
दूसरा भाग फिर kali मशीन और पीड़ित मशीन दोनों पर होगा जो एक windows 11 VM है।

1) हम पहले या तो एक दुर्भावनापूर्ण वेबसाइट बनाएंगे या अटैचमेंट पीड़ित को भेजेंगे।
बाईं ओर, हम "python -m http.server 8080" निष्पादित करेंगे। यह कमांड एक प्रक्रिया है जो यह पकड़ने के लिए है कि कौन सा IP पता इस दुर्भावनापूर्ण URL तक पहुंचता है, जिससे हम पीड़ित IP पता जान सकते हैं और विभिन्न HTTP अनुरोधों जैसे किसी विशिष्ट IP पते द्वारा "200" को सुनता है। दाईं ओर, पीड़ित को इस IP पते पर लुभाया जाता है और फ़ाइल "steps-to-generate-income.rar" डाउनलोड करने के लिए प्रेरित किया जाता है।

2) एक बार जब पीड़ित सफलतापूर्वक दुर्भावनापूर्ण फ़ाइल "steps-to-generate-income.rar" डाउनलोड करने के लिए लुभाया जाता है, तो यह दिखाएगा कि किस IP पते ने समय सीमा के साथ फ़ाइल डाउनलोड की है। इस जानकारी से, हम पीड़ित IP पता प्राप्त कर सकते हैं।

3) फिर हम kali मशीन पर पोर्ट 4444 पर ncat सेट करेंगे क्योंकि पोर्ट 4444 script.bat में लिखे गए उसी पोर्ट के साथ सिंक्रोनाइज़ करने के लिए है जो पीड़ित मशीन पर निष्पादित होना है।
एक बार जब पीड़ित document.pdf पर क्लिक करता है, तो bat.script कमांड लाइन चलाएगा और एक इंस्टेंस में पृष्ठभूमि में छोटा हो जाएगा, जिससे हमलावर के लिए बैकडोर कनेक्शन मिल जाता है।