🚨 Cómo hackearon a Axios: el ataque a la cadena de suministro que puso en riesgo a millones
En marzo de 2026, uno de los paquetes más utilizados del ecosistema JavaScript, Axios, fue comprometido
Jose Gratereaux
Author
En marzo de 2026, uno de los paquetes más utilizados del ecosistema JavaScript, Axios, fue comprometido en lo que ya se considera uno de los ataques más peligrosos recientes en la cadena de suministro de software.
Axios no es una librería cualquiera: se estima que está presente en cerca del 80% de aplicaciones cloud modernas y acumula más de 100 millones de descargas semanales. Esto convirtió el ataque en una bomba de alcance global.
🧠 ¿Qué pasó exactamente?
El ataque no fue contra el código… fue contra el humano.
El atacante logró tomar control de la cuenta en npm del mantenedor principal de Axios. Con ese acceso:
- Cambió el correo asociado a la cuenta
- Publicó versiones maliciosas del paquete:
-
1.14.1 -
0.30.4
-
- Todo esto en apenas 39 minutos
💡 Lo más crítico: no modificó el código original de Axios.
🧬 El truco: una dependencia fantasma
En lugar de alterar Axios directamente, el atacante hizo algo mucho más sofisticado:
👉 Añadió una dependencia maliciosa oculta dentro del package.
Esta dependencia:
- Se ejecutaba automáticamente durante
npm install - No levantaba sospechas inmediatas
- Actuaba como vector de infección silencioso
Este tipo de ataque es conocido como:
🧨 Supply Chain Attack (ataque a la cadena de suministro)
🦠 ¿Qué hacía el malware?
El código malicioso instalaba un RAT (Remote Access Trojan), es decir, un troyano de acceso remoto.
Capacidades del malware:
-
🖥️ Funciona en:
- Windows
- macOS
- Linux
-
🔍 Recolección de información:
- Directorios del sistema
- Procesos activos
- Unidades de disco
-
🌐 Comunicación con servidor externo:
- Enviaba toda la información recolectada
- Permitía control remoto del sistema
En pocas palabras:
👉 convertía cualquier máquina vulnerable en un sistema comprometido completamente
⏱️ Un ataque cuidadosamente planificado
Esto no fue improvisado.
El atacante:
-
18 horas antes
- Publicó una versión limpia (para generar confianza y evitar alertas)
-
Justo antes de medianoche
- Subió las versiones maliciosas (máximo impacto)
-
Ventana de exposición
- ~3 horas activas en npm
Durante ese tiempo:
- Se detectaron al menos 135 sistemas comprometidos
- Probablemente muchos más no detectados
🎯 ¿Por qué fue tan peligroso?
Porque explotó una de las mayores debilidades del desarrollo moderno:
👉 Confiamos ciegamente en nuestras dependencias
Un simple npm install podía:
- Infectar servidores
- Comprometer pipelines CI/CD
- Exponer credenciales
- Abrir puertas a ataques mayores
🛡️ Cómo evitar este tipo de ataques
Aquí es donde viene lo más importante para ti como desarrollador 👇
1. 🔒 Usa lockfiles estrictos
-
package-lock.jsonoyarn.lock - Evita instalar versiones nuevas automáticamente
bash
npm ci
2. 🚫 Evita versiones automáticas (^) o (~)
❌ Malo:
"axios": "^1.14.0"
✅ Mejor:
"axios": "1.14.0"
3. 🔍 Audita dependencias constantemente
npm audit
npm audit fix
- Herramientas como: Snyk Dependabot
4. 🧠 Revisa cambios en dependencias críticas
Antes de actualizar:
Lee release notes Revisa diffs Verifica nuevas dependencias
5. 🧪 Aísla builds y entornos
Usa contenedores (Docker) Entornos efímeros en CI/CD Nunca ejecutes builds en máquinas críticas
6. 🔐 Refuerza seguridad en npm
Si eres mantenedor:
Activa 2FA obligatorio Usa tokens con permisos limitados Revisa accesos regularmente
7. 🧬 Monitorea comportamiento en runtime
Tráfico saliente sospechoso Scripts post-install Procesos inesperados
🧭 Lección clave
Este ataque deja algo claro:
⚠️ El código que no escribes también es tu responsabilidad
En un ecosistema donde usamos cientos de dependencias:
El riesgo no está solo en bugs Está en quién controla el código que ejecutas
🧩 Conclusión
El caso de Axios marca un antes y un después en seguridad del ecosistema JavaScript.
No fue un exploit sofisticado… fue algo más peligroso:
👉 confianza mal aprovechada
Si desarrollas con Node.js, este incidente es una señal clara de que necesitas:
- más control
- más visibilidad
- y menos automatismo ciego