
Reproduktion und Ursachenanalyse von CVE-2026-39987 Marimo Pre-Auth-WebSocket-RCE in einem lokalen Docker-Lab.
Dieses Projekt befasst sich mit CVE-2026-39987, einer Pre-Authentication Remote Code Execution-Schwachstelle in Marimo im Zusammenhang mit dem Terminal-WebSocket-Endpunkt /terminal/ws.
Marimo ist ein quelloffenes reaktives Python-Notebook, das es Benutzern ermöglicht, Python-Code über eine Weboberfläche zu schreiben und auszuführen. Da Notebook-Plattformen Code serverseitig ausführen können, müssen privilegierte Funktionen wie der Terminalzugriff durch geeignete Authentifizierung und Zugriffskontrolle geschützt werden.
In verwundbaren Marimo-Versionen wurde die Authentifizierung am Terminal-WebSocket-Endpunkt nicht ordnungsgemäß durchgesetzt. Infolgedessen konnte ein nicht authentifizierter Benutzer potenziell auf die Terminalfunktionalität zugreifen und Befehle in der Umgebung ausführen, in der Marimo läuft.
Das Ziel dieses Projekts ist es, die Schwachstelle in einem lokalen Docker-Lab zu reproduzieren, die Ursache zu analysieren, die verwundbaren und gepatchten Versionen zu vergleichen und zu überprüfen, dass der Fix das Problem verhindert.
/terminal/ws/terminal/ws analysierenDieses Projekt dient ausschließlich Bildungszwecken. Alle Tests werden in einer lokalen Docker-Lab-Umgebung durchgeführt.