Katalog CVE

CVE-2026-68747

ŚrednieCVSS 6.1
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.25%

Percentyl 17 - wyżej niż 17% wszystkich znanych CVE

Streszczenie

Podatność polegająca na niewłaściwej neutralizacji specjalnych elementów w danych wyjściowych używanych przez komponent podrzędny (wstrzyknięcie) w skruberze CSS w html_sanitize_ex. Nieuwierzytelniony zdalny atakujący może wstrzyknąć reguły CSS, w tym import zewnętrznego arkusza stylów, do strony serwowanej innym użytkownikom. HtmlSanitizeEx.Scrubber.CSS.scrub/1 stosuje listę dozwolonych właściwości i wartości przez Regex.replace na podciągach pasujących do wzorca deklaracji właściwość: wartość, więc dane wejściowe niepasujące do tego wzorca nie są sprawdzane i są kopiowane do wyniku bez zmian. @import url(//attacker.example/style.css); przetrwa, podczas gdy ten sam URL wewnątrz deklaracji background: url(...) jest usuwany. Granice elementów są rozwiązywane przed uruchomieniem skrubera, więc wstrzyknięta treść nie ucieka z elementu <style> i nie wykonuje się żaden skrypt. Dotyczy wersji html_sanitize_ex od 0.3.1 przed 1.4.5 oraz od 1.5.0-rc.0 przed 1.5.4.

Ocena ryzyka

Atakujący może wstrzyknąć zewnętrzne arkusze stylów do stron, co może prowadzić do defacementu, kradzieży danych przez phishing lub innych ataków opartych na CSS, choć bez wykonywania skryptów.

Rekomendacja

Zaktualizuj html_sanitize_ex do wersji 1.4.5 lub 1.5.4 (w zależności od gałęzi), aby uzyskać poprawkę.

Inne podatności w html_sanitize_ex

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection') vulnerability in the CSS scrubber in rrrene html_sanitize_ex allows an unauthenticated remote attacker to inject CSS at-rules, including an import of a remote stylesheet, into a page served to other users. HtmlSanitizeEx.Scrubber.CSS.scrub/1 applies its property and value allowlist through a Regex.replace over substrings matching a property: value declaration pattern, so input that does not match that pattern is never inspected and is copied to the output unchanged. @import url(//attacker.example/style.css); survives, while the same URL inside a background: url(...) declaration is removed. Element boundaries are resolved before the scrubber runs, so injected content does not escape the <style> element and no script executes. This issue affects html_sanitize_ex: from 0.3.1 before 1.4.5 and from 1.5.0-rc.0 before 1.5.4.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS