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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-33234 — SSRF via smtplib रॉ TCP सॉकेट्स द्वारा AutoGPT SendEmailBlock में HTTP ब्लॉकलिस्ट को बायपास करना | Kitploit
उपकरण/GitHubGitHub/pavanchow/cve-2026-33234
भेद्यता विश्लेषणशोषणजानकारी एकत्र करनावेब सुरक्षानेटवर्क सुरक्षा
GitHubpavanchow/cve-2026-33234

CVE-2026-33234

SSRF via smtplib रॉ TCP सॉकेट्स द्वारा AutoGPT SendEmailBlock में HTTP ब्लॉकलिस्ट को बायपास करना

रिपॉजिटरी देखें
14घं 17मि पहलेअभी तक समीक्षित नहीं
वेबसाइट

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

सभी देखें →

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

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

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

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

Hero Banner

मैंने AutoGPT की ईमेल सुविधा को आंतरिक नेटवर्क स्कैनर में कैसे बदला

CVE-2026-33234 | मध्यम 5.0 | GHSA-4jwj-6mg5-wrwf लेखक: Pavan Nallamothu


मैं AutoGPT Platform में नेटवर्क को छूने वाले हर उपयोगकर्ता-नियंत्रित इनपुट का मानचित्रण कर रहा था। HTTP परत पूरी तरह से सुरक्षित थी। निजी IP रेंज (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), लूपबैक, क्लाउड मेटाडेटा एंडपॉइंट — सभी ब्लॉकलिस्टेड थे। मैंने कई कोणों से HTTP गेट की पुष्टि की। कुछ भी अंदर नहीं घुसा।

फिर मैंने SendEmailBlock कॉन्फ़िग स्कीमा खोला।

SMTP सर्वर फ़ील्ड एक फ्री-टेक्स्ट इनपुट था। कोई एडमिन क्रेडेंशियल नहीं। कोई लॉक-डाउन कॉन्फ़िगरेशन नहीं जो डिप्लॉयमेंट पर एक बार सेट होता है। एक फ़ील्ड जिसे कोई भी प्रमाणित उपयोगकर्ता अपनी इच्छानुसार भर सकता था। मैंने कोड पथ का पता लगाया और पाया कि smtplib.SMTP() एक रॉ TCP सॉकेट खोलता है। वह कनेक्शन कभी भी HTTP पथ से नहीं गुजरता जहाँ IP ब्लॉकलिस्ट रहती है। प्लेटफ़ॉर्म में दो आउटबाउंड पथ मौजूद थे। केवल एक सुरक्षित था।

मैंने SMTP सर्वर को localhost:22 पर इंगित किया।

SSH बैनर त्रुटि संदेश में वापस आ गया। smtplib जो भी आप देते हैं उससे कनेक्ट होता है, SMTP 220 ग्रीटिंग पढ़ने की कोशिश करता है, और जब उसे कुछ और मिलता है, तो रॉ बाइट्स को SMTPConnectError में लपेट देता है। वह अपवाद AutoGPT के निष्पादन ढांचे के माध्यम से फैलता है और ब्लॉक आउटपुट में स्पष्ट रूप से दिखाई देता है। मैं HTTP परत को छुए बिना लक्ष्य का SSH संस्करण स्ट्रिंग देख रहा था।

यही चीज़ इसे दिलचस्प बनाती है। smtplib केवल एक ईमेल क्लाइंट नहीं है। यह संरचित त्रुटि रिपोर्टिंग के साथ एक TCP बैनर ग्रैबर है। इसे पोर्ट 6379 पर इंगित करें और आपको Redis का प्रोटोकॉल सिग्नेचर मिलता है। इसे बंद पोर्ट पर इंगित करें और ConnectionRefusedError आपको बताता है कि होस्ट जीवित है लेकिन पोर्ट बंद है। इसे 169.254.169.254:80 पर इंगित करें और आप पुष्टि करते हैं कि क्लाउड मेटाडेटा एंडपॉइंट पहुंच योग्य है। प्रत्येक कनेक्शन प्रयास एक अलग, सूचनात्मक त्रुटि लौटाता है। एक सुविधा के माध्यम से नॉन-ब्लाइंड SSRF जो ईमेल भेजने वाली थी।

SMTPConfig डिज़ाइन समस्या को और बढ़ा देता है। एक सुरक्षित आर्किटेक्चर में, SMTP सर्वर पता एक एडमिन-नियंत्रित क्रेडेंशियल होगा — एक बार सेट, लॉक, उपयोगकर्ताओं को कभी उजागर नहीं। इसके बजाय, यह एक प्रति-निष्पादन इनपुट है। हर प्रमाणित उपयोगकर्ता नियंत्रित करता है कि प्लेटफ़ॉर्म TCP कनेक्शन कहाँ खोलता है।

root@kitploit:~
# SendEmailBlock कॉन्फ़िगरेशन - SMTP सर्वर को आंतरिक लक्ष्यों पर सेट करें

# SSH स्कैन करें
smtp_server = "10.0.0.5"
smtp_port = 22
# त्रुटि प्रकट करती है: "SSH-2.0-OpenSSH_8.9p1 Ubuntu-3ubuntu0.6"

# Redis स्कैन करें
smtp_server = "10.0.0.5"
smtp_port = 6379
# त्रुटि प्रकट करती है: "-ERR unknown command ..."

# बंद पोर्ट स्कैन करें
smtp_server = "10.0.0.5"
smtp_port = 9999
# त्रुटि प्रकट करती है: "ConnectionRefusedError" (पोर्ट बंद, होस्ट जीवित)

# क्लाउड मेटाडेटा हिट करें
smtp_server = "169.254.169.254"
smtp_port = 80
# मेटाडेटा एंडपॉइंट पहुंच की पुष्टि करता है

मैंने ब्लॉक निष्पादन API के माध्यम से पूरी श्रृंखला सत्यापित की:

root@kitploit:~
# ब्लॉक निष्पादन API के विरुद्ध समतुल्य प्रत्यक्ष परीक्षण
curl -X POST https://autogpt-platform/api/blocks/execute \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "block_id": "send_email_block",
    "inputs": {
      "smtp_server": "10.0.0.5",
      "smtp_port": 22,
      "to": "[email protected]",
      "subject": "test",
      "body": "test"
    }
  }'
# प्रतिक्रिया में SSH बैनर के साथ SMTPConnectError शामिल है
root@kitploit:~
graph LR
    A[Attacker sets SMTP server to internal IP] --> B[SendEmailBlock calls smtplib.SMTP]
    B --> C[Raw TCP connect to target:port]
    C --> D{Service responds?}
    D -->|Yes| E[Banner read as SMTP greeting]
    E --> F[SMTPConnectError with banner data]
    F --> G[Error propagates to block output]
    D -->|No| H[ConnectionRefused = port closed]
    G --> I[Attacker reads service version]

यह जो हमला सतह खोलता है वह महत्वपूर्ण है। SSH बैनर सटीक संस्करण प्रकट करते हैं (OpenSSH_8.9p1 Ubuntu-3ubuntu0.6)। Redis अपना प्रोटोकॉल सिग्नेचर लीक करता है। MySQL अपना संस्करण स्ट्रिंग भेजता है। प्रत्येक बैनर एक CVE लुकअप है जो होने की प्रतीक्षा कर रहा है। एक हमलावर आंतरिक नेटवर्क का मानचित्रण करता है, हर चालू सेवा और उसके सटीक संस्करण की पहचान करता है, फिर सबसे कमजोर को लक्षित करता है। यह सब "SMTP सर्वर" लेबल वाले टेक्स्ट फ़ील्ड से।

तीन लापता जाँचों ने यह बनाया: SMTP पथ पर कोई IP सत्यापन नहीं, कोई पोर्ट प्रतिबंध नहीं, कोई अपवाद स्वच्छता नहीं। प्लेटफ़ॉर्म ने "आउटगोइंग मेल" लेबल वाले को छोड़कर हर आउटबाउंड दरवाजे की रक्षा की।

मैंने Significant Gravitas को समस्या की सूचना दी। उन्होंने तुरंत आर्किटेक्चरल अंतर को समझ लिया।

इसमें ठीक किया गया: autogpt-platform-backend 0.6.52 (SMTP सर्वर सत्यापन ब्लॉकलिस्ट प्रवर्तन में जोड़ा गया, पोर्ट प्रतिबंध लागू किए गए)

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