Trece paquetes de npm, 48 segundos, un SDK de billetera falso

Un ataque coordinado en el registro de npm lanzó 13 paquetes de SDK de billetera falsos al estilo de Coinbase en solo 48 segundos, demostrando lo rápido que el código malicioso puede hacerse pasar por herramientas de confianza. Los desarrolladores que instalan un paquete basándose únicamente en un nombre familiar pueden inyectar involuntariamente un SDK falso en sus aplicaciones.

Los paquetes aparecieron entre las 04:54:59 y las 04:55:48 UTC del 7 de septiembre de 2026. Nombres como cb-wallet-http y scw-core imitan el espacio de nombres oficial @coinbase/wallet-sdk. En lugar de recurrir al typo-squatting, los atacantes antepusieron cadenas de texto familiares a los nombres, con la esperanza de que la recomendación de un compañero o una publicación en un foro convenciera a los usuarios de su legitimidad.

Las 13 versiones compartían la misma configuración básica: la versión 0.0.1-security, una lista de mantenedores vacía y los metadatos predeterminados de npm que se muestran inmediatamente después de la publicación. Esta configuración idéntica apunta a un único script que generó los paquetes de forma masiva, una característica propia de la automatización en lugar del esfuerzo manual.

El modelo de publicación abierta de npm permite que cualquier persona suba un paquete sin revisión previa, lo que facilita ataques como este. Incidentes pasados en la cadena de suministro han demostrado que, una vez que el código malicioso llega a un árbol de dependencias, se ejecuta en cada máquina que lo instala.

NPM no ha identificado a los autores ni ha explicado cómo se propagó el código más allá de las cargas iniciales. Tampoco está claro si los atacantes se dirigían específicamente a los usuarios de Coinbase o si simplemente inundaron el registro con nombres que parecían plausibles, con la esperanza de que algunos fueran adoptados.

Qué pueden hacer los desarrolladores ahora

  • Verificar el editor de un paquete antes de añadirlo; los SDK oficiales se encuentran bajo ámbitos de organizaciones verificadas.
  • Ejecutar herramientas que escaneen las dependencias en busca de firmas maliciosas conocidas.
  • Fijar versiones exactas en los archivos de bloqueo (lockfiles) y evitar descargar paquetes recién publicados sin revisarlos.
  • Preferir registros que requieran autenticación de dos factores para los mantenedores.

A qué prestar atención

  • Si npm endurece el proceso de revisión de paquetes que imitan marcas conocidas.
  • Listas negras impulsadas por la comunidad que marquen nombres que suplantan la identidad.
  • Actualizaciones de investigadores de seguridad sobre cualquier explotación activa de los 13 SDK falsos.

Este episodio demuestra que un nombre que suena familiar no ofrece ninguna garantía de seguridad. La vigilancia y la verificación siguen siendo las defensas más sólidas contra los ataques a la cadena de suministro en el ecosistema de código abierto.