Investigadores de ciberseguridad alertan sobre una campaña de spam a gran
escala que ha inundado el registro NPM con miles de paquetes falsos desde
principios de 2024, probablemente con fines lucrativos.
«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»,
afirmaron los investigadores
de Endor Labs, Cris Staicu y Kiran Raj, en un informe publicado el martes.
Según Paul McCarty, investigador de seguridad de SourceCodeRED,
quien detectó la actividad
por primera vez,
la campaña ha publicado hasta la fecha
67.579 paquetes. El objetivo final es bastante inusual: está diseñado para inundar el
registro NPMcon paquetes aleatorios en lugar de centrarse en el robo de datos
u otras actividades maliciosas.
El mecanismo de propagación del gusano y el uso de un esquema de nombres
distintivo, basado en nombres indonesios y términos relacionados con la
comida, le han valido el apodo de «IndonesianFoods Worm». 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 gusano se encuentra dentro de un único archivo JavaScript (por ejemplo,
«auto.js» o «publishScript.js») 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, según declaró Henrik Plate, jefe de investigación de seguridad de
Endor Labs.
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, que 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.
«Lo que hace que esta campaña sea particularmente insidiosa es su mecanismo
de propagación tipo gusano», afirmaron los investigadores.
«El análisis de los archivos ‘package.json’ revela que estos paquetes
basura no existen de forma aislada; se referencian entre sí como
dependencias, creando una red autorreplicante».
De este modo, cuando un usuario instala uno de los paquetes basura, provoca
que NPM descargue todo el árbol de dependencias, sobrecargando el ancho de
banda del registro a medida que se descargan más dependencias de forma
exponencial.
Más de 150.000 paquetes de spam vinculados a la campaña
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.
«Este es uno de los mayores incidentes de inundación de paquetes en la
historia de los registros de código abierto y representa un momento crucial
para la seguridad de la cadena de suministro», afirmaron los investigadores Chi Tran y Charlie Bacon.
«Los ciberdelincuentes generan y publican automáticamente paquetes para
obtener recompensas en criptomonedas sin que los usuarios lo sepan, lo que
revela cómo la campaña se ha expandido exponencialmente desde su
identificación inicial».
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.
Fuente:
THN

