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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
drupal-openai-provider-ssrf-cve-2026-13233 — CVE-2026-13233 (Drupal OpenAI Provider, SA-CONTRIB-2026-053): response-URL SSRF / स्थानीय फ़ाइल पठन। अविश्वसनीय अपस्ट्रीम, प्रॉम्प्ट नहीं। सुरक्षित रीप्रोड्यूसर + डिटेक्शन। 1.1.1/1.2.2 में ठीक किया गया। | Kitploit
उपकरण/GitHubGitHub/kuninogu/drupal-openai-provider-ssrf-cve-2026-13233
भेद्यता विश्लेषणवेब सुरक्षालर्निंग और शिक्षा
GitHubkuninogu/drupal-openai-provider-ssrf-cve-2026-13233

drupal-openai-provider-ssrf-cve-2026-13233

CVE-2026-13233 (Drupal OpenAI Provider, SA-CONTRIB-2026-053): response-URL SSRF / स्थानीय फ़ाइल पठन। अविश्वसनीय अपस्ट्रीम, प्रॉम्प्ट नहीं। सुरक्षित रीप्रोड्यूसर + डिटेक्शन। 1.1.1/1.2.2 में ठीक किया गया।

रिपॉजिटरी देखें

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
1 महीना पहलेअभी तक समीक्षित नहीं

Drupal OpenAI Provider — प्रतिक्रिया URL के माध्यम से SSRF / स्थानीय फ़ाइल पठन (CVE-2026-13233)

अविश्वसनीय अपस्ट्रीम: वह प्रदाता जिसने वह URL लाया जिसे उसकी प्रतिक्रिया ने लाने को कहा। Drupal OpenAI Provider (ai_provider_openai) · SSRF (CWE-918) · CVE-2026-13233 · SA-CONTRIB-2026-053

स्थिति: समन्वित प्रकटीकरण पूर्ण (2026-07-10)। Drupal सुरक्षा टीम को निजी तौर पर रिपोर्ट किया गया, सुधारा गया, और CVE-2026-13233 / एडवाइज़री SA-CONTRIB-2026-053 (रेटेड मध्यम रूप से महत्वपूर्ण) के रूप में प्रकाशित। लेखक को खोजकर्ता और सुधार डेवलपर के रूप में श्रेय दिया गया।

एक AI "कनेक्शन बिंदु" पर क्लासिक प्राधिकरण / इनपुट-सत्यापन दोष का अध्ययन: एक AI छवि-निर्माण प्रदाता ने बिना किसी स्कीम अनुमति-सूची वाले सामान्य-उद्देश्य फ़ंक्शन का उपयोग करके अपस्ट्रीम API प्रतिक्रिया में निहित URL लाया। उन परिनियोजनों पर जहाँ कॉन्फ़िगर किया गया अपस्ट्रीम विश्वसनीय डिफ़ॉल्ट नहीं है (bring-your-own-endpoint / प्रॉक्सी / self-hosted गेटवे / समझौता किया गया रिले), प्रतिक्रिया सर्वर को file:// या किसी आंतरिक पते की ओर इंगित कर सकती है।

सिंक तक पहुँचने वाला अविश्वसनीय इनपुट अपस्ट्रीम प्रतिक्रिया URL है — न कि उपयोगकर्ता का प्रॉम्प्ट।

  • वर्ग (प्रकाशित): SSRF (CWE-918)। SSRF में file:// स्थानीय फ़ाइल पठन शामिल था; लेखक के आंतरिक विश्लेषण ने इसे CWE-73 / CWE-441 से भी मैप किया।
  • गंभीरता: Drupal मध्यम रूप से महत्वपूर्ण (SA-CONTRIB-2026-053) — Drupal के पैमाने पर मध्य बैंड ≈ CVSS Medium; CVSS Critical/High नहीं। लेखक का प्रकटीकरण-पूर्व स्व-मूल्यांकन: न्यूनतम 3.1 / सशर्त 5.3 (Medium); पिछले 6.5 / 7.4 वापस लिए गए, और मध्य रेटिंग ने उसे सही ठहराया।
  • प्रभावित: Drupal core 11.2 पर Drupal OpenAI Provider (ai_provider_openai) < 1.1.1 और 1.2.0–1.2.1 (1.2.1 का ऑडिट किया गया)
  • इसमें सुधारा गया: 1.1.1 / 1.2.2 · CVE: CVE-2026-13233 · एडवाइज़री: https://www.drupal.org/sa-contrib-2026-053

क्या प्रदर्शित किया गया (पुष्टि) बनाम क्या नहीं (असत्यापित)

सभी सत्यापन एक स्वामित्व वाले, नेटवर्क-पृथक सैंडबॉक्स में एक मॉक अपस्ट्रीम के विरुद्ध चले। असली OpenAI API को कभी कॉल नहीं किया गया। लीक ओरेकल केवल सिंथेटिक थे।

पुष्टि की गई (गतिशील रूप से प्रदर्शित):

  • गैर-व्यवस्थापक ट्रिगर → अपस्ट्रीम-चयनित स्थानीय फ़ाइल का सर्वर-पक्ष पठन (प्रति-रन अद्वितीय मार्कर के साथ मनमाना पथ सिद्ध; परोसा गया बॉडी कच्चे-बाइट में मार्कर के बराबर; मार्कर केवल ऐप कंटेनर में मौजूद, मॉक पर अनुपस्थित — जो "मॉक ने अपनी फ़ाइल लौटाई" को खारिज करता है)।
  • settings.php पठन sha256 बाइट-मिलान (35,182 B) द्वारा पुष्ट — सामग्री कभी मुद्रित नहीं; इसलिए DB क्रेडेंशियल दायरे में हैं।
  • आंतरिक HTTP SSRF प्रतिक्रिया पुनर्प्राप्ति एक ऐसी सेवा से जिसका कोई सार्वजनिक पोर्ट नहीं है (आंतरिक टोकन कच्चे-बाइट मिलान)।
  • प्राधिकरण सीमा: समान खाते को व्यवस्थापक कॉन्फ़िगर मार्ग पर 403 मिलता है (200-बनाम-403 कंट्रास्ट)।
  • बिना किसी AI अनुमति वाले संपादक द्वारा एक यथार्थवादी व्यवस्थापक-कॉन्फ़िगर फ़ील्ड-विजेट "Generate" प्रवाह के माध्यम से वैध-HTTP पहुँच।

असत्यापित (स्पष्ट रूप से दावा नहीं किया गया):

  • क्लाउड मेटाडेटा (IMDS) क्रेडेंशियल चोरी — उसी सिंक से तंत्र-संगत, प्रयास नहीं किया गया।
  • बेस-क्लास जुड़वाँ गतिशील पहुँच — इस प्रदाता पर ओवरराइड किया गया (इस लक्ष्य के लिए मृत कोड); सुधार को पोर्ट करने हेतु समान-मूल-कारण वैरिएंट के रूप में दर्ज, कोई अलग दावा नहीं।
  • निष्क्रिय "केवल-सहेजें" ऑटोमेटर सक्रियण — परीक्षण किया गया, नकारात्मक। "केवल सहेजना" इसे ट्रिगर नहीं करता।
  • संग्रहीत-XSS (कंटेंट-टाइप भ्रम) और स्पीच-टू-टेक्स्ट समवर्ती रेस — अलग सुराग, अप्रमाणित।

प्रभावित नहीं: TLS पर डिफ़ॉल्ट api.openai.com। host सेटिंग व्यवस्थापक / config-sync / डिप्लॉय नियंत्रित है — एक रनटाइम गैर-व्यवस्थापक हमलावर इसे बदल नहीं सकता।


मूल कारण और सुधार दिशा (सारांश)

प्रतिक्रिया URL को एक सामान्य-उद्देश्य फ़ेच को पारित किया गया जो प्रत्येक पंजीकृत PHP स्ट्रीम रैपर (file, php, http, data, phar, …) का सम्मान करता है। response_format डिफ़ॉल्ट रूप से url है, इसलिए कमजोर शाखा डिफ़ॉल्ट पथ है। file:// PHP का डिफ़ॉल्ट फ़ाइलसिस्टम रैपर है और allow_url_fopen द्वारा गेटेड नहीं है (पहले का "allow_url_fopen आवश्यक है" दावा गलत था और वापस ले लिया गया है)।

प्रिमिटिव को ठीक करें, केवल कॉल साइट को नहीं:

  1. दूरस्थ पुनर्प्राप्ति के लिए सामान्य-उद्देश्य फ़ेच का उपयोग बंद करें; इंजेक्ट किए गए HTTP-केवल क्लाइंट का उपयोग करें।
  2. अनुरोध से पहले सत्यापित करें कि स्कीम http/https है; रीडायरेक्ट अक्षम करें (एक 30x file:// पर उछल सकता है)।
  3. गहराई में रक्षा (Defense in depth): हल किए गए निजी/link-local/लूपबैक होस्ट को अस्वीकार करें, या कॉन्फ़िगर किए गए इमेज-CDN होस्ट(ों) तक सीमित करें; आकार / content-type / इमेज-डिकोड सत्यापित करें।
  4. समान सुधार को बेस क्लास में पोर्ट करें ताकि सहोदर प्रदाता इसे विरासत में पाएँ (अन्यथा अधूरा सुधार)।
  5. रिग्रेशन परीक्षण अस्वीकार-मामला पहले हैं: file://…, http://169.254.169.254/…, और एक 302→file:// रीडायरेक्ट — सभी अस्वीकार किए जाने चाहिए।

पूर्ण दिशा: docs/fix-direction.md।


निर्देशिका संरचना

root@kitploit:~
.
├── README.md                          # this file (English, canonical)
├── README_ja.md                       # Japanese mirror
├── SECURITY.md                        # reporting policy + responsible-disclosure disclaimer
├── .gitignore                         # blocks secrets / primary evidence from being committed
├── docs/
│   └── fix-direction.md               # root-cause fix + variant hunt + minimal-diff sketch (EN)
├── reproducer/                        # SAFE reproducer only (sandbox, mock upstream, benign oracle)
│   ├── README.md                      # how to stand up the network-isolated sandbox
│   ├── verdict.md                     # what "success" means: raw-byte match + 200-vs-403 + exit codes
│   ├── mock-openai-server.py          # benign mock; default happy-path PNG, ssrf_demo → file:///etc/hostname only
│   └── docker-compose.yml             # TEMPLATE: isolated Drupal sandbox + mock (you add the vulnerable target)
├── detections/
│   ├── README.md
│   ├── sigma/web-egress-to-internal-after-imagegen.yml
│   ├── sigma/php-sensitive-file-open.yml
│   ├── sentinel/imagegen-egress-correlation.kql
│   └── splunk/imagegen-content-type-mismatch.spl
└── timeline.md                        # disclosure timeline (single source of truth)

दस्तावेज़ वर्तमान में जापानी में हैं (.ja.md); अंग्रेज़ी विहित अनुवाद एक TODO है। इस रिपॉजिटरी से रोके गए: आर्मिंग पेलोड और कोई भी टर्नकी फ़ाइल-पठन PoC। सार्वजनिक reproducer/ एक एकल बेनाइन ओरेकल (/etc/hostname) का उपयोग करके मॉक के विरुद्ध दोष तंत्र प्रदर्शित करता है — कोई मनमाना-पथ पठन नहीं, कोई settings.php प्राप्ति नहीं, कोई IMDS नहीं। यह लाइव साइटों के विरुद्ध हथियार नहीं है। 1.1.1 / 1.2.2 पर अपडेट करें।


सुरक्षित रिप्रोड्यूसर

लक्ष्य: किसी शोधकर्ता को लाइव-लक्ष्य शोषण प्रदान किए बिना या रहस्य उजागर किए बिना दोष वर्ग की पुष्टि करने देना। सब कुछ ऑफ़लाइन चलता है।

  • अलगाव: ऐप और एक मॉक अपस्ट्रीम के साथ docker compose एक पृथक नेटवर्क पर (भाषा-प्रिमिटिव जाँचों के लिए --network none)। कोई क्रेडेंशियल माउंट नहीं। मॉक असली API से कभी बात नहीं करता।
  • वफ़ादार-अविश्वसनीय-अपस्ट्रीम मॉडल: मॉक "एक अविश्वसनीय प्रॉक्सी/self-hosted गेटवे की ओर इंगित host" की भूमिका निभाता है। यह एक सिंथेटिक लक्ष्य URL लौटाने के लिए आउट-ऑफ-बैंड (प्रॉम्प्ट के माध्यम से नहीं) सशस्त्र है — यह सही किए गए हमलावर मॉडल को कूटबद्ध करता है (अपस्ट्रीम URL चुनता है, उपयोगकर्ता केवल ट्रिगर करता है)।
  • केवल बेनाइन ओरेकल:
    • file:///etc/hostname और केवल ऐप कंटेनर के अंदर लिखा गया प्रति-रन अद्वितीय मार्कर → सिद्ध करता है कि ऐप ने एक अपस्ट्रीम-चयनित पथ पढ़ा (मार्कर मॉक पर अनुपस्थित)।
    • settings.php sha256 बाइट-मिलान द्वारा सत्यापित, सामग्री कभी जारी नहीं → बिना प्रकट किए "DB क्रेडेंशियल दायरे में" सिद्ध करता है।
    • कोई सार्वजनिक पोर्ट नहीं वाली एक आंतरिक HTTP सेवा → एक सिंथेटिक टोकन के साथ आंतरिक SSRF प्रतिक्रिया पुनर्प्राप्ति सिद्ध करती है।
  • निर्णय कच्चा-बाइट है, HTTP 200 नहीं: सफलता = परोसा गया बॉडी अपेक्षित सिंथेटिक मान के बाइट-बराबर है, साथ ही एक 200-बनाम-403 प्राधिकरण कंट्रास्ट। एक्ज़िट कोड सख्त हैं (0 शोषण-योग्य / 1 पूर्व-शर्त / 2 पुनरुत्पादित-नहीं / सफाई-विफल / त्रुटि)। देखें ।

देखें reproducer/README.md।


प्रकटीकरण समयरेखा

देखें timeline.md। सारांश:


पहचान मार्गदर्शन

व्यवसायी पहचानें detections/ में हैं; तर्क docs/detection-engineering.md में। संक्षेप में:

  • छवि निर्माण किसने ट्रिगर किया (ऐप ऑडिट) को API कॉल के बाद तंग समय विंडो में 169.254.169.254 / लूपबैक / RFC1918 तक असामान्य ईग्रेस (प्रॉक्सी / EDR) से सहसंबद्ध करें। केवल ईग्रेस पर अलर्ट न करें।
  • file:// पठन कभी नेटवर्क को नहीं छूते — होस्ट ऑडिटिंग (auditd/EDR) के माध्यम से वेब प्रक्रियाओं द्वारा संवेदनशील-फ़ाइल खोलने का पता लगाएँ, बेसलाइन किया हुआ ताकि केवल इमेज-जन अनुरोध के भीतर के ऑफ-पैटर्न पठन ही फायर हों।
  • पूर्वव्यापी रूप से image/*-घोषित बाइट्स जिनके मैजिक बाइट्स एक छवि नहीं हैं की खोज करें।
  • अधिकांश AI एकीकरण किस उपयोगकर्ता ने कौन-सा URL लाया लॉग नहीं करते — एक फ़ेच ऑडिट रिकॉर्ड जोड़ें {request_id, actor, target_url, scheme, resolved_ip, content_type}। अकेले मानक लॉग इसे नहीं पकड़ेंगे।

संदर्भ

  • OWASP Top 10 A10:2021 — सर्वर-साइड रिक्वेस्ट फ़ोर्जरी
  • CWE-918 SSRF · CWE-73 फ़ाइल नाम/पथ का बाहरी नियंत्रण · CWE-441 अनपेक्षित प्रॉक्सी/रिले · CWE-610 बाह्य रूप से नियंत्रित संदर्भ
  • PHP स्ट्रीम रैपर (file:// डिफ़ॉल्ट फ़ाइलसिस्टम रैपर है; allow_url_fopen द्वारा गेटेड नहीं)
  • Drupal सुरक्षा टीम — परियोजना के "Report a security vulnerability" के माध्यम से समन्वित प्रकटीकरण
  • एडवाइज़री: Drupal SA-CONTRIB-2026-053 — https://www.drupal.org/sa-contrib-2026-053
  • CVE: CVE-2026-13233 (CNA: Drupal.org)

सुरक्षा सूचना

  • प्रकटीकरण पूर्ण है (CVE-2026-13233 / SA-CONTRIB-2026-053), इसलिए उत्पाद/संस्करण/कोड विवरण सार्वजनिक हैं। पहले 1.1.1 / 1.2.2 पर अपडेट करें — बिना पैच वाली साइटें अभी भी मौजूद हैं।
  • reproducer/ केवल-सैंडबॉक्स है और सिंथेटिक ओरेकल का उपयोग करता है। यह नहीं है एक लाइव-लक्ष्य शोषण और इसमें कोई रहस्य नहीं हैं। इसे उन प्रणालियों के विरुद्ध न चलाएँ जिनके आप स्वामी नहीं हैं और जिनके परीक्षण हेतु अधिकृत नहीं हैं।
  • यहाँ कोई कार्यशील फ़ाइल-पठन PoC और रहस्यों वाला कोई प्राथमिक साक्ष्य शामिल नहीं है — जानबूझकर, सुधार के बाद भी, जब तक बिना पैच वाले परिनियोजन मौजूद हैं।

जिम्मेदार प्रकटीकरण अस्वीकरण

सभी शोध लेखक द्वारा एक स्व-स्वामित्व वाले, नेटवर्क-पृथक सैंडबॉक्स में, एक मॉक अपस्ट्रीम के विरुद्ध किए गए — असली विक्रेता API से कभी संपर्क नहीं किया गया, और किसी तृतीय-पक्ष प्रणाली का कभी परीक्षण नहीं किया गया। निष्कर्ष को पहले Drupal सुरक्षा टीम को निजी रूप से रिपोर्ट किया गया और केवल सुधार और एडवाइज़री के साथ तालमेल में प्रकाशित किया गया (SA-CONTRIB-2026-053, CVE-2026-13233); विक्रेता की रेटिंग मध्यम रूप से महत्वपूर्ण है। लेखक के CVSS आंकड़े एक अनंतिम स्व-मूल्यांकन हैं, आधिकारिक स्कोर नहीं, और जानबूझकर रूढ़िवादी रखे गए (कोई CVSS Critical/High नहीं) — विक्रेता की मध्य-बैंड रेटिंग के अनुरूप। यह सामग्री रक्षात्मक और शैक्षिक उद्देश्यों के लिए है। देखें SECURITY.md।

टूल डाउनलोड करें
3
99
reproducer/verdict.md
  • पारदर्शिता टिप्पणी: कोई भी पर्यावरण सामान्यीकरण (जैसे सैंडबॉक्स फ़ाइलें-निर्देशिका स्वामी को ठीक करना जिसे पिछले रूट-रन ने अलिखनीय छोड़ दिया था) प्रलेखित है और केवल सहेजें/सेव चरण को प्रभावित करता है, न कि फ़ाइल-पठन सिंक को। यह प्रकट किया गया है ताकि समीक्षक इसे हेरफेर की गई पूर्व-शर्त के रूप में गलत न पढ़ें।
  • दिनांकघटना
    2026-06-10स्थैतिक समीक्षा सिंक का पता लगाती है; निश्चित-पथ file:// पठन गतिशील रूप से पुष्ट
    2026-06-11मनमाना-पथ पठन + settings.php sha256 मिलान + आंतरिक HTTP SSRF पुष्ट
    2026-06-11प्रोडक्शन-उपभोक्ता पहुँच (ऑटोमेटर आंतरिक-पथ; FWA वैध-HTTP एक्सफिल)
    2026-06-11स्वतंत्र सहकर्मी समीक्षा अति-दावों को सुधारती है (हमलावर मॉडल, CVSS, allow_url_fopen); सबमिशन HOLD पर रखा गया
    2026-06/07HOLD आइटम साफ़ किए गए; Drupal सुरक्षा टीम को निजी रूप से रिपोर्ट; बेस-क्लास जुड़वाँ drupal/ai को ध्वजांकित
    2026-07-10सुधारित रिलीज़ 1.1.1 / 1.2.2; एडवाइज़री SA-CONTRIB-2026-053 और CVE-2026-13233 प्रकाशित; लेखक को खोजकर्ता और सुधार डेवलपर के रूप में श्रेय