
स्थानीय curl के विरुद्ध CVE-2023-38545 का परीक्षण करने के लिए एक प्रूफ ऑफ कॉन्सेप्ट
यह रिपॉजिटरी CVE-2023-38545 भेद्यता के लिए सिस्टम का परीक्षण करने के लिए डिज़ाइन किया गया एक प्रूफ ऑफ कॉन्सेप्ट (PoC) शामिल करता है। यह भेद्यता कर्ल उपयोगिता को प्रभावित करती है, विशेष रूप से 7.69.0 और 8.3.1 के बीच के संस्करण, और HTTP रीडायरेक्ट के संचालन से संबंधित है।
आवश्यक सॉफ्टवेयर: curl
PoC में दो मुख्य घटक शामिल हैं:
यह चरण वैकल्पिक है यदि आपके पास पहले से उपयोग करने योग्य socks5 प्रॉक्सी है।
setup_socks5.sh निष्पादित करें
$ chmod +x setup_socks5.sh
$ ./setup_socks5.sh
यह आवश्यक निर्भरताएँ स्थापित करेगा और पोर्ट 1080 पर SOCKS5 प्रॉक्सी सर्वर सेट करेगा।
HTTP सर्वर शुरू करने के लिए निम्नलिखित कमांड निष्पादित करें:
$ python3 server.py
आप सर्वर को डीबग लॉगिंग के साथ भी चला सकते हैं
$ python3 server.py --debug
सफल निष्पादन पर, HTTP सर्वर पोर्ट 8000 पर सुन रहा होगा।
पहले, स्क्रिप्ट को निष्पादन योग्य बनाएं:
$ chmod +x cve202338545.sh
स्क्रिप्ट को --socks5-ip के साथ एक socks5 प्रॉक्सी पता और --http-ip के साथ एक http पता स्वीकार करने के लिए कॉन्फ़िगर किया जा सकता है और --DEBUG के साथ डीबग लॉग आउटपुट कर सकता है।
$ ./cve202338545.sh --socks5-ip <ip> --http-ip <ip> --DEBUG # specify both proxy and http server
$ ./cve202338545.sh --socks5-ip <ip> # specify only proxy server
$ ./cve202338545.sh --http-ip <ip> # specify only http server
$ ./cve202338545.sh # both proxy and http server will default to localhost
$ ./cve202338545.sh --DEBUG # both proxy and http server will default to localhost with debug on
यह एक्सप्लॉइट शुरू करेगा, और आपको आउटपुट दिखाई देना चाहिए जो इंगित करता है कि सिस्टम भेद्य है, भेद्य नहीं है, या परीक्षण अनिर्णायक था।
4 प्रतिक्रिया स्थितियाँ हैं:
यह चरण केवल तभी आवश्यक है यदि आपने चरण 1 से setup_socks5.sh का उपयोग किया है।
SOCKS5 प्रॉक्सी सर्वर को साफ करने के लिए, निम्नलिखित कमांड निष्पादित करें:
$ ./cleanup.sh