Categorias
Segurança

Roubo de token no SpotBugs resultou em ataque massivo no GitHub

O ataque à cadeia de suprimentos do GitHub, iniciado na Coinbase, foi rastreado ao roubo de um token de acesso do SpotBugs. Invasores exploraram workflows do GitHub Actions para comprometer repositórios e propagar o ataque.

O ataque à cadeia de suprimentos do GitHub, que inicialmente teve como alvo a Coinbase antes de se espalhar para usuários da ação “tj-actions/changed-files”, foi rastreado até o roubo de um token de acesso pessoal (PAT) associado ao SpotBugs.

Roubo de token no SpotBugs levou a ataque na cadeia de suprimentos do GitHub

Imagem com a logo do GitHub

Pesquisadores da Palo Alto Networks Unit 42 revelaram que os invasores obtiveram acesso inicial explorando o fluxo de trabalho do GitHub Actions do SpotBugs, uma ferramenta de código aberto usada para análise estática de bugs. Isso permitiu que eles se movimentassem lateralmente entre os repositórios do SpotBugs até comprometem o reviewdog.

Evidências sugerem que a atividade maliciosa teve início em novembro de 2024, mas o ataque à Coinbase só ocorreu em março de 2025. O comprometimento da ação do GitHub “reviewdog/action-setup” permitiu que os atacantes injetassem uma versão adulterada da ferramenta, posteriormente identificada como dependência na ação “tj-actions/eslint-changed-files”.

Exploração do GitHub Actions

O ataque foi facilitado pelo envio de um arquivo malicioso para o repositório “spotbugs/spotbugs” por meio de uma conta descartável, “jurkaofavak”. O fluxo de trabalho do GitHub Actions foi manipulado para expor o PAT do mantenedor do projeto, concedendo aos invasores acesso tanto ao repositório SpotBugs quanto ao reviewdog.

O ataque foi possível porque os invasores conseguiram permissões de gravação no repositório SpotBugs, permitindo-lhes acessar segredos do pipeline de integração contínua (CI). A investigação revelou que um dos mantenedores do projeto convidou “jurkaofavak” para o repositório, sem perceber a intenção maliciosa.

Impacto e lições aprendidas

A exploração foi possível devido ao uso do gatilho “pull_request_target” no GitHub Actions, que permite que workflows executados em forks tenham acesso a segredos, um vetor conhecido para ataques de execução de pipeline envenenado (PPE).

O mantenedor do SpotBugs confirmou que o PAT comprometido foi usado para convidar “jurkaofavak” para o repositório. Após a descoberta do ataque, os tokens de acesso foram rotacionados para evitar novos comprometimentos.

Ainda resta a dúvida sobre o motivo dos invasores terem esperado três meses para explorar o PAT vazado. A suspeita é que estavam monitorando projetos dependentes da “tj-actions/changed-files”, aguardando a oportunidade de atacar um alvo de alto valor, como a Coinbase. A falha expõe a importância de melhores práticas de segurança em projetos de código aberto e no GitHub Actions.

Por Jardeson Márcio

Jardeson é Mestre em Tecnologia Agroalimentar e Licenciado em Ciências Agrária pela Universidade Federal da Paraíba. Entusiasta no mundo tecnológico, gosta de arquitetura e design gráfico. Economia, tecnologia e atualidade são focos de suas leituras diárias.
Acredita que seu dia pode ser salvo por um vídeo engraçado.

Sair da versão mobile