
RAGFlow तीन-भेद्यता ऑडिट उपकरण (CVE-2026-28797 / CVE-2026-24770 / CVE-2025-69286)
RAGFlow त्रि-भेद ऑडिट उपकरण (CVE-2026-28797 / CVE-2026-24770 / CVE-2025-69286)
शुद्ध Python मानक पुस्तकालय, कोई तृतीय-पक्ष निर्भरता नहीं, Python 3.8+ पर सीधे चलाया जा सकता है।
python3 ragflow-audit.py [-h] {ssti,zipslip,apikey} ...
python3 ragflow-audit.py ssti --url http://TARGET:9380 --auth "AUTH_HEADER" [--component StringTransform|Message] [--newline]
--url: RAGFlow Web पता--auth: लॉगिन प्रतिक्रिया हेडर Authorization का पूर्ण मान--component: लक्ष्य घटक, डिफ़ॉल्ट StringTransform--newline: न्यूलाइन का उपयोग करके पेलोड को बायपास करें (_is_jinjia2 रेगेक्स जाँच को बायपास करता है)प्रक्रिया: दुर्भावनापूर्ण canvas DSL बनाएं -> कैनवास बनाने के लिए POST /v1/canvas/set -> निष्पादन ट्रिगर करने के लिए POST /v1/canvas/completion -> आउटपुट में uid= मिलान करके RCE सफल है या नहीं यह निर्धारित करें।
python3 ragflow-audit.py zipslip --zip evil.zip [--extract-dir /tmp/out]
ज़िप प्रविष्टियों की ऑफ़लाइन जाँच करें, तीन प्रकार के खतरों को चिह्नित करें: पाथ ट्रैवर्सल (..), निरपेक्ष पथ, सिम्बोलिक लिंक।
python3 ragflow-audit.py apikey --beta "分享链接token" --node "攻击者user_id后12位"
सार्वजनिक साझा लिंक के beta token से uuid1 विषय पुनर्स्थापित करें, time_low की गणना करें, उम्मीदवार token आउटपुट करें। वास्तविक शोषण करते समय उम्मीदवार token में से प्रत्येक के साथ प्रमाणीकरण-आवश्यक API को कॉल करें (200 हिट / 401 जारी रखें)।
RAGFlow की लॉगिन क्रेडेंशियल लॉगिन प्रतिक्रिया हेडर Authorization में होती हैं, body में मौजूद access_token में नहीं। body में मौजूद access_token केवल UUID है, API कॉल करने पर 401 मिलेगा।
curl -i -X POST http://TARGET:9380/v1/user/login \
-H 'Content-Type: application/json' \
-d '{"email":"[email protected]","password":"<RSA加密后的密码>"}'
प्रतिक्रिया हेडर authorization: का मान --auth पैरामीटर के रूप में लें।
नोट: पंजीकरण/लॉगिन के लिए पासवर्ड पहले RSA से एन्क्रिप्ट किया जाना चाहिए (सार्वजनिक कुंजी /ragflow/conf/public.pem में है, PKCS1_v1_5, एन्क्रिप्शन का उद्देश्य base64 के बाद का प्लेनटेक्स्ट है), सीधे प्लेनटेक्स्ट पासवर्ड भेजने पर त्रुटि होगी।
| CVE | प्रकार | प्रभावित संस्करण | सुधार संस्करण |
|---|---|---|---|
| CVE-2026-28797 | SSTI (StringTransform/Message घटक) | < 0.25.0 (NVD: 0.24.0 और पहले) | 0.25.0 (सैंडबॉक्स सुधार, 2026-03-02 को विलय) |
| CVE-2026-24770 | MinerU पार्सर Zip Slip | < 0.23.1 | 0.23.1 |
| CVE-2025-69286 | API key अनुमान योग्य (uuid1 + tenant_id कुंजी) | < 0.22.0 | 0.22.0 |
यह उपकरण केवल अधिकृत सुरक्षा परीक्षण और भेद्यता अनुसंधान के लिए है। बिना अनुमति के दूसरों के सिस्टम पर इस उपकरण का उपयोग करने से उत्पन्न परिणामों की ज़िम्मेदारी उपयोगकर्ता स्वयं वहन करेगा।