
Uma campanha coordenada de criação de tokens continua a inundar o registro npm de código aberto, com dezenas de milhares de pacotes infectados criados quase diariamente para roubar tokens de desenvolvedores desavisados que usam o Tea Protocol para recompensar o trabalho de codificação.
Na quinta-feira, pesquisadores da Amazon disseram foram mais de 150 mil pacotes na campanha. Mas em uma entrevista na sexta-feira, um executivo da Sonatype, fornecedora de gerenciamento da cadeia de suprimentos de software program, que escreveu sobre a campanha em abril de 2024, disse OSC esse número agora cresceu para 153.000.
“É uma pena que o worm ainda não esteja sob controle”, disse o CTO da Sonatype Brian Fox.
E embora essa carga apenas roube tokens, outros atores de ameaças estão prestando atenção, previu ele.
“Tenho certeza de que alguém no mundo está olhando para esse worm de replicação massiva e se perguntando se consegue montá-lo, não apenas para obter os tokens do Tea, mas para colocar algum malware actual nele, porque se ele está se replicando tão rápido, por que você não o faria?”
Quando Sonatype escreveu sobre a campanha há pouco mais de um anoencontrou apenas 15 mil pacotes que pareciam vir de uma única pessoa.
Com os números aumentados relatados esta semana, os pesquisadores da Amazon escreveram que é “um dos maiores incidentes de inundação de pacotes na história do registro de código aberto e representa um momento decisivo na segurança da cadeia de suprimentos”.
Esta campanha é apenas a forma mais recente de os agentes de ameaças aproveitarem as falhas de segurança em vários repositórios de código aberto, o que corre o risco de prejudicar a reputação de websites como npm, PyPI e outros.
Conteúdo relacionado: Ataques à cadeia de abastecimento e suas consequências
“A infestação de malware em repositórios de código aberto é uma crise complete, fora de controle e corroendo perigosamente a confiança na cadeia de fornecimento upstream de código aberto”, disse Dmitry RaidmanCTO da Cybeats, que fabrica uma solução de lista de materiais de software program.
Como prova, ele apontou para ta rápida exploração do worm Shai-Hulud do ecossistema npm, que mostra a rapidez com que os invasores podem sequestrar tokens de desenvolvedor, corromper pacotes e propagar-se lateralmente por todo o ecossistema de dependências. “O que começou como um único compromisso explode em poucas horas, deixando todo o ecossistema e todos os projetos downstream da indústria em risco em questão de dias, independentemente de ser de código aberto ou comercial.”
Em setembro passado, Raidman escreveu sobre o comprometimento do sistema de compilação Nx depois que os agentes da ameaça enviaram versões maliciosas do pacote para o npm. Em poucas horas, escreveu ele, desenvolvedores de todo o mundo estavam extraindo, sem saber, códigos que roubavam chaves SSH, tokens de autenticação e carteiras de criptomoedas.
Estes e os mais recentes uploads em grande escala de pacotes maliciosos para repositórios de código aberto são “apenas o começo”, alertou ele, a menos que os desenvolvedores e mantenedores de repositórios melhorem a segurança.
Os relatórios Amazon e Sonatype não são os primeiros a detectar esta campanha. Pesquisador australiano Paul McCarty do SourceCodeRed confirmou-nos que este é o worm que ele apelidou de ‘IndonesianFoods’ em um weblog esta semana.
O Protocolo do Chá
O Tea Protocol é uma plataforma baseada em blockchain que oferece aos desenvolvedores de código aberto e aos mantenedores de pacotes tokens chamados Tea como recompensa por seu trabalho de software program. Esses tokens também devem ajudar a proteger a cadeia de fornecimento de software program e permitir a governança descentralizada em toda a rede. dizem seus criadores em seu web site.
Os desenvolvedores colocam o código do Tea vinculado ao blockchain em seus aplicativos; quanto mais um aplicativo é baixado, mais tokens de chá eles recebem, que podem ser trocados por meio de um fundo. O esquema de worm é uma tentativa de fazer o blockchain pensar que os aplicativos criados pelos atores da ameaça são altamente populares e, portanto, ganham muitos tokens.
No momento, os tokens não têm valor. Mas suspeita-se que os atores da ameaça estejam se posicionando para receber tokens de criptomoeda reais quando o Tea Protocol lançar sua Mainnet, onde os tokens do Tea terão valor monetário actual e poderão ser negociados.
Por enquanto, diz Fox, da Sonatype, o esquema desperdiça o tempo dos administradores do npm, que estão tentando expulsar mais de 100 mil pacotes. Mas a Fox e a Amazon apontam que o esquema pode inspirar outros a tirar vantagem de outros sistemas baseados em recompensas para obter ganhos financeiros ou para distribuir malware.
O que os líderes e desenvolvedores de TI devem fazer
Para diminuir as probabilities de abuso, os repositórios de código aberto deveriam reforçar seu controle de acesso, limitando o número de usuários que podem fazer add de código, disse Raidman, da Cybeats. Isso inclui o uso de autenticação multifatorial no caso de roubo de credenciais de login de desenvolvedores, disse ele, e a adição de recursos de assinatura digital ao código carregado para autenticar o autor.
Os líderes de TI devem insistir que todos os códigos que suas empresas usam tenham uma lista de materiais de software program (SBOM), para que as equipes de segurança possam ver os componentes. Eles também precisam insistir que os desenvolvedores conheçam as versões do código-fonte aberto que incluem em seus aplicativos e confirmar que apenas versões aprovadas e seguras estão sendo usadas e não alteradas automaticamente apenas porque uma nova versão foi baixada de um repositório.
Fox, da Sonatype, disse que os líderes de TI precisam comprar ferramentas que possam interceptar e bloquear downloads maliciosos de repositórios. O software program antivírus é inútil aqui, disse ele, porque o código malicioso carregado nos repositórios não contém as assinaturas que as ferramentas antivírus deveriam detectar.
Em resposta a perguntas enviadas por e-mail, os autores do weblog da Amazon, os pesquisadores Chi Tran e Charlie Bacon, disseram que os repositórios de código aberto precisam implantar sistemas avançados de detecção para identificar padrões suspeitos, como arquivos de configuração maliciosos, código mínimo ou clonado, esquemas de nomenclatura de código previsíveis e cadeias circulares de dependência.
“Igualmente importante”, acrescentam, “é monitorar a velocidade de publicação de pacotes, uma vez que ferramentas automatizadas criam em velocidades que nenhum desenvolvedor humano poderia igualar. Além disso, medidas aprimoradas de validação de autor e responsabilidade são cruciais para a prevenção. Isso inclui a implementação de verificação de identidade mais forte para novas contas, monitoramento de atividades de publicação coordenadas em várias contas de desenvolvedor, como visto nesta campanha, e aplicação de princípios de ‘culpa por associação’, onde pacotes de contas vinculadas a atividades maliciosas recebem um escrutínio mais rigoroso. Os repositórios também devem rastrear padrões de comportamento, como criação rápida de contas seguida de publicação em massa de pacotes, que são marcas registradas de abuso automatizado.”
Os CISOs que descobrem esses pacotes em seus ambientes “enfrentam uma realidade desconfortável”, acrescentam os autores da Amazon: “Seus atuais controles de segurança não conseguiram detectar um ataque coordenado à cadeia de suprimentos”.
McCarty, da SourceCodeRed, disse que os líderes de TI precisam proteger os laptops dos desenvolvedores, bem como seus pipelines automatizados de integração e entrega contínua (CI/CD). Ferramentas de segurança tradicionais como EDR e SCA não verificam malware, alertou. “O número de pessoas que compram o Snyk pensando que ele faz isso é enorme”, disse ele.
McCarty criou duas ferramentas de verificação de malware de código aberto. Um, opensourcemalware. comé um banco de dados aberto de conteúdo malicioso, como pacotes npm. Pode ser verificado se um pacote usado é malicioso. O segundo é o código aberto automatizado MALOSS ferramenta, que é efetivamente um scanner que verifica opensourcemalware.com e outras fontes automaticamente. O MALOSS pode ser usado em um pipeline de CI/CD ou em uma estação de trabalho native.
Ele também recomenda o uso de um firewall de pacote comercial ou de código aberto, que efetivamente permite que um desenvolvedor instale apenas pacotes aprovados.
“A empresa tem mais opções do que imagino”, disse ele ao CSO. “Muitas vezes eles não percebem que existem ferramentas e soluções para lidar com esse risco. A maturidade é muito baixa neste espaço.”