Alterações maliciosas foram detectadas nas dependências do pacote npm com o instalador PureScript.

Nas dependências do pacote npm com o instalador PureScript foi identificado código malicioso, que se manifesta ao tentar instalar o pacote purescript. O código malicioso está embutido através das dependências load-from-cwd-or-npm e rate-map. Notavelmente, a manutenção dos pacotes com essas dependências é feita pelo autor original do pacote npm com o instalador PureScript, que até recentemente estava encarregado de manter este pacote npm, mas há cerca de um mês o pacote foi transferido para outros mantenedores.

O problema foi descoberto por um dos novos mantenedores do pacote, a quem os direitos de manutenção foram transferidos após muitas divergências e discussões desagradáveis com o autor original do pacote npm purescript. Os novos mantenedores são responsáveis pelo compilador PureScript e insistiram que o pacote npm com seu instalador deve ser mantido pelos mesmos responsáveis, e não por terceiros. O autor do pacote npm com o instalador PureScript inicialmente não concordou, mas depois cedeu e transferiu o acesso ao repositório. Entretanto, algumas dependências permaneceram sob sua gestão.

Na semana passada, foi lançado o compilador PureScript 0.13.2 e
os novos mantenedores prepararam a correspondente atualização do pacote npm com o instalador, cujas dependências revelaram código malicioso. O autor do pacote npm com o instalador PureScript, que foi destituído de seu cargo, declarou que sua conta foi comprometida por atacantes desconhecidos. No entanto, na sua forma atual, as ações do código malicioso estavam limitadas apenas ao sabotagem da instalação do pacote, que se tornou a primeira versão dos novos mantenedores. As ações maliciosas resumiam-se a um loop com uma mensagem de erro ao tentar instalar o pacote com o comando “npm i -g purescript” sem realizar atividade maliciosa explícita.

Foram identificados dois ataques. Algumas horas após o lançamento oficial da nova versão do pacote npm purescript, alguém criou uma nova versão da dependência load-from-cwd-or-npm 3.0.2, cujas alterações resultaram no fato de que a chamada loadFromCwdOrNpm() em vez de uma lista de binários necessários para instalação retornava um fluxo PassThrough, que espelhava as solicitações de entrada como valores de saída.

Após 4 dias, após os desenvolvedores terem identificado a origem das falhas e estarem prontos para lançar uma atualização para excluir o load-from-cwd-or-npm das dependências, os invasores lançaram outra atualização do load-from-cwd-or-npm 3.0.4, na qual o código malicioso foi removido. No entanto, quase imediatamente foi lançada uma atualização de outra dependência, rate-map 1.0.3, que introduziu uma correção bloqueando a chamada de callback para carregamento. Ou seja, em ambos os casos, as mudanças nas novas versões de load-from-cwd-or-npm e rate-map eram claramente uma sabotagem. Além disso, o código malicioso continha uma verificação que ativava ações de falha apenas na instalação da release das novas versões e não se manifestava na instalação de versões antigas.

Os desenvolvedores resolveram o problema lançando uma atualização, na qual as dependências problemáticas foram removidas. Para evitar a persistência de código comprometido nos sistemas dos usuários após a tentativa de instalação da versão problemática, é recomendado excluir o conteúdo das pastas node_modules e dos arquivos package-lock.json, definindo em seguida a versão mínima como purescript 0.13.2.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster