1. junio 2026 | Imprimir artículo |

14 paquetes npm maliciosos en cuatro horas: por qué la verificación estática de terceros ya no es

7 Min. de lectura

Un único atacante publicó el 28 de mayo 14 paquetes npm maliciosos en solo cuatro horas. Imitaban bibliotecas conocidas de OpenSearch y ElasticSearch y, tras su instalación, robaban al instante credenciales de acceso a la nube y a CI/CD. La lección incómoda: quien revisa las dependencias una vez y luego confía en ellas, se defiende a un ritmo del pasado.

Lo más importante en resumen

  • Cuatro horas, 14 paquetes. Microsoft atribuye la campaña a un actor bajo el alias vpmdhaj. El plazo demuestra lo rápido que un atacante puede inundar la cadena de suministro antes de que una revisión manual llegue a actuar.
  • El objetivo son los secretos, no los usuarios finales. Los paquetes iban dirigidos a desarrolladores con accesos a AWS y Elastic. Tras la instalación, los secretos de CI/CD y las credenciales en la nube se enviaban directamente al atacante.
  • La revisión estática no es suficiente. Una evaluación en el momento de la selección no dice nada sobre un paquete que una semana después se vea comprometido o se actualice con código malicioso. Lo necesario es una observación continua durante el proceso de construcción.

Qué ocurrió el 28 de mayo

El mecanismo no es nuevo, pero su velocidad sí. El atacante recurrió al typosquatting, es decir, nombres de paquetes que se asemejan a bibliotecas populares salvo por un error tipográfico. Quien instala rápidamente un módulo de OpenSearch o ElasticSearch en segundo plano, puede caer fácilmente en el nombre equivocado.

Los 14 paquetes no fueron un lanzamiento aleatorio. Estaban dirigidos específicamente al entorno de OpenSearch, ElasticSearch, herramientas DevOps y bibliotecas de configuración. Esta selección responde a una decisión de público objetivo: los desarrolladores en este ámbito suelen tener a mano credenciales de AWS y Elastic en su entorno. Tras la instalación, los paquetes comenzaron a recopilar credenciales de acceso y a enviarlas a un servidor del atacante.

Para un equipo de defensa (Blue Team), la observación clave no es el paquete individual, sino el plazo. Cuatro horas son menos que cualquier proceso de aprobación manual. Una defensa basada en la revisión humana antes de la incorporación es estructuralmente demasiado lenta.

La cifra que cambia el modelo de defensa

Un dato resume por qué los controles puntuales no sirven de nada.

4 horas
fue lo que necesitó un único actor para subir 14 paquetes maliciosos al registro de npm. Más rápido que cualquier ciclo de revisión manual.
Fuente: Microsoft Security, mayo de 2026

El problema no es que las empresas no revisen sus dependencias. El problema es que lo hacen en el momento equivocado. Un paquete que era seguro en el momento de la selección puede contener código malicioso tras la siguiente actualización. Una evaluación estática solo conoce el estado de ayer.

Qué deben cambiar ahora los equipos de detección

La respuesta no está en más revisiones previas, sino en la observación durante la ejecución. Algunas medidas tienen efecto inmediato y no requieren una nueva plataforma.

  • Controlar el tráfico de salida del proceso de construcción. Un script de instalación que, al ejecutar *npm install*, establece una conexión externa es una señal de alarma. Quien restringe y registra el tráfico saliente del entorno CI, detecta la filtración de secretos en el momento en que ocurre.
  • Detectar tiempos de ejecución inusuales. En este caso concreto, un proceso de Node inició inesperadamente la descarga de un runtime de Bun. Estas anomalías deben incluirse en las reglas de detección, no en una auditoría medio año después.
  • Tratar los secretos como perecederos. Rotar regularmente los accesos a AWS, Vault, npm y GitHub reduce el plazo en el que un secreto robado resulta útil.

El reflejo que lleva por mal camino

Tras cada incidente en la cadena de suministro, surge la llamada a una puerta de aprobación más estricta: más controles, más autorizaciones, más listas. Esto ralentiza el desarrollo y no resuelve el problema real. El atacante fue más rápido que cualquier puerta, y el próximo paquete comprometido llegará a través de una actualización que ya superó la aprobación.

Es más eficaz trasladar el foco del momento de la selección al momento de la ejecución. No es la cuestión de si un paquete estaba limpio en algún momento, sino lo que está haciendo durante el *build* lo que determina el daño. No es una conclusión costosa, pero sí incómoda: exige abandonar un ritual de verificación ya establecido.

Preguntas frecuentes

¿Qué es el typosquatting en paquetes npm?

Los atacantes publican paquetes con nombres que se asemejan a bibliotecas populares, salvo por un error tipográfico. Quien escribe mal el nombre al instalar o lo copia sin prestar atención, descarga el paquete malicioso en lugar del auténtico.

¿Por qué no basta con una revisión única de las dependencias?

Un paquete que estaba limpio en el momento de la selección puede contener código malicioso tras una actualización posterior. Las evaluaciones estáticas solo conocen el estado en el momento de la revisión. La protección real llega con la observación continua de lo que los paquetes hacen realmente durante el *build*.

¿Qué medidas inmediatas son necesarias tras un incidente de este tipo?

Rotar las credenciales afectadas de AWS, Vault, npm y GitHub, bloquear el tráfico saliente hacia el dominio de control del atacante a nivel de firewall y DNS, y revisar los registros de *build* de CI/CD en busca de conexiones inesperadas.

¿Cómo detecta un SOC la filtración de secretos de CI/CD?

Mediante el control del tráfico saliente desde el entorno de *build*. Un script de instalación que establece una conexión externa o un proceso Node que carga una runtime ajena son señales fiables de anomalías.

¿Deberían endurecerse los procesos de aprobación como respuesta?

Solo de forma limitada. Una puerta de aprobación más estricta ralentiza el desarrollo sin resolver el problema central, ya que el atacante es más rápido y la próxima actualización comprometida pasará la puerta de todos modos. Más eficaz es la observación en tiempo de ejecución.

Más del MBF Media Network

Fuente imagen de portada: Pexels / ThisIsEngineering (px:3861951)

Alec Chizhik

Sobre el autor: Alec Chizhik

Más artículos de

También disponible en

FrançaisEnglishDeutsch
Una revista de Evernine Media GmbH