Campaña de spam en NPM con más de 150.000 paquetes falsos
Campaña de spam en NPM con más de 150.000 paquetes falsos

Campaña de spam en NPM con más de 150.000 paquetes falsos

Investigadores han alertado sobre una campaña masiva de spam que ha inundado el registro NPM con miles de paquetes falsos desde principios de 2024, probablemente con fines lucrativos.

Campaña de spam a gran escala

Según un informe publicado por Endor Labs, los investigadores Cris Staicu y Kiran Raj señalan que los paquetes se publicaron sistemáticamente durante un período prolongado, inundando el registro NPM con paquetes basura que permanecieron en el ecosistema durante casi dos años.

Paul McCarty, investigador de seguridad de SourceCodeRED, detectó la actividad por primera vez. Según sus declaraciones, hasta la fecha se han publicado 67.579 paquetes. El objetivo final es inusual: está diseñado para inundar el registro NPM con paquetes aleatorios en lugar de centrarse en el robo de datos u otras actividades maliciosas.

El gusano y su mecanismo de propagación

La campaña ha recibido el apodo de «IndonesianFoods Worm» debido al uso de un esquema de nombres distintivo basado en nombres indonesios y términos relacionados con la comida. Los paquetes fraudulentos se hacen pasar por proyectos Next.js.

Lo que hace que esta amenaza sea particularmente preocupante es que los atacantes se tomaron el tiempo de crear un gusano NPM, en lugar de un ataque aislado. Peor aún, estos ciberdelincuentes han estado preparando esto durante más de dos años.

Algunas señales que apuntan a un esfuerzo coordinado y sostenido incluyen los patrones de nombres consistentes y el hecho de que los paquetes se publican desde una pequeña red de más de una docena de cuentas NPM.

El mecanismo de propagación

El gusano se encuentra dentro de un único archivo JavaScript en cada paquete, permaneciendo inactivo hasta que un usuario ejecuta manualmente el script mediante un comando como «node auto.js». En otras palabras, no se ejecuta automáticamente durante la instalación ni como parte de un script «postinstall».

No está claro por qué alguien llegaría al extremo de ejecutar manualmente el archivo JavaScript, pero la existencia de más de 43.000 paquetes sugiere que o bien varias víctimas ejecutaron el script —ya sea por accidente o por curiosidad— o bien los atacantes lo ejecutaron ellos mismos para saturar el registro.

Conexión con una campaña previa

Según Endor Labs, la campaña forma parte de un ataque documentado inicialmente por Phylum (ahora parte de Veracode) y Sonatype en abril de 2024. Consistía en la publicación de miles de paquetes basura para llevar a cabo una campaña masiva y automatizada de criptofarming mediante el abuso del protocolo TEA.

Impacto y consecuencias

Amazon Web Services, en un informe publicado el jueves, indicó que su equipo de Amazon Inspector identificó y reportó más de 150.000 paquetes vinculados a una campaña coordinada de generación de tokens TEA en el registro NPM, cuyo origen se remonta a una primera oleada detectada en abril de 2024.

Los investigadores Chi Tran y Charlie Bacon afirmaron que este es uno de los mayores incidentes de inundación de paquetes en la historia de los registros de código abierto. Los ciberdelincuentes generan y publican automáticamente paquetes para obtener recompensas en criptomonedas sin que los usuarios lo sepan.

La actividad consiste básicamente en activar un mecanismo de automatización autorreplicante que crea paquetes sin funcionalidad legítima, los publica en el registro NPM y obtiene tokens TEA mediante la manipulación artificial de las métricas de los paquetes a través de la replicación automatizada y las cadenas de dependencias.