CVE-2026-45028: XSS en Astro ≤6.1.10 por Replay Attack
Plataforma
nodejs
Componente
astro
Corregido en
6.1.10
Se ha descubierto una vulnerabilidad de Cross-Site Scripting (XSS) en Astro versiones anteriores a 6.1.10. Esta vulnerabilidad permite a un atacante reutilizar datos encriptados para inyectar código malicioso en la aplicación. La vulnerabilidad afecta a aplicaciones que utilizan server islands y permiten la reutilización de props y slots.
Impacto y Escenarios de Ataque
Un atacante podría explotar esta vulnerabilidad para inyectar código JavaScript malicioso en las páginas web generadas por Astro. Este código podría ser utilizado para robar información confidencial del usuario, como credenciales de inicio de sesión o datos personales. Además, el atacante podría utilizar el código malicioso para redirigir a los usuarios a sitios web maliciosos o para realizar otras acciones no autorizadas. La vulnerabilidad se basa en la reutilización de valores encriptados de props y slots, donde slots contienen HTML sin escapar, lo que permite la inyección de código.
Contexto de Explotación
La vulnerabilidad fue publicada el 13 de mayo de 2026. No se ha reportado su explotación activa en entornos reales hasta el momento. Se recomienda monitorear las fuentes de inteligencia de amenazas para detectar cualquier actividad sospechosa relacionada con esta vulnerabilidad. La vulnerabilidad requiere que se cumplan todas las condiciones descritas en la descripción (uso de server islands, reutilización de props/slots).
Inteligencia de Amenazas
Estado del Exploit
EPSS
0.02% (7% percentil)
CISA SSVC
Software Afectado
Clasificación de Debilidad (CWE)
Cronología
- Reservado
- Publicada
- Modificada
- EPSS actualizado
Mitigación y Workarounds
La mitigación principal es actualizar Astro a la versión 6.1.10 o superior. Si la actualización no es posible de inmediato, se recomienda implementar medidas de seguridad adicionales, como la validación y el saneamiento de todos los datos de entrada. Además, se recomienda revisar el código de la aplicación para identificar y corregir cualquier vulnerabilidad XSS existente. Implementar una política de seguridad de contenido (CSP) también puede ayudar a mitigar el riesgo de ataques XSS.
Cómo corregirlotraduciendo…
Actualice a la versión 6.1.10 o superior para mitigar la vulnerabilidad. Esta versión corrige el problema al vincular correctamente los ciphertexts a sus componentes y parámetros de destino, previniendo así la posibilidad de replay attacks y la consecuente inyección de código XSS.
Preguntas frecuentes
What is CVE-2026-45028 — XSS in Astro ≤6.1.10?
CVE-2026-45028 es una vulnerabilidad XSS en Astro versiones anteriores a 6.1.10 que permite la reutilización de datos encriptados para inyectar código malicioso a través de server islands.
Am I affected by CVE-2026-45028 in Astro?
Si está utilizando Astro en una versión igual o inferior a 6.1.10 y su aplicación utiliza server islands y permite la reutilización de props/slots, es vulnerable a esta vulnerabilidad.
How do I fix CVE-2026-45028 in Astro?
La solución es actualizar Astro a la versión 6.1.10 o superior. Si la actualización no es posible, implemente medidas de seguridad adicionales como la validación de datos.
Is CVE-2026-45028 being actively exploited?
Hasta el momento, no se ha reportado la explotación activa de esta vulnerabilidad en entornos reales. Sin embargo, se recomienda monitorear las fuentes de inteligencia de amenazas.
Where can I find the official Astro advisory for CVE-2026-45028?
Consulte la documentación oficial de Astro y las fuentes de seguridad para obtener información sobre esta vulnerabilidad.
¿Tu proyecto está afectado?
Sube tu archivo de dependencias y detecta esta y otras CVEs al instante.
Pruébalo ahora — sin cuenta
Sube cualquier manifiesto (composer.lock, package-lock.json, lista de plugins WordPress…) o pega tu lista de componentes. Recibís un reporte de vulnerabilidades al instante. Subir un archivo es solo el primer paso: con una cuenta tenés monitoreo continuo, alertas en tu canal, multi-proyecto y reportes white-label.
Arrastra y suelta tu archivo de dependencias
composer.lock, package-lock.json, requirements.txt, Gemfile.lock, pubspec.lock, Dockerfile...