CVE-2026-73492
NiskieCVSS 2.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 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 :, 	, 
 lub 
. 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 :, 	, 
, or 
. 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.

