Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

CVE-2026-27970

Gravedad CVSS v4.0:
ALTA
Tipo:
CWE-79 Neutralización incorrecta de la entrada durante la generación de la página web (Cross-site Scripting)
Fecha de publicación:
26/02/2026
Última modificación:
26/02/2026

Descripción

Angular es una plataforma de desarrollo para construir aplicaciones web móviles y de escritorio usando TypeScript/JavaScript y otros lenguajes. Versiones anteriores a 21.2.0, 21.1.16, 20.3.17 y 19.2.19 tienen una vulnerabilidad de cross-site scripting en la tubería de internacionalización (i18n) de Angular. En los mensajes ICU (International Components for Unicode), el HTML del contenido traducido no se sanitizaba correctamente y podía ejecutar JavaScript arbitrario. La i18n de Angular típicamente involucra tres pasos: extraer todos los mensajes de una aplicación en el lenguaje fuente, enviar los mensajes para ser traducidos y luego fusionar sus traducciones de vuelta al código fuente final. Las traducciones son frecuentemente manejadas por contratos con compañías asociadas específicas, e involucran el envío de los mensajes fuente a un contratista separado antes de recibir las traducciones finales para su visualización al usuario final. Si las traducciones devueltas tienen contenido malicioso, este podría ser renderizado en la aplicación y ejecutar JavaScript arbitrario. Cuando se explota con éxito, esta vulnerabilidad permite la ejecución de JavaScript controlado por el atacante en el origen de la aplicación. Dependiendo de la naturaleza de la aplicación explotada, esto podría llevar a la exfiltración de credenciales y/o vandalismo de página. Varias precondiciones se aplican al ataque. El atacante debe comprometer el archivo de traducción (xliff, xtb, etc.). A diferencia de la mayoría de las vulnerabilidades XSS, este problema no es explotable por usuarios arbitrarios. Un atacante debe primero comprometer el archivo de traducción de una aplicación antes de que pueda escalar privilegios en el cliente de la aplicación Angular. La aplicación víctima debe usar Angular i18n, usar uno o más mensajes ICU, renderizar un mensaje ICU y no defenderse contra XSS a través de una política de seguridad de contenido segura. Las versiones 21.2.0, 21.1.6, 20.3.17 y 19.2.19 parchean el problema. Hasta que se aplique el parche, los desarrolladores deberían considerar revisar y verificar el contenido traducido recibido de terceros no confiables antes de incorporarlo en una aplicación Angular, habilitar controles CSP estrictos para bloquear la ejecución de JavaScript no autorizado en la página y habilitar Trusted Types para forzar una sanitización HTML adecuada.