Marimo sob vulnerabilidade crítica CVE-2026-39987 expõe segredos em minutos

Publicada 5 min de lectura 166 leituras

A comunidade de ciência de dados e desenvolvimento em Python tem-se despertado com uma notícia inquietante: poucas horas depois de se ter tornado pública uma vulnerabilidade grave em Marimo — um ambiente de notebooks reagentes de código aberto muito popular entre cientistas de dados, pesquisadores e criadores de aplicativos —, atacantes já estavam aproveitando essa falha para entrar e extrair segredos.

A vulnerabilidade, registrada como CVE-2026-39987, foi qualificada pelo GitHub com uma pontuação crítica (CVSS alta próxima a 9.3/10) e afeta versões de Marimo anteriores à correção. Essencialmente, um endpoint WebSocket exposto sob a rota /terminal/ws permitia acessar um terminal interativo sem que se verifiquem credenciais, o que abria a porta à execução remota de comandos com as mesmas permissões que o processo de Marimo.

Marimo sob vulnerabilidade crítica CVE-2026-39987 expõe segredos em minutos
Imagem gerada com IA.

Os desenvolvedores do projeto publicaram um aviso e depois lançaram uma versão corrigida, a 0, 0, para mitigar o problema. O aviso também especificou que o risco era especialmente relevante para aqueles que exibem Marimo em modo editável ou o expõem a redes compartilhadas usando a opção --host 0.0. 0. 0 em modo de edição.

Um relatório técnico da assinatura de segurança na nuvem Sysdig documenta como a exploração passou da teoria para a prática em tempo recorde. De acordo com a sua análise, nas primeiras 12 horas após a publicação dos detalhes, mais de uma centena de endereços IP realizaram digitalização em busca de instalações vulneráveis, e em menos de 10 horas foi observada a primeira sessão de exploração que, especificamente, roubou credenciais e segredos do sistema. O relatório do Sysdig descreve passo a passo como os atacantes validaram a falha, ligando-se ao endpoint vulnerável e executando um pequeno programa para verificar a execução remota antes de se desligar e voltar minutos depois para uma exploração manual mais detalhada ( Relatório Sysdig).

O que distingue este ataque não foi uma onda indiscriminada de scripts automáticos, mas a atuação de um operador que, segundo os pesquisadores, realizou uma operação metódica e dirigida. Na sessão activa, foram executados comandos básicos de reconhecimento do ambiente (como pwd, whoami e ls), procura de ficheiros sensíveis e, de forma muito rápida, leitura do ficheiro .env para extrair variáveis de ambiente, chaves de nuvem e segredos de aplicação. Todo esse acesso de credenciais foi concluído em menos de três minutos, e a sessão recorrente do atacante sugere um interesse claro por informações valiosas mais do que por instalação de malware a longo prazo.

A natureza do acesso facilita entender por que o dano pode ser imediato: obter variáveis de ambiente ou chaves SSH a partir de um ambiente de desenvolvimento pode permitir movimentos laterais, acesso a recursos na nuvem ou exfiltração de dados de produção. Embora neste caso não tenha sido detectada tentativa de persistência ou implantação de mineiros ou portas traseiras, a capacidade de tomar segredos em questão de minutos converte a vulnerabilidade numa prioridade para qualquer pessoa que tenha Marimo exposto.

Se você é administrador ou desenvolvedor que utiliza Marimo, as medidas a tomar são claras e urgentes. Primeiro, Actualizar para a versão 0.23.0 Deve ser a acção imediata para restaurar as verificações de autenticação no serviço. Se a atualização não for viável imediatamente, uma mitigação efetiva é bloquear ou desactivar o endpoint /terminal/ws no proxy ou firewall, e evitar expor o serviço a redes públicas. Além disso, convém monitorar as conexões WebSocket para essa rota e rotar qualquer segredo que possa ter sido exposto (variáveis de ambiente, chaves de acesso a serviços na nuvem, tokens de API, etc.).

A explicação técnica e a cronologia do ataque são uma lição sobre a janela de exposição que existe entre a divulgação responsável e o adesivo efetivo: a informação técnica, embora imprescindível para que as equipes possam patchar, também chega às mãos de atores com a capacidade de explorar falhas em questão de horas. Por isso, muitas organizações combinam adesivos rápidos com controles de rede adicionais e processos automatizados para detectar padrões de exploração e exfiltração.

Marimo sob vulnerabilidade crítica CVE-2026-39987 expõe segredos em minutos
Imagem gerada com IA.

Marimo não é um projeto menor: sua popularidade no GitHub — com dezenas de milhares de estrelas e diversos forks — implica que uma boa quantidade de ambientes de experimentação e protótipos podem ser afetados se as recomendações não forem aplicadas. Você pode rever o repositório oficial do projeto e o aviso de segurança em sua página do GitHub para mais detalhes técnicos sobre o adesivo e as condições que desencadeiam o risco: repositório de Marimo e a advisoria de segurança publicada pelos mantenedores.

Em suma, este incidente lembra duas coisas que deveriam ser óbvias e que muitas vezes não são: as ferramentas de desenvolvimento e os ambientes de notebooks não são inocuos por defeito quando expostos, e a velocidade de reação a uma vulnerabilidade pode marcar a diferença entre um sistema bem-sucedido e o compromisso de segredos sensíveis. Se você gerencia implantação de Marimo, prioriza a atualização, revisa o acesso de rede e assume que qualquer segredo exposto deve ser rotado.

Para acompanhar o caso e aprofundar os detalhes técnicos do ataque, as fontes principais são a base de dados NVD para a entrada da CVE ( CVE-2026-39987), o aviso e o adesivo no repositório de Marimo ( release 0.23.0) e a análise forense e cronológica publicada por Sysdig ( Relatório Sysdig), que oferecem as informações necessárias para entender o que aconteceu e como se protegeram.

Cobertura

Relacionadas

Mas notícias do mesmo assunto.