CVE-2026-45019 in Chainlitالمعلومات

الملخص

بحسب VulDB • 25/08/2026

Chainlit هو إطار عمل بلغة Python لتطبيقات الذكاء الاصطناعي التفاعلية الجاهزة للإنتاج. من الإصدار 2.4.0rc0 حتى 2.12.0، تعرض عمليات نشر Chainlit التي تكون فيها خاصية `features.mcp.enabled` مضبوطة على `true` في ملف `.chainlit/config.toml` نقطة النهاية `/mcp` الخاصة بـ POST دون الحاجة إلى المصادقة. بالنسبة لبروتوكولات النقل SSE و streamable-http، تقبل الدالتان `ConnectSseMCPRequest` و `ConnectStreamableHttpMCPRequest` الموجودتان في الملف `backend/chainlit/types.py` عنوان URL يتحكم فيه المهاجم وقاموس رؤوس اختياري دون التحقق من المخطط (scheme)، أو تصفية العناوين الخاصة، أو استخدام قائمة مسموح بها. يقوم معالج الاتصال بـ MCP (`connect_mcp`) الموجود في ملف `backend/chainlit/server.py` بتوجيه هذه القيم إلى دالتي `sse_client()` و `streamablehttp_client()`، مما يسمح لخادم Chainlit بإجراء طلبات خارجية عمياء (blind outbound requests) نحو خدمات داخلية أو خارجية عشوائية، بما في ذلك نقاط نهاية بيانات السحابة الإلكترونية (cloud metadata endpoints)، مع استخدام رؤوس Authorization و Cookie يتحكم فيها المهاجم. كانت ثغرة استهداف عنوان URL الخاص بـ SSE موجودة منذ الإصدار 2.4.0rc0، بينما أُضيفت ميزة توجيه الرؤوس التي يتحكم فيها المهاجم ودعم streamable-http في الإصدار 2.6.4. يتم استهلاك الاستجابة داخلياً ولا تُعاد إلى العميل، لكن يمكن للمهاجم إصدار طلبات مصدقة تغير الحالة (state-changing)، واكتشاف الخدمات الداخلية، وفحص المنافذ (port scanning)، واستكشاف نقاط نهاية البيانات الوصفية. تم إصلاح هذه المشكلة في الإصدار 2.12.0.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

مسؤول

GitHub M

حجز

08/05/2026

إفشاء

25/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-395219

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you know our Splunk app?

Download it now for free!