Ataque com IA: Agente LLM Explora RCE no Marimo para Roubar Banco de Dados
Um ator de ameaça foi observado utilizando um agente de Large Language Model (LLM) para realizar atividades pós-comprometimento após explorar uma rede **Marimo** acessível publicamente. A cadeia de ataque, que explorou a **CVE-2026-39987**, resultou na exfiltração de um banco de dados PostgreSQL interno.
Um ator de ameaça desconhecido foi observado utilizando um agente de large language model (LLM) para conduzir ações pós-comprometimento após obter acesso inicial, seguindo a exploração de uma rede Marimo acessível publicamente com uma vulnerabilidade recentemente divulgada.

"O atacante comprometeu um notebook Marimo alcançável pela internet via CVE-2026-39987, extraiu duas credenciais de nuvem do host comprometido, as retransmitiu através de um pool de saída disperso para recuperar uma chave privada SSH do **AWS Secrets Manager**, e usou essa chave para realizar oito sessões SSH curtas contra um servidor bastion SSH downstream," disse a **Sysdig** [aqui](https://www.sysdig.com/blog/ai-agent-at-the-wheel-how-an-attacker-used-llms-to-move-from-a-cve-to-an-internal-database-in-4-pivots).
"A fase de bastion exfiltrou o esquema e o conteúdo completo de um banco de dados PostgreSQL interno em menos de dois minutos."
### CVE-2026-39987: Uma Vulnerabilidade Crítica de RCE
**CVE-2026-39987** refere-se a uma vulnerabilidade crítica de execução remota de código pré-autenticada que afeta todas as versões do Marimo anteriores e incluindo a 0.20.4. Ela permite que um atacante não autenticado execute comandos arbitrários do sistema. O problema foi corrigido na versão 0.23.0, lançada no mês passado.
O defeito de segurança tem sido alvo de exploração ativa, com atores de ameaça utilizando-o para iniciar reconhecimento manual contra sistemas honeypot e tentar coletar dados sensíveis.
### Agente LLM Automatiza Pós-Exploração
A atividade mais recente documentada pela Sysdig segue o mesmo padrão, sendo a principal diferença o uso de um agente LLM para conduzir a atividade pós-exploração. O incidente, segundo a empresa de segurança em nuvem, foi registrado em 10 de maio de 2026, com o atacante coletando credenciais do ambiente e, em seguida, usando a chave de acesso AWS obtida para realizar chamadas de API contra o AWS Secrets Manager e recuperar uma chave privada SSH.
Minutos depois, o ator de ameaça teria realizado a primeira autenticação SSH no servidor bastion SSH usando a chave recuperada, seguida pelo lançamento de oito sessões SSH paralelas contra o servidor downstream para roubar um banco de dados PostgreSQL interno. A cadeia de ataque de ponta a ponta durou pouco mais de uma hora.

### Indicadores de Envolvimento de LLM
A Sysdig disse ter descoberto quatro indicadores de que um agente LLM estava por trás da atividade:
1. O atacante improvisou um dump de banco de dados sem conhecimento prévio do esquema.
2. Um comentário de planejamento em chinês, "看还能做什么" traduzido como "Veja o que mais podemos fazer", vazou diretamente no fluxo de comandos ao executar uma busca por credenciais.
"O nome do host do banco de dados era opaco, sem identificador de aplicação no disco e sem dump de esquema pré-carregado, mas a cadeia ainda assim chegou a uma tabela de credenciais em minutos," disse a Sysdig. "O atacante não precisa mais ver seu ambiente para operar dentro dele."
3. Cada comando é projetado para consumo por máquina, com cada comando separado por um delimitador "---", juntamente com capturas de saída delimitadas, desabilitando o comando "less" e descartando o fluxo de erro (stderr) para minimizar ruído.
4. As transferências de valores são obtidas da saída de ferramentas anteriores. Em outras palavras, a maneira como certos valores, digamos, senhas de banco de dados, foram extraídos implica um agente de IA alimentando sua própria saída anterior -- executando um comando cat do arquivo "~/.pgpass" -- na próxima ação.
Em outro exemplo, um comando cat para imprimir o conteúdo de um arquivo específico ("cat ~/.ssh/id_ed25519") é precedido por um comando ls ("list") que passa o mesmo padrão de arquivo como entrada ("ls -la ~/.ssh/id_ed25519*") para confirmar que a chave SSH existe.
### Implicações para Defensores
"Quando um operador scriptado constrói um playbook por alvo e o reutiliza, a barreira para adicionar um novo alvo é o tempo de engenharia," concluiu a Sysdig. "No entanto, um operador agente carrega conhecimentos gerais sobre uma classe de aplicações e compõe a cadeia ao vivo para melhor se adequar ao seu alvo. Aqui, a barreira se torna o orçamento de inferência, não a autoria de playbooks."
"A propriedade relevante para o defensor de um agente no loop é a adaptabilidade. Um atacante scriptado encontra um arquivo ausente, um esquema inesperado ou uma falha de autenticação e aborta ou cai para um fallback codificado. Um agente lê a surpresa, decide o que tentar em seguida e continua."
### Recomendações
Para combater essa ameaça, recomenda-se que os usuários atualizem para a versão mais recente do Marimo, auditem seus ambientes em busca de quaisquer instâncias acessíveis publicamente e rotacionem credenciais, chaves de API e chaves SSH.