CVE-2026-75975
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 14 - wyżej niż 14% wszystkich znanych CVE
Streszczenie
Parser URI fast-uri dla Node.js nieprawidłowo waliduje adresy IPv6 w nawiasach, co pozwala na przekształcenie złośliwego hosta w inny adres IPv6, np. loopback lub adres prywatny. Podatność dotyczy wersji 2.3.1 do 2.4.4, 3.0.0 do 3.1.5 oraz 4.0.0 do 4.1.2.
Ocena ryzyka
Aplikacje normalizujące niezaufane URL-e przed wysłaniem żądań mogą zostać przekierowane do lokalnych lub prywatnych usług, co umożliwia ataki SSRF i obejście polityki adresowej.
Rekomendacja
Zaktualizuj fast-uri do wersji 2.4.5, 3.1.6 lub 4.1.3, które walidują pełną gramatykę adresów IPv6 i oznaczają błędne literały jako błędy autorytetu.
Inne podatności w fast-uri
Zobacz wszystkie- CVE-2026-76172Wysokie
Parser URI fast-uri dla Node.js nieprawidłowo przetwarza schemat z zakodowanymi procentowo ukośnikami, co pozwala atakującemu na manipulację hostem i obejście list dozwolonych. Podatność dotyczy wersji 2.3.1 do 2.4.4, 3.0.0 do 3.1.5 oraz 4.0.0 do 4.1.2.
- CVE-2026-75931Wysokie
Parser URI fast-uri dla Node.js nie kanonizuje hosta w referencjach względnych schematu, co prowadzi do niespójności między funkcjami parse, resolve, normalize i equal. Podatność dotyczy wersji 2.4.2 do 2.4.4, 3.1.3 do 3.1.5 oraz 4.0.1 do 4.1.2.
- CVE-2026-75899Wysokie
Parser URI fast-uri dla Node.js dekoduje procentowe sekwencje w nazwie hosta dwukrotnie, co może prowadzić do zmiany docelowego adresu na loopback lub inny adres wewnętrzny. Podatność dotyczy wersji 2.4.1 do 2.4.4, 3.1.2 do 3.1.5 oraz 4.0.0 do 4.1.2.
- CVE-2026-18446Wysokie
Biblioteka fast-uri przed wersjami 4.1.2, 3.1.5 i 2.4.4 nieprawidłowo parsuje URI, gdy zamiast podwójnego ukośnika użyto znaku backslasha. Node.js traktuje backslash jako zamiennik ukośnika, co prowadzi do różnic w parsowaniu hosta. Aplikacje używające fast-uri do egzekwowania polityk opartych na hoście mogą zostać przekierowane na niezamierzony host.
- CVE-2026-16221Wysokie
Podatność w bibliotece fast-uri (wersje 2.3.1-4.1.0, 3.x do 3.1.3, 2.x do 2.4.2). Znak backslash nie jest traktowany jako ogranicznik autorytetu, podczas gdy parser Node.js normalizuje go do slash. Różnica w parsowaniu może prowadzić do ominięcia polityk opartych na hostach (allowlisty, filtrowanie SSRF).
- CVE-2026-13676Wysokie
fast-uri w wersjach 2.3.1 do 3.1.2 oraz 4.0.0 nie kanonizuje nazw hostów Unicode (IDN) w adresach URL rodziny HTTP. Powoduje to rozbieżności między fast-uri a natywnym parserem URL Node.js, co może prowadzić do obejścia polityk opartych na hostach.
- CVE-2026-6322Wysokie
W bibliotece fast-uri w wersjach do 3.1.1 funkcja normalize() dekodowała zakodowane procentowo znaki ograniczników autorytetu w komponencie hosta, a następnie emitowała je jako surowe ograniczniki podczas serializacji. Pozwala to na zmianę autorytetu URI na inny niż wskazywało wejście, co może prowadzić do przekierowania ruchu do nieautoryzowanego hosta.
- CVE-2026-6321Wysokie
W bibliotece fast-uri w funkcjach normalize() i equal() odkodowano procentowo zakodowane separatory ścieżki oraz kropki przed usunięciem segmentów kropek. Zakodowane dane ścieżki były traktowane jak prawdziwe ukośniki i odwołania do katalogu nadrzędnego, co powodowało, że różne URI mogły być znormalizowane do tej samej ścieżki. Podatność dotyczy wersji do 3.1.0 włącznie.
Oryginalny opis (angielski, źródło NVD)
fast-uri is a URI parser for Node.js. Its custom parser for bracketed IPv6 literals does not validate the complete IPv6 grammar, so invalid trailing text in an authority can be silently discarded and a malformed attacker-controlled host is turned into a different valid IPv6 destination. For example, a bracketed literal with invalid trailing characters is normalized to the unspecified address, which a Node HTTP client then connects to a local service over loopback, and other malformed literals collapse to private-range addresses. No error is set on the parsed result, so an application checking the error field cannot detect the rewrite. An application that normalizes untrusted URLs before outbound requests, redirects, proxy routing, or address-policy enforcement can be redirected to a local or private IPv6 target, giving a server-side request forgery and address-policy bypass primitive. The affected versions are 2.3.1 up to but not including 2.4.5, 3.0.0 up to but not including 3.1.6, and 4.0.0 up to but not including 4.1.3. The issue is fixed in 2.4.5, 3.1.6, and 4.1.3, which validate bracketed IP literals against the full grammar and mark malformed literals as authority errors. Users should upgrade to a patched version.

