Quando as marcas se tornam perigosas: o segundo ataque a Trivy expõe credenciais e segredos da CI/CD

Publicada 5 min de lectura 121 leituras

A cadeia de fornecimento do software voltou a demonstrar sua fragilidade quando Trivy, o popular scanner de vulnerabilidades de código aberto mantido pelo Aqua Security, sofreu um segundo compromisso em poucas semanas que permitiu a distribuição de código malicioso projetado para roubar segredos de ambientes CI/CD. O incidente afetou tanto o repositório aquasecurity/trivy- action, usado para executar Trivy dentro do GitHub Actions, como a aquasecurity/setup-trivy, que facilita a configuração de uma versão concreta do scanner em fluxos de trabalho.

De acordo com a pesquisa pública, o atacante conseguiu reescrever a maioria das etiquetas de versão no repositório da ação oficial e apontar para commits maliciosos que incluíam um ladrão de credenciais escrito em Python. Ao modificar as tags, os atacantes converteram referências de versão supostamente confiáveis em um vetor de distribuição do malware, o que permitiu a execução do payload dentro dos runners do GitHub Actions e a extração de informação sensível presente nesses ambientes.

Quando as marcas se tornam perigosas: o segundo ataque a Trivy expõe credenciais e segredos da CI/CD
Imagem gerada com IA.

O software malicioso foi projetado para buscar e coletar uma ampla gama de segredos: variáveis de ambiente, chaves SSH, credenciais de provedores de nuvem, credenciais de bases de dados, configurações de Docker, tokens de Kubernetes e até pares de chaves e carteiras de criptomoedas associados com validadores de Solana. Após a coleta dessa informação, o código a cifrava e tratava de enviá-la para um servidor controlado pelo atacante; como mecanismo de contingência, se a exfiltração direta falhava, o malware tentava publicar os dados em um repositório público sob a conta do GitHub da vítima utilizando um token roubado.

Este episódio é a continuação de um incidente prévio envolvendo um bot autônomo apodado hackerbot-claw, que explodiu a açãopull_ request_targetPara obter um token de acesso pessoal (PAT) e depois utilizou-o para publicar versões maliciosas e modificar a infraestrutura do projeto. A própria Aqua Security reconheceu que, embora se rotaram segredos e tokens após aquela intrusão inicial, a contenção não foi completa e alguns credenciais comprometidos puderam seguir ativos durante a nova manipulação. Você pode ler-se mais sobre a cronologia e a resposta da empresa na discussão oficial no GitHub: comunicado do Aqua.

Várias assinaturas de segurança analisaram o código malicioso. Os relatórios técnicos apontam que o ladrão opera em etapas claras: primeiro recolhe dados sensíveis tanto da memória do processo do runner como do sistema de arquivos; em seguida, cifra o material roubado; e finalmente tenta transmiti-lo a um domínio controlado pelo atacante (identificado nos relatórios como scan.aquasecurtiy[.]org) ou, se isso não funcionar, usa o token capturado para aumentar a informação a um repositório público chamado "tpcp-docs". Relatórios adicionais e descrições técnicas estão disponíveis em blogs de pesquisa como os de Socket, Wiz e Step Security.

Quanto à atribuição, há indícios que apontam para um ator conhecido no ecossistema como TeamPCP (também identificado por várias alias). Parte do código se autodenomina "TeamPCP Cloud stealer" e elementos técnicos coincidem com ferramentas prévias atribuídas ao grupo, embora os pesquisadores assinalam que essa auto-adcrição poderia ser um señuelo. Para um contexto mais amplo sobre esta ameaça e suas táticas em ambientes cloud, Elastic Security Labs publicou material de referência que ajuda a compreender o modus operandi de atores como TeamPCP: Análise técnica de Elastic.

As implicações para projetos e equipamentos que dependem do GitHub Actions são claras: as referências a versões ou tags podem deixar de ser seguras se um ator com credenciais válidas reesscreve tags ou publica releases maliciosos. Por isso, especialistas recomendam evitar ancorar ações a etiquetas de versão móvel e, em seu lugar, usar o SHA completo do commit Para garantir que a acção executada seja exactamente a esperada. Essa recomendação técnica foi destacada por pesquisadores de Wiz como uma defesa prática contra o tipo de envenenamento de tags observado.

Se administrar pipelines a utilizar Trivy ou suas ações associadas, a resposta imediata deve ser preventiva e contundente. Aqua Security e as assinaturas que investigaram o incidente sugeriram verificar se está usando uma versão segura do software (por exemplo, Trivy 0.69.3, trivy-action 0.35.0 e setup-trivy 0.2.6 segundo os comunicados), tratar qualquer segredo que possa ter sido acessível como comprometido e proceder a rotar-lo de maneira prioritária. Além disso, bloquear a nível de rede o domínio de exfiltração e o endereço IP associado (referido por 45.148.10[.]212 nas análises) pode ajudar a atenuar as tentativas de transmissão de dados enquanto pesquisa.

Quando as marcas se tornam perigosas: o segundo ataque a Trivy expõe credenciais e segredos da CI/CD
Imagem gerada com IA.

Para além das ações reativas, há lições organizacionais importantes: os processos de rotação de credenciais devem ser atômicos e verificáveis, as permissões concedidas a Tokens e Máquinas devem ser mínimas por design, e as revisões de segurança de fluxos de trabalho devem incluir controles para detectar mudanças inesperadas em rótulos ou releases. Para compreender melhor a persistência que o malware tentava instalar em sistemas Linux mediante systemd, a discussão sobre este mecanismo em Red Canary traz contexto útil sobre como os atacantes tentam manter acesso em equipamentos afetados: explicação sobre persistência com systemd.

Finalmente, este caso sublinha que a segurança do software não termina ao publicar código: as infra-estruturas de entrega contínua e as contas com privilégios são alvo crítico. A combinação de revisões técnicas, práticas de gestão de segredos, e uma configuração de CI consciente da segurança é imprescindível para reduzir o risco de uma dependência legítima se tornar uma porta traseira para seus segredos. Fique atento às atualizações dos mantenedores e dos laboratórios de segurança que investigam o incidente e age com prudência se a sua organização pôde ter usado versões afetadas.

Fontes e leituras recomendadas: a análise de Socket sobre a nova onda de compromissos ( Socket), o relatório técnico de Wiz com detalhes do malware ( Wiz), o seguimento de Step Security sobre a versão maliciosa ( Step Security) e a discussão aberta do Aqua no GitHub ( Aqua Security).

Cobertura

Relacionadas

Mas notícias do mesmo assunto.