CVE-2026-113657
NiskieCVSS 3.7Streszczenie
W sanitize-html w wersjach od 2.17.7 do 2.18.0 konfiguracja aplikacji zezwalająca na elementy animacji SVG z prefiksem przestrzeni nazw oraz odpowiednie atrybuty URL może obejść ochronę URL SMIL, ponieważ nazwy tagów z prefiksem nie pasują do sprawdzenia elementów animacji bez prefiksu. Obejście może zmienić cel linku na niebezpieczny URI po wyrenderowaniu oczyszczonego SVG, a wykonanie skryptu następuje, gdy użytkownik aktywuje dotknięty link. Domyślna konfiguracja sanitizera nie jest bezwarunkowo podatna.
Ocena ryzyka
Użytkownicy ApostropheCMS mogą zostać nakłonieni do kliknięcia spreparowanego linku w oczyszczonym SVG, co może doprowadzić do wykonania złośliwego skryptu w kontekście przeglądarki ofiary. Ryzyko dotyczy instalacji z niestandardową konfiguracją sanitize-html zezwalającą na prefiksowane elementy animacji SVG.
Rekomendacja
Zaktualizuj sanitize-html do wersji 2.18.0 lub nowszej. Przejrzyj konfigurację sanitizera pod kątem zezwoleń na prefiksowane elementy animacji SVG i atrybuty URL.
Inne podatności w sanitize-html
Zobacz wszystkie- CVE-2026-113661Średnie
W sanitize-html przed wersją 2.18.0 konfiguracja niebędąca domyślną, która zezwala na elementy meta refresh oraz ich atrybuty http-equiv i content, może zachować niebezpieczne skrypty lub cele przekierowań osadzone w wartości content odświeżania. Problem dotyczy ApostropheCMS korzystającego z sanitize-html. Luka została naprawiona w sanitize-html 2.18.0.
- CVE-2026-44990Krytyczne
Podatność w bibliotece sanitize-html (wersje przed 2.17.4) w domyślnej konfiguracji pozwala na ominięcie sanitacji i wstrzyknięcie kodu HTML/JavaScript przez element <xmp>. Może to prowadzić do trwałego XSS w aplikacjach renderujących oczyszczone dane.
- CVE-2026-113654Średnie
W sanitize-html przed wersją 2.18.0 niedomyślna konfiguracja nonTextTags zawierająca noscript może przedwcześnie zakończyć region odrzucania, gdy htmlparser2 emituje domniemane zamknięcie elementu nadrzędnego wewnątrz noscript. Ponieważ przeglądarki ze skryptami traktują zawartość noscript jako surowy tekst, a parser nie modeluje tego trybu, treść przeznaczona do pozostania nieaktywną może przetrwać sanityzację i zostać wyrenderowana.
- CVE-2026-113650Średnie
W sanitize-html 2.18.0, gdy element <iframe> nie jest dozwolony, a disallowedTagsMode ma wartość 'discard' (wartości domyślne), jego zawartość surowego tekstu jest ponownie sanityzowana przez rekurencyjne wywołanie sanitizeHtml(text, options). Rekurencja nie ma ograniczenia i rozpoczyna każde zagnieżdżone wywołanie z nowym stanem.
- CVE-2026-84371Średnie
W ApostropheCMS (Node.js CMS) oraz w bibliotece sanitize-html (od wersji 1.9.0 do 2.17.7) występuje podatność w pakiecie sanitize-html, gdzie walidacja atrybutu animation value nie uwzględnia, że attributeName wybierający href lub xlink:href nadaje semantykę SVG SMIL atrybutom from, to lub by. W konfiguracjach zezwalających na elementy animate, animateColor, animateMotion, animateTransform lub set, lista wartości może zaczynać się od bezpiecznego fragmentu i zawierać późniejszy wykonywalny cel, który przechodzi kontrolę allowedSchemesAppliedToAttributes. Po renderowaniu złośliwego SVG przeglądarka może skopiować ten cel do aktywnego linku, a ofiara klikająca może wykonać skrypt w kontekście aplikacji. Problem naprawiono w wersji 2.17.7.
- CVE-2026-53606Średnie
ApostropheCMS, system zarządzania treścią oparty na Node.js, zawiera podatność w sanitize-html, która pozwala na wykorzystanie niebezpiecznych schematów URI, takich jak 'javascript:', w atrybutach HTML. Wersje przed 2.17.5 nie blokują tych schematów, co prowadzi do możliwości ataków XSS.
Oryginalny opis (angielski, źródło NVD)
ApostropheCMS is an open-source Node.js content management system, and sanitize-html provides a simple HTML sanitizer with a clear API. From sanitize-html 2.17.7 until 2.18.0, an application configuration that permits namespace-prefixed SVG animation elements and the relevant URL-targeting attributes can bypass the SMIL URL protection because prefixed tag names do not match the unprefixed animation-element check. The bypass can rewrite a link destination to an unsafe URI after the sanitized SVG is rendered, with script execution occurring when a user activates the affected link; the default sanitizer configuration is not unconditionally affected. This issue is fixed in sanitize-html 2.18.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

