
إعادة إنتاج وتحليل السبب الجذري للثغرة CVE-2026-39987 Marimo pre-auth WebSocket RCE في مختبر Docker محلي.
يركز هذا المشروع على CVE-2026-39987، وهي ثغرة تنفيذ تعليمات برمجية عن بُعد (Remote Code Execution) قبل المصادقة في Marimo تتعلق بنقطة نهاية WebSocket الخاصة بالطرفية /terminal/ws.
Marimo هو دفتر ملاحظات Python تفاعلي مفتوح المصدر يتيح للمستخدمين كتابة وتنفيذ تعليمات Python البرمجية عبر واجهة ويب. ولأن منصات دفاتر الملاحظات يمكنها تنفيذ التعليمات البرمجية على جانب الخادم، يجب حماية الميزات ذات الامتيازات مثل الوصول إلى الطرفية عبر مصادقة وتحكم مناسبين في الوصول.
في إصدارات Marimo المصابة، لم تُفرض المصادقة بشكل صحيح على نقطة نهاية WebSocket الخاصة بالطرفية. ونتيجة لذلك، كان بإمكان مستخدم غير مُصادَق عليه الوصول المحتمل إلى وظائف الطرفية وتنفيذ أوامر في البيئة التي يعمل فيها Marimo.
هدف هذا المشروع هو إعادة إنتاج الثغرة في مختبر Docker محلي، وتحليل السبب الجذري، ومقارنة الإصدارات المصابة والمُصحَّحة، والتحقق من أن الإصلاح يمنع المشكلة.
/terminal/ws/terminal/wsهذا المشروع لأغراض تعليمية فقط. ستُجرى جميع الاختبارات في بيئة مختبر Docker محلية.