O Índice de Pacotes do Python (PyPI) suspendeu temporariamente o cadastro de usuários e a criação de novos projetos para lidar com uma campanha de malware em andamento.
O PyPI é um índice de projetos Python que auxilia desenvolvedores a encontrar e instalar pacotes Python.
Com milhares de pacotes disponíveis, o repositório é um alvo atrativo para atores de ameaças, que frequentemente fazem upload de pacotes falsificados ou falsos para comprometer desenvolvedores de software e ataques potenciais à cadeia de suprimentos.
Essa atividade forçou os administradores do PyPI a anunciar hoje mais cedo que todas as novas inscrições de usuários foram suspensas para permitir a mitigação de atividades maliciosas.
Um relatório da Checkmarx informa que atores de ameaças começaram ontem a fazer upload para o PyPI de 365 pacotes com nomes que imitam projetos legítimos.
Os pacotes incluem código malicioso dentro do arquivo ‘setup.py’ que é executado durante a instalação, tentando recuperar um payload adicional de um servidor remoto.
Para evitar detecção, o código malicioso é criptografado usando o módulo Fernet, e a URL do recurso remoto é construída dinamicamente quando necessário.
O payload final é um ladrão de informações com capacidades de persistência que visa dados armazenados em navegadores da web, como senhas de login, cookies e extensões de criptomoedas.
A Checkmarx disponibiliza em seu relatório a lista completa de entradas maliciosas que encontraram, que contém inúmeras variantes de typosquatting para muitos pacotes legítimos.
Segundo um relatório da Check Point, porém, a lista de pacotes maliciosos é superior a 500 e foram implantados em duas etapas.
Os pesquisadores dizem que cada pacote foi originado de contas de mantenedores únicas com nomes e e-mails distintos.
"Notavelmente, cada conta de mantenedor fez upload de apenas um pacote, indicando a utilização de automação na orquestração do ataque", explica a Check Point.
Os pesquisadores dizem que todas as entradas tinham o mesmo número de versão, continham o mesmo código malicioso, e os nomes parecem gerados por um processo de aleatorização.
Este incidente destaca a importância de desenvolvedores de software e mantenedores de pacotes que utilizam repositórios de código aberto verificarem rigorosamente a autenticidade e a segurança dos componentes que usam em seus projetos.
Esta não é a primeira vez que o PyPI toma medidas tão agressivas para proteger sua comunidade de submissões maliciosas.
Os mantenedores do repositório tomaram a mesma ação no ano passado, em 20 de maio.
Publicidade
O curso Python Básico da Solyd oferece uma rápida aproximação à linguagem Python com diversos projetos práticos. Indo do zero absoluto até a construção de suas primeiras ferramentas. Tenha também suporte e certificado gratuitos. Saiba mais...