Langflow – एक ओपन-सोर्स प्लॅटफॉर्म जो डेव्हलपर्सना LLM प्रॉम्प्ट्स, डेटा सोर्सेस आणि कस्टम Python कोड एकत्र जोडण्यास मदत करतो – यामध्ये एक गंभीर त्रुटी (flaw) आहे, ज्यामुळे कोणीही असुरक्षित सर्व्हरवर कोणताही Python कोड रन करू शकतो. CVSS स्केलवर 9.8 रेटिंग असलेले CVE-2026-33017, 1.9.0 च्या आधीच्या सर्व व्हर्जनवर परिणाम करते आणि कोणत्याही ऑथेंटिकेशनशिवाय ट्रिगर होऊ शकते, ज्यामुळे ऑपरेटर्सना अपग्रेड करणे किंवा “public flow” फीचर बंद करणे भाग पडते.
ही त्रुटी काय करते
Langflow चा public-flow endpoint हा डेमो-स्टाईल चॅटबॉट्ससाठी बनवला होता, जे कोणीही लॉग-इन न करता वापरू शकते. हा endpoint रिक्वेस्ट बॉडीमध्ये एक data पॅरामीटर स्वीकारतो, पेलोडमध्ये (payload) सुरक्षित फ्लो डेफिनेशन आहे असे गृहीत धरतो आणि त्यानंतर त्या कंटेंटला थेट Python च्या इन-बिल्ट exec() फंक्शनकडे सोपवतो. exec() त्या स्ट्रिंगचे कोड म्हणून मूल्यांकन करते आणि Langflow प्रोसेसला असलेल्या समान विशेषाधिकारांसह (privileges) तो रन करते.
अटॅकरला फक्त public flow चा ID हवा असतो – ही एक व्हॅल्यू आहे जी सहसा शेअर केलेल्या URLs मध्ये दिसते – ज्यामुळे तो एक घातक (malicious) फ्लो डेफिनेशन बदलून नवीन रिक्वेस्ट तयार करू शकतो. जेव्हा सर्व्हर त्या रिक्वेस्टवर प्रक्रिया करतो, तेव्हा इंजेक्ट केलेला Python कोड लगेच रन होतो, ज्यामुळे अटॅकरला होस्ट सिस्टमवर पूर्ण नियंत्रण मिळते.
ही असुरक्षितता कशी निर्माण झाली
सुरुवातीच्या रिलीजेसमध्ये, जेव्हा data फील्ड उपलब्ध असे, तेव्हा डेटाबेस मधून फ्लो लोड करणारा कोड पाथ बायपास केला जात असे. पेलोडचे सॅनिटायझेशन (sanitising) किंवा व्हॅलिडेशन करण्याऐवजी, सर्व्हरने कॉलरवर विश्वास ठेवला आणि तो जसाच्या तसा कार्यान्वित केला. हा endpoint कोणत्याही लॉग-इनशिवाय वापरता येत असल्याने, ज्या Langflow इन्स्टन्समध्ये public flows सक्षम आहेत, त्यांच्यासाठी संपूर्ण पब्लिक इंटरनेट हे अटॅक सरफेस (attack surface) बनले आहे.
कोणाला धोका आहे
गंभीरतेच्या स्कोअरमुळे (severity score), ही असुरक्षितता "critical" मानली जाते.
त्वरित प्रतिबंधात्मक उपाय (mitigation steps)
- Langflow 1.9.0 वर अपग्रेड करा – हा एकमेव सत्यापित उपाय (verified fix) आहे.
- public flow फीचर बंद करा जर तुम्हाला अनामित (anonymous) प्रवेशाची गरज नसेल.
- AUTO_LOGIN बंद करा – यामुळे अन-ऑथेंटिकेटेड रिक्वेस्टसाठी ऑटोमॅटिक सेशन तयार होणे थांबते.
- API ला फायरवॉल किंवा रिव्हर्स प्रॉक्सीच्या मागे ठेवा जेणेकरून प्रवेश केवळ विश्वासार्ह IP रेंजपर्यंत मर्यादित राहील.
- Web Application Firewall (WAF) तैनात करा, जे
dataपॅरामीटर असलेल्याbuild_public_tmpendpoint कडे जाणाऱ्या रिक्वेस्ट ब्लॉक करेल.
हा उपाय का महत्त्वाचा आहे
ही असुरक्षितता एका मूलभूत डिझाइन चुकीचा फायदा घेते: उच्च विशेषाधिकारांसह (high privileges) चालणाऱ्या संदर्भात वापरकर्त्याने दिलेल्या कोडवर विश्वास ठेवणे. तो विश्वास काढून टाकून आणि अधिक कडक इनपुट हँडलिंग लागू करून, Langflow 1.9.0 सार्वजनिक डेमो युजर्स आणि मूळ सर्व्हर यांच्यातील अडथळा पुन्हा प्रस्थापित करते.
पुढे काय पाहावे
- कम्युनिटी प्रतिसाद (Community response) – पुढील पॅचेस किंवा सूचनांसाठी (advisories) Langflow रिपॉझिटरीवर लक्ष ठेवा.
थोडक्यात सांगायचे तर: ज्या कोणत्याही Langflow डिप्लॉयमेंटमध्ये public-flow endpoint उघडे आहे, त्यांना आजच पॅच करणे आवश्यक आहे. जोपर्यंत व्हर्जन 1.9.0 कार्यरत होत नाही, तोपर्यंत हे फीचर बंद ठेवा आणि नेटवर्क कंट्रोल्सच्या मागे सर्व्हिस सुरक्षित करा. डेटा ब्रीचचा (breach) खर्च जलद अपग्रेड करण्याच्या प्रयत्नांपेक्षा कितीतरी पटीने जास्त असू शकतो.
