Katalog CVE

CVE-2026-73492

NiskieCVSS 2.3
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.25%

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

Streszczenie

Loofah w wersjach od 2.25.0 do 2.25.2 nie odrzuca URI javascript: lub vbscript:, których schemat jest podzielony przez odwołania numeryczne znaków bez średnika, takie jak &#58, &#9, &#10 lub &#13. Funkcja CGI.unescapeHTML pozostawia te odwołania zakodowane, więc allowed_uri? uznaje URL za bezpieczny, mimo że przeglądarka dekoduje dwukropek lub usuwa białe znaki i wykonuje wynikowy schemat URI. Problem dotyczy tylko wywołań z bezpośrednio przekazanymi zakodowanymi stringami do allowed_uri?; domyślna ścieżka sanitize() nie jest dotknięta. Problem naprawiono w wersji 2.25.2.

Ocena ryzyka

Atakujący może wykorzystać tę podatność do wstrzyknięcia złośliwego JavaScript lub VBScript, co może prowadzić do ataków XSS lub kradzieży danych, jeśli aplikacja używa allowed_uri? z nieprzetworzonymi danymi.

Rekomendacja

Zaktualizuj bibliotekę Loofah do wersji 2.25.2 lub nowszej oraz unikaj przekazywania zakodowanych stringów bezpośrednio do allowed_uri?.

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

Loofah is a general library for manipulating and transforming HTML/XML documents and fragments, built on top of Nokogiri. From 2.25.0 until 2.25.2, Loofah::HTML5::Scrub.allowed_uri? does not reject javascript: or vbscript: URIs whose scheme is split by semicolon-less numeric character references such as &#58, &#9, &#10, or &#13. CGI.unescapeHTML leaves these references encoded, so allowed_uri? reports the URL safe even though a browser decodes an encoded colon or strips encoded whitespace and executes the resulting URI scheme. This issue affects only callers that pass HTML-encoded strings directly to allowed_uri?; Loofah's default sanitize() path is not affected. This issue is fixed in version 2.25.2.

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