18 librerías de JavaScript comprometidas (2.000 millones de descargas semanales): el ecosistema del desarrollo web, en la mira de ciberdelincuentes

18 librerías de JavaScript comprometidas (2.000 millones de descargas semanales): el ecosistema del desarrollo web, en la mira de ciberdelincuentes

Notificación 2FA falsa engañó a un mantenedor y permitió introducir código malicioso

image

Al menos 18 paquetes JavaScript populares en NPM, con una audiencia semanal conjunta de más de 2.000 millones de descargas, estuvieron por un breve período con inserciones maliciosas —tras un ataque de phishing a uno de los mantenedores. El incidente se aisló rápidamente y el daño se centró en operaciones con criptomonedas; sin embargo, el equipo Aikido, que detectó la sustitución, advierte que un escenario similar con una carga más agresiva podría convertirse en un brote de código malicioso de difícil detección a escala de la industria.

El ataque comenzó con un correo que se hacía pasar por una notificación de NPM exigiendo actualizar la autenticación de dos factores (2FA). Engañaron al desarrollador para que accediera a una página de inicio de sesión falsa, donde introdujo un token de un solo uso. Con los datos robados, los atacantes accedieron a la cuenta en NPM y modificaron al menos 18 bibliotecas de uso general, tras lo cual cambiaron la dirección de correo electrónico en su perfil y privaron temporalmente al propietario del control. Según los datos de Aikido, la inserción maliciosa interceptaba de forma inadvertida la actividad de las carteras de criptomonedas en el navegador, intervenía en las interacciones con las interfaces, reescribía los destinos de las transferencias y las autorizaciones de modo que los fondos y permisos se dirigían a credenciales controladas por ellos sin signos evidentes de suplantación.

Aikido rastrea actualizaciones en repositorios principales y comprueba automáticamente los commits en busca de signos de comportamiento peligroso. El mantenedor confirmó la compromisión y comenzó la limpieza de paquetes. La campaña de phishing se basó en el dominio npmjs.help, registrado dos días antes del envío y alojado mediante el servicio de DNS dinámico dnsexit.com, que ofrece nombres gratuitos con direccionamiento inmediato a cualquier IP.

Expertos de Seralys llamaron la atención sobre que, tras obtener acceso a las bibliotecas, los atacantes se limitaron a robar criptomonedas, aunque la cadena de suministro de código les habría abierto un espacio mucho más amplio para causar daño. Kevin Beaumont recordó la vulnerabilidad sistémica del ecosistema: una parte significativa del mundo depende de numerosos módulos interconectados mantenidos por un puñado de entusiastas sobrecargados, y la difusión del "vibe-coding" aumenta el número de dependencias y la superficie de ataque final; basta engañar a un solo mantenedor.

Se enfatiza que los paquetes populares deben publicarse solo con un origen de compilaciones verificado —por ejemplo, desde una cadena de CI predecible que se ejecute al fusionarse en la rama principal— y que las publicaciones "externas" deben bloquearse. También recordaron a los usuarios el incidente reciente a finales de agosto: en el compromiso de un desarrollador de la herramienta "nx", con aproximadamente 6 millones de descargas semanales, se introdujo en el código un recopilador de tokens y claves para GitHub, NPM, SSH y API, y los datos no se enviaban a un servidor remoto; en su lugar, se creaba automáticamente un repositorio público en la cuenta de la víctima donde se subían los trofeos.

Nicholas Weaver, del Instituto Internacional de Ciencias de la Computación, insta a exigir a los contribuyentes métodos de segundo factor resistentes al phishing, en primer lugar claves físicas. En su opinión, dado que el software moderno depende de registros como NPM, la ausencia de claves obligatorias para los autores de paquetes ya no es una libertad privada, sino un riesgo para la infraestructura.

Tras ataques similares, los propios desarrolladores a menudo abandonan los proyectos: no soportan la presión ni la responsabilidad. El episodio actual mostró cuán frágil es la cadena de suministro del código abierto y lo rápido que un ataque de phishing exitoso puede convertirse en un problema sectorial si no se endurece la verificación del origen de las compilaciones y no se adopta una autenticación resistente al phishing.

Las huellas digitales son tu debilidad, y los hackers lo saben

¡Suscríbete y descubre cómo borrarlas!