
Воспроизведение и анализ первопричины CVE-2026-39987 — pre-auth RCE через WebSocket в Marimo — в локальной лаборатории Docker.
Этот проект посвящён CVE-2026-39987 — уязвимости удалённого выполнения кода без аутентификации (pre-authentication Remote Code Execution) в Marimo, связанной с конечной точкой WebSocket терминала /terminal/ws.
Marimo — это открытый реактивный блокнот для Python, позволяющий пользователям писать и выполнять код Python через веб-интерфейс. Поскольку платформы блокнотов могут выполнять код на стороне сервера, привилегированные функции, такие как доступ к терминалу, должны быть защищены надлежащей аутентификацией и контролем доступа.
В уязвимых версиях Marimo аутентификация на конечной точке WebSocket терминала не применялась должным образом. В результате неаутентифицированный пользователь потенциально мог получить доступ к функциональности терминала и выполнять команды в среде, где запущен Marimo.
Цель этого проекта — воспроизвести уязвимость в локальной лаборатории Docker, проанализировать первопричину, сравнить уязвимую и исправленную версии и убедиться, что исправление устраняет проблему.
/terminal/ws/terminal/wsЭтот проект предназначен исключительно для образовательных целей. Все тестирования будут выполняться в локальной лабораторной среде Docker.