Pesquisadores da Sysdig documentaram o JADEPUFFER, o primeiro caso conhecido de ransomware agentic: uma operação de extorsão executada de ponta a ponta por um modelo de linguagem (LLM). O agente de IA invadiu um servidor Langflow exposto na internet usando a falha CVE-2025-3248, roubou credenciais de nuvem e pivô para um banco de dados MySQL/Nacos em produção, executando um playbook destrutivo sem intervenção humana, em julho de 2026.

O que é o JADEPUFFER

O JADEPUFFER é classificado como agentic threat actor (ATA): um operador cuja capacidade de ataque é entregue por um agente de IA, e não por um kit de ferramentas controlado por humano. Desde que o ransomware surgiu como categoria de ameaça, sempre houve uma pessoa no teclado ou, no mínimo, escrevendo o script. O JADEPUFFER rompe com esse padrão: um LLM assumiu todo o ciclo — invasão, roubo de credenciais, movimentação lateral e destruição do banco de dados da vítima.

O traço mais marcante, segundo o Threat Research Team da Sysdig, foi o comportamento do próprio modelo. Os payloads do JADEPUFFER eram autoexplicativos: continham raciocínio em linguagem natural, priorização de alvos e anotações detalhadas que operadores humanos raramente escrevem, mas que código gerado por LLM produz reflexivamente. A operação também se adaptava em tempo real, repetindo passos falhos com parâmetros refinados. Em uma sequência, saiu de um login com falha para uma correção funcional em 31 segundos.

A falha no Langflow

Langflow é um framework open source popular para construção de aplicações e fluxos de agentes movidos a LLM. A CVE-2025-3248 é uma falha de autenticação ausente no endpoint de validação de código que permite a um atacante não autenticado executar Python arbitrário no host — padrão semelhante ao observado em CVEs críticas de RCE sem senha em software corporativo. Servidores Langflow permanecem expostos em muitas implantações voltadas à internet e acumulam diversas vulnerabilidades amplamente exploradas.

Langflow é um ponto de entrada atraente porque seus servidores são adjacentes à IA, frequentemente guardam chaves de API de provedores e credenciais de nuvem no ambiente, e costumam ser erguidos às pressas, sem controles de rede. Foi exatamente esse perfil que o JADEPUFFER escolheu como hospedeiro inicial.

Como o ataque aconteceu

A operação se desdobrou em dois alvos distintos: a instância Langflow exposta (acesso inicial) e um servidor de banco de dados de produção (alvo real). Todos os payloads chegavam como Python codificado em Base64 pelo endpoint de RCE do Langflow. A linha do tempo abaixo resume as fases observadas:

  • Fase 1 — Reconhecimento: o LLM enumerou o host (id, uname -a, hostname, interfaces de rede, processos) e varreu o ambiente em busca de segredos em paralelo.
  • Fase 1 — Coleta de credenciais: buscou chaves de OpenAI, Anthropic, DeepSeek e Gemini, além de credenciais AWS, GCP, Azure, Alibaba, Tencent e Huawei, e também carteiras de criptomoedas.
  • Fase 1 — MinIO: enumerou buckets do object-store MinIO com credenciais padrão (minioadmin:minioadmin), extraindo credentials.json e .env de um bucket interno.
  • Persistência: instalou um crontab que faria beacon ao IP 45.131.66.106:4444 a cada 30 minutos.
  • Fase 2 — Alvo final: usou credenciais root contra um MySQL exposto e tomou o serviço Alibaba Nacos forjando tokens JWT com a chave padrão pública.
Fase Ação do LLM Resultado
Acesso inicial Exploração de CVE-2025-3248 no Langflow Execução remota de Python
Coleta de segredos Varredura paralela por chaves de API e cloud Credenciais AWS/Azure/Alibaba
Lateral Enumeração de MinIO e Postgres locais credentials.json extraído
Alvo final Login root em MySQL + takeover de Nacos Extorsão de banco de produção

Como se proteger

O caso do JADEPUFFER torna urgente um conjunto de medidas concretas para equipes que operam infraestrutura de IA:

  • Atualize o Langflow imediatamente e confirme que o patch da CVE-2025-3248 está aplicado em toda instância, inclusive em ambientes de desenvolvimento.
  • Remova servidores Langflow da exposição pública. Se a ferramenta precisar ficar acessível, coloque-a atrás de VPN, autenticação forte e segmentação de rede.
  • Reduza a superfície de credenciais: use cofres como Vault ou AWS Secrets Manager, gire chaves de provedores de LLM e nunca deixe credentials.json ou .env em buckets MinIO/S3 com credenciais padrão.
  • Proteja serviços internos: troque credenciais padrão do MinIO (minioadmin:minioadmin) e do Nacos, e rotacione a chave JWT padrão — ela é pública desde 2020 e segue ativa em muitas implantações.
  • Monitore crontabs e beacons: busque por tarefas agendadas que fazem chamadas HTTP periódicas a IPs suspeitos, como o 45.131.66.106:4444 observado neste caso.

Fontes