Desenvolvedor de código aberto corrompe bibliotecas amplamente usadas, afetando vários projetos

Ele empurrou atualizações corruptas que acionam um loop infinito

Um desenvolvedor parece ter corrompido propositalmente um par de bibliotecas de código aberto no GitHub e o registro de software npm — “faker.js” e “colors.js” — das quais milhares de usuários dependem, tornando inútil qualquer projeto que contenha essas bibliotecas, pois reportado por Bleeping Computer. Embora pareça que o color.js foi atualizado para uma versão funcional, o faker.js ainda parece ser afetado, mas o problema pode ser contornado fazendo o downgrade para uma versão anterior (5.5.3).

As versões sabotadas fazem com que os aplicativos produzam infinitamente letras e símbolos estranhos

Bleeping Computer descobriu que o desenvolvedor dessas duas bibliotecas, Marak Squires, introduziu um commit maligno (uma revisão de arquivo no GitHub) em colors.js que adiciona “um novo módulo de bandeira americana”, bem como lançou a versão 6.6.6 do faker .js, desencadeando a mesma reviravolta destrutiva de eventos. As versões sabotadas fazem com que os aplicativos produzam infinitamente letras e símbolos estranhos, começando com três linhas de texto que dizem “LIBERTY LIBERTY LIBERTY”.

Ainda mais curioso, o arquivo Leiame faker.js também foi alterado para “O que realmente aconteceu com Aaron Swartz?” Swartz foi um desenvolvedor proeminente que ajudou a estabelecer Creative Commons, RSS e Reddit. Em 2011, Swartz foi acusado de roubar documentos do banco de dados acadêmico JSTOR com o objetivo de torná-los de acesso livre e, posteriormente, cometeu suicídio em 2013. A menção de Swartz por Squirz poderia potencialmente se referir a teorias de conspiração em torno de sua morte.

Conforme apontado pelo Bleeping Computer, vários usuários – incluindo alguns que trabalham com o Cloud Development Kit da Amazon – recorreram ao sistema de rastreamento de bugs do GitHub para expressar suas preocupações sobre o problema. E como o faker.js recebe quase 2,5 milhões de downloads semanais no npm e o color.js recebe cerca de 22,4 milhões de downloads por semana, os efeitos da corrupção provavelmente são de longo alcance. Por contexto, faker.js gera dados falsos para demos, color.js adiciona cores a consoles javascript.

Em resposta ao problema, Squires postou uma atualização no GitHub para resolver o “problema do zalgo”, que se refere ao texto problemático que os arquivos corrompidos produzem. “Chegou ao nosso conhecimento que há um bug zalgo no lançamento de cores v1.4.44-liberty-2”, escreve Squires de uma forma presumivelmente sarcástica. “Por favor, saibam que estamos trabalhando agora para consertar a situação e teremos uma resolução em breve.”

O NPM reverteu para uma versão anterior do pacote faker.js e o Github suspendeu meu acesso a todos os projetos públicos e privados. Tenho centenas de projetos. #AaronSwartz pic.twitter.com/zFddwn631S – marak (@marak) 6 de janeiro de 2022

Dois dias depois de enviar a atualização corrupta para o faker.js, Squires mais tarde enviou um tweet informando que ele foi suspenso do GitHub, apesar de armazenar centenas de projetos no site. A julgar pelo changelog tanto no faker.js quanto no colors.js, no entanto, parece que sua suspensão já foi suspensa. Squires introduziu o commit faker.js em 4 de janeiro, foi banido em 6 de janeiro e não introduziu a versão “liberty” do colors.js até 7 de janeiro. Não está claro se a conta de Squires foi banida novamente. Eles entraram em contato com o GitHub com um pedido de comentário, mas não receberam resposta imediatamente.

A história não termina aí, no entanto. Bleeping Computer desenterrou uma das postagens de Squires no GitHub de novembro de 2020, na qual ele declara que não quer mais fazer trabalhos gratuitos. “Respeitosamente, não vou mais apoiar Fortune 500s (e outras empresas de menor porte) com meu trabalho gratuito”, diz ele. “Aproveite isso como uma oportunidade para me enviar um contrato anual de seis dígitos ou dividir o projeto e ter outra pessoa trabalhando nele.”

A jogada ousada de Squires chama a atenção para o dilema moral – e financeiro – do desenvolvimento de código aberto, que provavelmente era o objetivo de suas ações. Um grande número de sites, softwares e aplicativos dependem de desenvolvedores de código aberto para criar ferramentas e componentes essenciais — tudo de graça. É o mesmo problema que resulta em desenvolvedores não pagos trabalhando incansavelmente para corrigir os problemas de segurança em seu software de código aberto, como o susto do Heartbleed em 2014 que afetou o OpenSSL e a vulnerabilidade mais recente do Log4Shell encontrada no log4j que deixou os voluntários lutando para corrigir.

#tecnologia #tecnologia #tecnologia #tecnologia #cíbersegurança #notícias

John Doe

Curioso e apaixonado por tecnologia.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *