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

Dependendo do pacote npm com o instalador PureScript identificado código malicioso que aparece quando você tenta instalar um pacote texto puro. O código malicioso é incorporado por meio de dependências carregar de cwd ou npm и mapa de taxas. Vale ressaltar que a manutenção dos pacotes com essas dependências é realizada pelo autor original do pacote npm com o instalador PureScript, que até recentemente mantinha esse 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, para quem os direitos de manutenção foram transferidos após muitas divergências e discussões desagradáveis ​​com o autor original do pacote purescript npm. Os novos mantenedores são responsáveis ​​pelo compilador PureScript e insistiram que o pacote NPM e seu instalador deveriam ser mantidos pelos mesmos mantenedores e não por terceiros. O autor do pacote npm com o instalador PureScript não concordou por muito tempo, mas depois cedeu e transferiu o acesso ao repositório. No entanto, algumas dependências permaneceram sob seu controle.

Na semana passada o compilador PureScript 0.13.2 foi lançado e
os novos mantenedores prepararam uma atualização correspondente do pacote npm com um instalador, em cujas dependências foi identificado código malicioso. O autor do pacote npm com o instalador PureScript, que foi removido de seu cargo de mantenedor, disse que sua conta foi comprometida por invasores desconhecidos. Porém, na sua forma atual, as ações do código malicioso limitaram-se a sabotar a instalação do pacote, que foi a primeira versão dos novos mantenedores. As ações maliciosas representavam um loop com uma mensagem de erro ao tentar instalar um pacote com o comando “npm i -g purescript” sem realizar qualquer atividade maliciosa óbvia.

Dois ataques foram detectados. Algumas horas após o lançamento oficial da nova versão do pacote purescript npm, alguém criou uma nova versão da dependência load-from-cwd-or-npm 3.0.2, mudanças nas quais levaram à chamada para loadFromCwdOrNpm() em vez disso da lista de arquivos binários necessários para instalação retornado stream Atravessar, espelhando consultas de entrada como valores de saída.

4 dias depois, depois que os desenvolvedores descobriram a origem das falhas e se prepararam para lançar uma atualização para excluir load-from-cwd-or-npm das dependências, os invasores lançaram outra atualização, load-from-cwd-or-npm 3.0.4, em que o código malicioso foi removido. No entanto, quase imediatamente foi lançada uma atualização para outra dependência, rate-map 1.0.3, que adicionou uma correção para bloquear o retorno de chamada de download. Aqueles. em ambos os casos, as mudanças nas novas versões de load-from-cwd-or-npm e rate-map foram de natureza óbvia de sabotagem. Além disso, o código malicioso tinha uma verificação que acionava ações defeituosas apenas ao instalar uma versão de novos mantenedores e não aparecia de forma alguma ao instalar versões mais antigas.

Os desenvolvedores resolveram o problema lançando uma atualização na qual as dependências problemáticas foram removidas. Para evitar que o código comprometido se estabeleça nos sistemas do usuário após a tentativa de instalar uma versão problemática do PureScript, é recomendado excluir o conteúdo dos diretórios node_modules e dos arquivos package-lock.json e, em seguida, definir a versão 0.13.2 do purescript como o limite inferior.

Fonte: opennet.ru

Adicionar um comentário