Pacote nmp popular sequestrado, modificado para entregar criptominadores

Views: 365
0 0
Read Time:2 Minute, 52 Second

Várias versões do pacote npm para UA-parser.js, uma biblioteca JavaScript amplamente utilizada, foram modificadas para incluir código malicioso e disponibilizadas para download.

As versões maliciosas verificam se o dispositivo no qual foram instaladas executa Windows ou Linux e, dependendo do resultado, instalam um criptominer XMRig Monero. As vítimas do Windows também podem ficar sobrecarregadas com um trojan que tentará roubar cookies do Chrome e senhas para vários navegadores, clientes de e-mail, clientes FTP, aplicativos de mensagens, discadores, contas VPN, contas de pôquer online, senhas do Windows e assim por diante.

Sobre UA-parser.js

UA-parser.js é uma biblioteca JavaScript que detecta navegador, mecanismo, sistema operacional, CPU e tipo/modelo de dispositivo a partir de dados User-Agent.

O pacote npm leve da biblioteca é extremamente popular: de acordo com os números em sua página de registro npm, ele ultrapassa 8 milhões de downloads semanais. Mais de 1.200 módulos (muitas vezes amplamente utilizados) dependem disso, assim como muitas grandes empresas de tecnologia.

O que aconteceu?

“Acredito que alguém estava sequestrando minha conta npm e publicou alguns pacotes comprometidos (0.7.29, 0.8.0, 1.0.0) que provavelmente instalarão malware, como pode ser visto na comparação aqui”, explicou Faisal Salman, desenvolvedor da biblioteca.

Não demorou muito para o GitHub – o proprietário do npm – reagir. Os pacotes comprometidos foram removidos do repositório e um aviso de segurança foi publicado.

Os usuários são aconselhados a fazer ugrade para uma das versões mais recentes e não afetadas – 0.7.30, 0.8.1 ou 1.0.1 – e verificar se há atividades suspeitas em seus sistemas.

“Qualquer computador que tenha este pacote instalado ou em execução deve ser considerado totalmente comprometido. Todos os segredos e chaves armazenados nesse computador devem ser girados imediatamente de um computador diferente. O pacote deve ser removido, mas como o controle total do computador pode ter sido dado a uma entidade externa, não há garantia de que a remoção do pacote remova todo o software malicioso resultante da instalação”, aconselharam eles.

Os indicadores de compromisso estão listados aqui.

Mesmo que o compromisso do pacote UA-parser.js tenha sido detectado poucas horas após acontecer, esse compromisso na cadeia de suprimentos provavelmente afetará vários projetos dependentes. De acordo com o pesquisador da Sonatype, Ax Sharma, “Outros projetos no GitHub foram vistos pela Sonatype realizando esforços post mortem que ainda não revelaram impacto”.

De acordo com descobertas anteriores feitas pela empresa, o compromisso UA-parser.js aconteceu dez dias depois que alguém publicou três pacotes maliciosos no nmp chamados “klow”, “klown” e “okhsa”, que também lançaram cryptominers em máquinas Windows, macOS e Linux.

“Alguns desses pacotes, por exemplo, klown, foram vistos imitando ‘ua-parser-js’ em sua estrutura, READMEs e a aparência da página npm”, observaram eles.

UA-parser.js
Fonte: Sonatype

“Não está claro como o autor desses pacotes pretende segmentar desenvolvedores”, comentaram os pesquisadores da empresa na época. “Não há sinais óbvios observados que indiquem um caso de typosquatting ou sequestro de dependência. “Klow(n)” personifica a legítima biblioteca UAParser.js na superfície, fazendo com que esse ataque pareça uma fraca tentativa de roubo de marca.”

Agora sabemos que o atacante provavelmente não parou quando esses pacotes foram derrubados pela equipe de segurança do npm e, em vez disso (sem surpresa) conseguiu comprometer o negócio real.

FONTE: HELPNET SECURITY

POSTS RELACIONADOS