Trivy sob o olho do furacão: ataque à cadeia de abastecimento expõe credenciais e sacola CI/CD

Publicada 6 min de lectura 109 leituras

A cadeia de fornecimento do software voltou a testar uma das suas rachaduras mais perigosas: Trivy, o scanner de vulnerabilidades do Aqua Security conhecido e usado em massa por desenvolvedores e equipamentos de segurança, foi aproveitado pelo grupo conhecido como TeamPCP para distribuir malware que rouba credenciais. O preocupante não é apenas contaminar uma ferramenta popular, mas a rapidez com que os atacantes aproveitaram acessos persistentes para seguir atacando outros vetores, como imagens em Docker Hub e a própria organização do GitHub de Aqua.

Trivy conta com uma comunidade ampla — seu repositório tem dezenas de milhares de estrelas no GitHub — e é usado para detectar vulnerabilidades, más configurações e segredos expostos em artefatos e ambientes. Essa popularidade amplifica o risco: qualquer compromisso no processo de construção ou distribuição pode propagar-se a muitas organizações e pipelines. Socket, uma assinatura dedicada à segurança da cadeia de abastecimento, informou que detectou imagens de Trivy publicadas em Docker Hub com etiquetas novas que não tinham correspondência com lançamentos oficiais, o que apontou artefatos comprometidos vinculados ao infostealer que os atacantes tinham comprometido pela organização do GitHub de Aqua. Você pode ler a análise de Socket aqui: socket.dev.

Trivy sob o olho do furacão: ataque à cadeia de abastecimento expõe credenciais e sacola CI/CD
Imagem gerada com IA.

Os pesquisadores assinalam que foram empurrados imagens rotuladas como 0.69.5 e 0.69.6 sem que existam versões oficiais equivalentes no GitHub; a última versão legítima conhecida nesse momento era a 0.69.3. Além disso, recordam uma regra básica, mas crítica: em Docker Hub as etiquetas não são imutávels por design, pelo que confiar apenas no nome de uma etiqueta para verificar a integridade de um recipiente é perigoso.

Aqua Security reconheceu que o incidente no GitHub não foi um acontecimento isolado, mas uma continuação de um acesso prévio que não ficou completamente conteúdo. De acordo com sua comunicação pública, durante a resposta inicial se rotaram segredos e tokens, mas o processo não foi “atômico”, o que poderia ter permitido aos atacantes aproveitar Tokens que se refrescaram durante a contenção. Aqua publicou uma explicação e atualizações em seu blog oficial: Aqua Security, e também manteve discussões abertas no GitHub sobre contenção ( ficheiro da discussão).

A dinâmica do ataque, segundo análise comunitária independente, foi muito direta: com acesso a uma conta de serviço que tinha permissões sobre múltiplas organizações do Aqua, os atacantes modificaram repositórios de forma maciça e adicionaram código para roubar credenciais dos runners da CI. Um relatório do OpenSourceMalware detalha como os autores automatizaram mudanças nos repositórios (por exemplo, adicionando prefixos aos nomes e mudando descrições) e por que acreditam que o ponto de entrada foi uma conta de serviço chamada Argon-DevOps-Mgt que usava um Personal Access Token (PAT) do GitHub em vez de um mecanismo mais seguro como um GitHub App. A análise completa está disponível aqui: OpenSourceMalware.

O detalhe técnico relevante: os PAT funcionam como senhas de longo prazo e, se estiverem presentes no ambiente de um runner de CI, podem ser exfiltrados por malware que recolhe tokens, chaves SSH, credenciais na nuvem e variáveis de ambiente. É justamente esse tipo de roubo o que atribuem à TeamPCP: um "cloud stealer" orientado para coletar segredos desde ambientes CI. Por isso os especialistas insistem em substituir, quando possível, credenciais longas por mecanismos de autorização efímera, como o fluxo OIDC ou GitHub Apps, e em reduzir a vida útil e privilégios de Tokens.

Aqua respondeu rapidamente publicando versões limpas de Trivy e contratando a assinatura de resposta a incidentes Sygnia para a pesquisa forense. No entanto, em 22 de março, a empresa relatou atividade adicional suspeita que indicava que os atacantes haviam conseguido restabelecer acessos não autorizados e haviam realizado mudanças em repositórios; ainda assim, Aqua afirma não ter visto impacto na edição comercial da sua plataforma, que incorpora Trivy com um processo de integração controlado e desfase deliberado em relação ao repo open-source. Sua atualização mais recente pode ser lida em seu blog oficial: comunicado do Aqua.

Se houver uma lição imediata, os ataques à cadeia de fornecimento combinam técnicas tradicionais (robo de tokens) com a exploração de práticas inseguras em pipelines e repositórios. Um erro de configuração, um token persistente ou um runner exposto podem transformar um incidente local em uma campanha de propagação em massa. Isso obriga as organizações a repensar como gerem segredos na CI, como validam a integridade dos artefatos publicados e como auditam acessos a nível de organização.

Trivy sob o olho do furacão: ataque à cadeia de abastecimento expõe credenciais e sacola CI/CD
Imagem gerada com IA.

Na prática, as recomendações que emergem deste episódio não são novas, mas sim urgentes: favorecer mecanismos de autenticação de curta duração e com alcance mínimo, usar o GitHub Apps ou opções de identidade federada em vez de PATs de longa duração, assegurar que as rotações de segredos sejam completas e atômicas, minimizar privilégios de contas de serviço, monitorar mudanças massivas em repositórios e, quando possível, assinar e verificar binários e imagens para evitar confiar apenas em nomes de etiquetas. O GitHub explica as diferenças entre os tipos de autenticação e boas práticas na sua documentação de segurança de autenticação: Documentação do GitHub.

Além de ajustes técnicos pontuais, este incidente evidencia uma necessidade cultural: as equipes de desenvolvimento e segurança devem operar com supostos ataques, projetando pipelines que "desconfíem por defeito" de seus próprios artefatos e que incorporem validações independentes antes de promover uma versão à produção. Também exige transparência por parte dos projetos que fazem parte da infraestrutura crítica do software; a comunicação oportuna e a publicação de indicadores de compromisso ajudam outras organizações a detectar e a quebrar cadeias de infecção.

No final, o caso de Trivy e Aqua Security é um lembrete contundente de que a confiança na cadeia de abastecimento é frágil. Não se trata apenas de reparar uma falha técnica: é um convite a endurecer processos, reduzir a dependência de segredos permanentes e assumir que qualquer componente amplamente distribuído pode ser alvo de ataque. Para quem administra pipelines e repositórios, a recomendação é clara: revisar quanto antes a gestão de tokens e runners, aplicar princípios de privilégio mínimo e monitorar as fontes oficiais de suas ferramentas. Para a comunidade em geral, fica a tarefa de exigir e construir mecanismos que permitam verificar a integridade do que instalamos e executamos em produção.

Cobertura

Relacionadas

Mas notícias do mesmo assunto.