CVE-2026-39987CriticalCVSS: 9.3CVE-2026-39987: Kritische Pre-Auth RCE-Schwachstelle in marimo < 0.23.0
marimo, eine reactive Python-Notebook-Umgebung, weist in Versionen vor 0.23.0 eine kritische Sicherheitslücke auf. Der WebSocket-Endpunkt /terminal/ws führt keine Authentifizierung durch, sodass ein nicht authentifizierter Angreifer eine vollständige PTY-Shell erlangen und beliebige Systembefehle ausführen kann.
METADATEN
- Entdeckt:
- 09.04.2026
- Patch verfügbar:
- Ja
BETROFFENE SYSTEME
- •marimo-team marimo < 0.23.0
Zusammenfassung
In marimo, einer Open-Source reactive Python-Notebook-Umgebung, wurde eine kritische Pre-Auth Remote Code Execution (RCE)-Schwachstelle entdeckt. Der Terminal-WebSocket-Endpunkt /terminal/ws führt im Gegensatz zu anderen WebSocket-Endpunkten keine Authentifizierungsprüfung durch. Ein nicht authentifizierter Angreifer kann diese Schwachstelle ausnutzen, um eine vollständige PTY-Shell zu erhalten und beliebige Kommandos auf dem Zielsystem auszuführen. Der CVSS-Score beträgt 9.3 (Critical).
Technische Details
Die Schwachstelle (CVE-2026-39987) betrifft den WebSocket-Endpunkt /terminal/ws in marimo. Während andere WebSocket-Endpunkte wie /ws korrekt die Methode validate_auth() zur Authentifizierungsprüfung aufrufen, fehlt diese Prüfung im Terminal-Endpunkt vollständig. Der Endpunkt prüft lediglich den Ausführungsmodus und die Plattformunterstützung, bevor er die Verbindung akzeptiert. Dadurch kann ein Angreifer ohne gültige Anmeldeinformationen eine interaktive Shell-Sitzung öffnen.
Der Angriff erfordert keine vorherige Authentifizierung und kann über das Netzwerk ausgeführt werden. Die vollständige Kontrolle über das Terminal ermöglicht es dem Angreifer, beliebige Systembefehle auszuführen, Daten zu exfiltrieren, Malware zu installieren oder das System weiter zu kompromittieren.
Betroffene Systeme
- marimo-team marimo < 0.23.0
Alle Installationen von marimo vor Version 0.23.0 sind betroffen, sofern der Terminal-WebSocket-Endpunkt erreichbar ist.
Empfehlungen und Maßnahmen
- Sofortiges Patchen: marimo sollte umgehend auf Version 0.23.0 oder neuer aktualisiert werden.
- Netzwerksegmentierung: Falls ein Update nicht sofort möglich ist, sollte der Zugriff auf den
/terminal/ws-Endpunkt durch Netzwerkregeln (Firewall) eingeschränkt werden. - Zugriffskontrolle: Der Endpunkt sollte nur aus vertrauenswürdigen Netzwerken erreichbar sein.
- Überwachung: Überprüfen Sie Logs auf verdächtige WebSocket-Verbindungen zum
/terminal/ws-Pfad.