Vulnerabilidad en Mermaid de mermaid-js (CVE-2026-41159)
Gravedad CVSS v4.0:
MEDIA
Tipo:
CWE-94
Control incorrecto de generación de código (Inyección de código)
Fecha de publicación:
29/05/2026
Última modificación:
21/07/2026
Descripción
Mermaid es una herramienta de JavaScript que utiliza texto inspirado en Markdown para crear y modificar diagramas y gráficos. Antes de las versiones 10.9.6 y 11.15.0, la configuración predeterminada de Mermaid permite inyectar CSS que se aplica fuera del diagrama de Mermaid a través de las opciones de configuración fontFamily, themeCSS y altFontFamily. El CSS inyectado explota el manejo de & (referencia de ámbito) de stylis. :not(&) escapa el alcance automático #mermaid-xxx, aplicando estilos a todos los elementos de la página. Las reglas globales at-rules (@font-face, @keyframes, @counter-style) también son inyectables, ya que stylis las eleva al nivel superior. Esto permite la desfiguración de la página y la exfiltración de atributos del DOM a través de selectores CSS :has(). Esta vulnerabilidad se corrige en las versiones 10.9.6 y 11.15.0.
Impacto
Puntuación base 4.0
5.30
Gravedad 4.0
MEDIA
Puntuación base 3.x
5.30
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:mermaid_project:mermaid:*:*:*:*:*:node.js:*:* | 10.9.6 (excluyendo) | |
| cpe:2.3:a:mermaid_project:mermaid:*:*:*:*:*:node.js:*:* | 11.0.0 (incluyendo) | 11.15.0 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://github.com/mermaid-js/mermaid/commit/64769738d5b59211e1decb471ffbaca8afec51aa
- https://github.com/mermaid-js/mermaid/commit/a9d9f0d8eb790349121508688cd338253fd80d76
- https://github.com/mermaid-js/mermaid/releases/tag/mermaid@11.15.0
- https://github.com/mermaid-js/mermaid/releases/tag/v10.9.6
- https://github.com/mermaid-js/mermaid/security/advisories/GHSA-87f9-hvmw-gh4p



