Uma falha sem correção no Argo CD, uma das ferramentas mais usadas para deploy no Kubernetes, permite que um invasor sem autenticação assuma o controle total do cluster. Descoberta pela empresa de segurança Synacktiv e divulgada em 1º de julho de 2026, a brecha no componente repo-server está aberta há 18 meses sem patch. O ataque exige apenas que o agente alcance a porta interna do serviço — algo que a configuração padrão do Helm chart, por padrão desligada, não impede. Equipes de DevOps brasileiras que rodam GitOps precisam isolar a rede agora.

Pontos-chave da falha

  • Ferramenta afetada: Argo CD, solução de entrega contínua declarativa para Kubernetes, presente em milhares de clusters pelo mundo.
  • Componente vulnerável: repo-server, que lê repositórios Git e gera os manifestos de deploy.
  • O que permite: execução remota de código sem autenticação e tomada total do cluster via envenenamento do cache Redis.
  • Status da correção: inexistente. A Synacktiv reportou o problema em janeiro de 2025; 18 meses depois, segue sem patch.
  • Defesa imediata: ativar as políticas de rede do Kubernetes que isolam o repo-server e o Redis.

Onde mora a falha

O repo-server é o componente do Argo CD encarregado de ler repositórios Git e construir os manifestos do Kubernetes — os arquivos que definem o que o cluster vai implantar. Segundo a The Hacker News, o serviço gRPC interno desse componente simplesmente não tem autenticação. Qualquer um que consiga alcançar a porta de rede correspondente pode enviar um pedido malicioso e executar código no servidor.

A técnica abusa do kustomize, uma ferramenta padrão que o Argo CD executa para transformar arquivos do repositório em manifestos. O kustomize tem uma opção --helm-command que aponta para o binário do Helm que deve ser chamado. A Synacktiv descobriu que um pedido não autenticado ao serviço GenerateManifest do repo-server consegue alterar essa opção para apontar a um script hospedado em um repositório Git controlado pelo atacante. Quando o kustomize roda, executa o script em vez do Helm.

Como o ataque toma o cluster

Rodar código no repo-server é só o começo. A cadeia de ataque demonstrada pela Synacktiv vai muito além e termina com o invasor controlando tudo o que o cluster implanta. O passo a passo é direto:

  1. O atacante executa código no repo-server por meio da falha do kustomize.
  2. Com esse acesso, lê a senha do Redis do cluster a partir de uma variável de ambiente.
  3. Conecta ao cache Redis do Argo CD e envenena os dados de deploy armazenados.
  4. No próximo sync automático, o Argo CD implanta uma carga de trabalho fornecida pelo atacante.

Esse último estágio ressuscita a CVE-2024-31989, uma falha de 2024 descoberta pela Cycode, em que o Redis do Argo CD não tinha senha e qualquer pod do cluster conseguia envenenar o cache de deploy. O Argo CD corrigiu aquele problema ao adicionar uma senha ao Redis, mas o cache em si segue sem assinatura — então roubar a senha de volta reabre o mesmo ataque.

O perigo da configuração padrão

A palavra “interno” dá uma falsa sensação de segurança. O Argo CD traz políticas de rede do Kubernetes que isolam o repo-server de tudo, exceto dos próprios componentes do Argo. O problema é que o Helm chart — a forma mais comum de instalar a ferramenta — vem com a opção networkPolicy.create definida como false por padrão, conforme detalhou o BitNewsBot.

Com as políticas desligadas, um atacante que comprometa um único pod do cluster consegue alcançar o repo-server e acionar a falha. Em outras palavras: a brecha existe, mas só vira arma porque a instalação típica não liga a proteção que já vem pronta no produto.

Dezoito meses sem correção

O detalhe mais incômodo desta história é o tempo. A Synacktiv reportou a falha aos mantenedores do Argo CD em janeiro de 2025. Dezoito meses depois, na divulgação de julho de 2026, continua sem correção e sem CVE atribuída. A empresa decidiu publicar os detalhes justamente para forçar a mão e alertar os usuários.

A demonstração foi feita contra a versão 2.13.3 do Argo CD, e não há lista completa de versões afetadas. A Synacktiv construiu uma ferramenta chamada argo-cdown, que automatiza o ataque inteiro, mas está segurando a publicação no GitHub para dar tempo aos defensores de trancarem suas políticas de rede. Não é a primeira vez que o Argo CD expõe os próprios segredos: em setembro de 2025, a CVE-2025-55190 permitiu que um token com acesso só de leitura roubasse credenciais de repositório Git; em maio de 2026, a CVE-2026-42880 deixou usuários de baixo privilégio lerem secrets do Kubernetes em texto puro.

Por que importa para o Brasil

O Argo CD é peça central do movimento GitOps, adotado por fintechs, scale-ups, bancos digitais e áreas de TI de grandes empresas brasileiras que rodam Kubernetes na nuvem. A promessa do GitOps é elegante: o estado desejado do cluster vive no Git, e o Argo CD sincroniza tudo sozinho. Quando o sincronizador é comprometido, porém, o atacante se transforma no dono de toda a pipeline de deploy — e consegue implantar cargas maliciosas em dezenas de ambientes de uma só vez.

O cenário de risco é concreto: um atacante que invada um pod qualquer do cluster (por uma falha de aplicação, um container vulnerável ou credenciais vazadas) escala para o repo-server, envenena o Redis e passa a controlar o que sobe em produção. Em uma fintech, isso significa acesso a ambientes que processam transações financeiras e dados de clientes. O vetor segue o mesmo padrão de outros ataques recentes a pipelines de entrega, como a falha CI/CD do Cordyceps, que expôs milhões de repositórios, e da RCE crítica no Jenkins que colocou servidores de integração em risco: quando o atacante alcança a automação de deploy, o prejuízo se multiplica.

O que fazer agora

Como não existe versão corrigida, a defesa é isolamento de rede. As recomendações da Synacktiv são objetivas:

  • Ative as políticas de rede do Kubernetes que já vêm com o Argo CD, de modo que apenas os componentes do próprio Argo consigam alcançar o repo-server e o Redis. Usuários do Helm precisam habilitá-las manualmente, pois o chart vem com elas desligadas.
  • Verifique o estado atual com o comando kubectl get networkpolicy -A. Uma instalação saudável mostra uma política por componente, incluindo repo-server e Redis. Se essas políticas estiverem ausentes, as portas estão alcançáveis pelo restante do cluster.
  • Restrinja o acesso ao Redis e monitore conexões anômalas ao cache de deploy, já que o roubo da senha reabre o vetor de envenenamento.
  • Revise permissões de pods e segredos expostos em variáveis de ambiente, especialmente a senha do Redis, que o ataque lê diretamente.
  • Acompanhe a publicação do argo-cdown, que a Synacktiv vai liberar no GitHub para que administradores testem seus próprios deploys — use-o para auditar o cluster assim que estiver disponível.

O padrão é claro e repetitivo: o Argo CD concentra acesso ao cluster e segredos de repositório em poucas superfícies internas, e essas superfícies continuam entregando o controle a pedido — sem autenticação numa falha, com token de baixo privilégio na outra. Isolar a rede deixou de ser opcional.

Referências