CVE-2026-25765
ŚrednieCVSS 5.8Streszczenie
W bibliotece Faraday metoda build_exclusive_url używa URI#merge do łączenia bazowego adresu URL z ścieżką podaną przez użytkownika. Protokołowo-relatywne adresy URL (np. //evil.com/path) mogą nadpisać host bazowego adresu, umożliwiając atakującemu przekierowanie żądania do dowolnego hosta i przeprowadzenie Server-Side Request Forgery (SSRF). Problem naprawiono w wersji 2.14.1.
Ocena ryzyka
Aplikacje przekazujące dane wejściowe użytkownika do metod żądań Faraday mogą zostać wykorzystane do SSRF, co pozwala atakującemu na dostęp do zasobów wewnętrznych lub obejście kontroli dostępu. Ryzyko dotyczy usług serwerowych korzystających z podatnych wersji Faraday.
Rekomendacja
Zaktualizuj Faraday do wersji 2.14.1 lub nowszej. Dodatkowo waliduj i normalizuj adresy URL pochodzące od użytkowników przed przekazaniem ich do biblioteki.
Inne podatności w Faraday
Zobacz wszystkie- CVE-2026-54297Wysokie
Podatność w bibliotece Faraday pozwala na atak DoS poprzez przesłanie specjalnie spreparowanego zagnieżdżonego ciągu zapytania. Dekoder NestedParamsEncoder nie ogranicza głębokości zagnieżdżenia, co prowadzi do przepełnienia stosu i awarii wątku lub procesu roboczego.
- CVE-2026-33637Nieznane
Faraday to biblioteka HTTP client library abstraction layer. W wersjach od 2.0.0 do 2.14.1 nadal możliwe jest nadpisywanie hosta względem protokołu, gdy cel żądania jest przekazywany jako obiekt URI (a nie jako String) do metody Faraday::Connection#build_exclusive_url. Obejście to pozwala na ataki typu off-host request forgery, gdzie żądanie z ustalonego połączenia może zostać przekierowane na kontrolowany przez atakującego host, przekazując wartości z zakresu połączenia, takie jak nagłówki Authorization i domyślne parametry zapytania. Problem został naprawiony w wersji 2.14.3.
Oryginalny opis (angielski, źródło NVD)
Faraday is an HTTP client library abstraction layer that provides a common interface over many adapters. Prior to 2.14.1, Faraday's build_exclusive_url method (in lib/faraday/connection.rb) uses Ruby's URI#merge to combine the connection's base URL with a user-supplied path. Per RFC 3986, protocol-relative URLs (e.g. //evil.com/path) are treated as network-path references that override the base URL's host/authority component. This means that if any application passes user-controlled input to Faraday's get(), post(), build_url(), or other request methods, an attacker can supply a protocol-relative URL like //attacker.com/endpoint to redirect the request to an arbitrary host, enabling Server-Side Request Forgery (SSRF). This vulnerability is fixed in 2.14.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

