CVE-2026-41159
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 32 - wyżej niż 32% wszystkich znanych CVE
Streszczenie
Podatność w narzędziu Mermaid (wersje przed 10.9.6 i 11.15.0) umożliwia wstrzykiwanie CSS poza zakres diagramu poprzez opcje konfiguracyjne fontFamily, themeCSS i altFontFamily. Wstrzyknięty CSS wykorzystuje mechanizm stylis do ominięcia automatycznego zakresowania, co pozwala na modyfikację wyglądu strony i kradzież atrybutów DOM za pomocą selektorów CSS :has().
Ocena ryzyka
Atakujący może zdeformować stronę internetową oraz wyodrębnić wrażliwe atrybuty DOM (np. tokeny CSRF, dane sesji) poprzez wstrzyknięcie złośliwego CSS, co prowadzi do naruszenia integralności i poufności danych.
Rekomendacja
Należy natychmiast zaktualizować bibliotekę Mermaid do wersji 10.9.6 lub 11.15.0, które zawierają poprawkę eliminującą możliwość wstrzykiwania CSS poza zakres diagramu.
Oryginalny opis (angielski, źródło NVD)
Mermaid is a JavaScript tool that uses Markdown-inspired text to create and modify diagrams and charts. Prior to 10.9.6 and 11.15.0, Mermaid's default configuration allows injecting CSS that applies outside of the Mermaid diagram via the fontFamily, themeCSS, and altFontFamily configuration options. The injected CSS exploits stylis's & (scope reference) handling. :not(&) escapes the #mermaid-xxx automatic scoping, applying styles to all page elements. Global at-rules (@font-face, @keyframes, @counter-style) are also injectable as stylis hoists them to top level. This allows page defacement and DOM attribute exfiltration via CSS :has() selectors. This vulnerability is fixed in 10.9.6 and 11.15.0.

