SCHOCK: Eine WebSocket-Verbindung reicht — und der Hacker hat eine Shell!
Wer Marimo, das reaktive Python-Notebook, im Homelab oder im Team-Server laufen laesst, sollte JETZT updaten. CVE-2026-39987 ist eine Pre-Auth-RCE mit CVSS-Score 9.3 — und sie wird seit der Disclosure aktiv ausgenutzt. 10 Stunden, mehr brauchten die Angreifer nicht.
UNGLAUBLICH: Der Terminal-Endpoint hat einfach keine Authentifizierung!
Das Bug ist banal — und gerade deswegen so gefaehrlich: Der WebSocket-Endpoint /terminal/ws in Marimo prueft zwar den Running-Mode und die Plattform-Kompatibilitaet, ruft aber NICHT die Funktion validate_auth() auf, die alle anderen WebSocket-Endpoints schoen brav benutzen. Ein unauthentisierter Angreifer kann sich also einfach verbinden — und bekommt eine volle PTY-Shell mit den Rechten des Marimo-Prozesses.
Sprich: Wenn Marimo als Root laeuft (Docker-Default in vielen Setups), wird der Angreifer Root. Wenn als User laeuft, kann er von dort lateral weitermachen.
GEFAHR! NKAbuse-Malware spreitet sich JETZT via Marimo!
Sysdig hat zwischen 11. und 14. April 2026 schon 662 Exploit-Events beobachtet — und die Angreifer rollen die NKAbuse-Malware aus. Das Ding nutzt das NKN-P2P-Protokoll, um Befehle ueber ein dezentrales Netzwerk zu beziehen — klassisches C2-Hide-and-Seek.
Wer also einen Marimo-Server offen im Internet hat oder im Homelab unter 0.20.4 laeuft, ist nicht mehr nur theoretisch verwundbar. Du bist real ein Ziel.
So rettest du DEIN Notebook in 5 MINUTEN!
- Aktuelle Version pruefen: marimo –version oder im Container docker exec … marimo –version.
- Wenn unter 0.23.0: Sofort upgraden. Bei pip: pip install –upgrade marimo. Bei Docker: Image neu pullen.
- Server-Logs durchsuchen nach Zugriffen auf /terminal/ws aus unbekannten IPs.
- Wenn moeglich: Marimo hinter einen Reverse-Proxy mit Auth stellen (Caddy mit Basic Auth, Nginx mit OAuth2-Proxy oder Cloudflare Access).
EXTRA-TIPP: Marimo gehoert NICHT direkt ins Internet!
Auch nach dem Patch gilt: Notebook-Server sind kein Web-Service fuer die Oeffentlichkeit. Wer Marimo, Jupyter oder n8n von ausserhalb braucht, faehrt das ueber ein VPN (Tailscale, WireGuard, Headscale) oder einen Identity-aware-Proxy. Direkt freistellen ist Russisch Roulette.
FAZIT: Self-Hosting-Disziplin zaehlt!
Marimo ist ein cooles, modernes Python-Notebook — aber eine fehlende Auth-Pruefung in EINEM Endpoint zeigt, wie heikel Self-Hosting bleibt. Patches einspielen, Auth davorhaengen, Logs anschauen. Sonst landet dein Heim-Server in einem P2P-Botnet.
Häufige Fragen
Welche Versionen sind betroffen?
Wie merke ich, ob mein System verwundbar ist?
Wie behebe ich das Problem konkret?
Gab es schon aktive Angriffe?
Quellen