OOscar Dev BlogWeb · AI · Craft
Volver al blog
Seguridad#security#npm#javascript#malware

Ataque Supply Chain a Axios: Cómo protegerte del malware en npm

El 31 de Marzo de 2026, dos versiones maliciosas de axios fueron publicadas en npm. Te explicamos qué pasó y cómo protegerte.

OOscar Vargas1 de abril de 20265 min de lectura

Si usas axios en tus proyectos, esto te interesa. El 31 de Marzo de 2026, el ecosistema JavaScript sufrió un nuevo ataque a la cadena de suministro (supply chain attack). Dos versiones maliciosas de axios fueron publicadas directamente en npm, el registry más grande del mundo de paquetes JavaScript.

¿Qué pasó exactamente?

Un atacante logró hackear las credenciales de un mantenedor principal de axios y publicó dos versiones comprometidas directamente al registry de npm: 1.14.1 y 0.30.4. Lo preocupante es que axios se descarga entre 100 y 300 millones de veces por semana, lo que convierte a este paquete en uno de los más críticos del ecosistema JavaScript.

A diferencia de otros ataques que modifican el código fuente directamente, estas versiones maliciosas no contienen código peligroso en sí mismas. En su lugar, inyectan una dependencia falsa llamada plain-crypto-js que ejecuta un script postinstall.

Cómo funcionó el ataque

  • Credenciales comprometidas: El atacante hackeó las credenciales npm de un mantenedor principal y publicó las versiones fuera del flujo normal de seguridad.
  • Dependencia falsa inyectada: Las versiones maliciosas incluyen una dependencia fantasma llamada plain-crypto-js que no tiene relación con ninguna librería legítima.
  • Script postinstall malicioso: El script postinstall de esta dependencia falsa descarga un payload de segunda etapa desde un servidor C2 en sfrclak.com:8000.
  • Auto-eliminación: El malware se auto-elimina después de ejecutarse, lo que dificulta enormemente la detección forense y el análisis posterior.

⚠️ ¿Estás usando axios?

Si tienes proyectos con axios, revisa inmediatamente si tienes las versiones 1.14.1 o 0.30.4 instaladas. En ese caso, actúa YA.

Qué hacer inmediatamente

  1. Busca en lockfiles y node_modules: Verifica si tienes axios@1.14.1, axios@0.30.4 o plain-crypto-js en tu proyecto.
  2. Haz pin a versiones seguras: Actualiza inmediatamente a axios@1.14.0 o axios@0.30.3.
  3. Rota todas las credenciales: Si tuviste estas versiones instaladas, asume que tus secretos pueden estar comprometidos. Rota TODOS los API keys, tokens, y contraseñas en entornos de build afectados.
  4. Redeploy proyectos: Despliega nuevamente todos los proyectos que puedan haber sido afectados.
  5. Bloquea scripts en CI: Añade --ignore-scripts a todas las instalaciones npm en tus pipelines de CI/CD como medida preventiva.

Lecciones para el ecosistema

Este ataque demuestra que el modelo de seguridad de npm tiene vulnerabilidades significativas. La publicación de paquetes por mantenedores con acceso comprometido pasa desapercibida sin verificación adicional.

Como desarrolladores, debemos asumir que cualquier paquete puede ser comprometido y tomar medidas preventivas:

  • Usar lockfiles y revisarlos antes de cada install
  • Implementar verificaciones de integridad con checksum
  • Configurar npm para no ejecutar scripts automáticamente
  • Monitorear las dependencias de tus proyectos activamente
  • Considerar herramientas como Socket.dev o Snyk para análisis de seguridad

Este ataque fue detectado rápidamente por la comunidad y las versiones maliciosas ya fueron eliminadas de npm. Sin embargo, sirve como recordatorio de que la seguridad en el desarrollo de software es responsabilidad de todos.

Compartir artículo

O

Escrito por

Oscar Vargas

Apasionado por el desarrollo web, las herramientas modernas y compartir lo que aprende en el camino. Más artículos abajo.

Siguiente artículo →

Tu CQRS en banca tiene dos verdades y nadie las reconcilia

Artículos relacionados