CVE-2025-62718
KrytyczneCVSS 9.9Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 65 - wyżej niż 65% wszystkich znanych CVE
Streszczenie
Podatność w bibliotece Axios przed wersjami 1.15.0 i 0.31.0 nieprawidłowo normalizuje nazwy hostów podczas sprawdzania reguł NO_PROXY. Żądania do adresów pętli zwrotnej, takich jak localhost. (z kropką na końcu) lub [::1] (adres IPv6), omijają dopasowanie NO_PROXY i są kierowane przez skonfigurowany serwer proxy.
Ocena ryzyka
Atakujący może wykorzystać tę lukę do przeprowadzenia ataków typu SSRF (Server-Side Request Forgery) i ominięcia zabezpieczeń proxy, uzyskując dostęp do wrażliwych usług wewnętrznych lub pętli zwrotnej, które powinny być chronione przez reguły NO_PROXY.
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę Axios do wersji 1.15.0 lub 0.31.0, w których naprawiono tę podatność. W przypadku braku możliwości aktualizacji, należy ręcznie sprawdzać i normalizować nazwy hostów przed użyciem w regułach NO_PROXY.
Inne podatności w Axios
Zobacz wszystkie- CVE-2025-27152Wysokie
Podatność w bibliotece axios pozwala na wysyłanie żądań do absolutnych URL-i zamiast względnych, co może prowadzić do ataków SSRF i wycieku poświadczeń. Nawet przy ustawionym baseURL, axios ignoruje to i wysyła żądanie do podanego absolutnego adresu URL.
- GHSA-42h9-826w-cgv3Średnie
Axios w wersjach 0.28.0 i późniejszych zawiera niekontrolowaną rekurencję w formDataToJSON, pomocniku stojącym za publicznym API axios.formToJSON() / nazwanym formToJSON oraz domyślnym przekształceniu żądania używanym, gdy FormData jest wysyłane z typem treści application/json.
- GHSA-mmx7-hfxf-jppxŚrednie
Axios jest podatny na gadżety zanieczyszczenia prototypu po stronie odczytu, gdy Object.prototype został już zanieczyszczony przez inną podatność lub zależność. Najbardziej dostępny problem dotyczy aliasów metod bez ciała: axios.get(), axios.delete(), axios.head() i axios.options().
- GHSA-7q8q-rj6j-mhjqŚrednie
Axios może konsumować dziedziczone właściwości z zagnieżdżonych obiektów opcji żądania, gdy proces JavaScript ma już zanieczyszczony Object.prototype. Główna połączona konfiguracja jest chroniona prototypem null, ale zagnieżdżone zwykłe obiekty, takie jak auth i paramsSerializer, są klonowane do obiektów z prototypem.
- CVE-2023-45857Średnie
W Axios 1.5.1 wykryto problem, który nieumyślnie ujawnia poufny token XSRF-TOKEN przechowywany w ciasteczkach. Token ten jest dołączany do nagłówka HTTP X-XSRF-TOKEN w każdym żądaniu wysyłanym do dowolnego hosta, co pozwala atakującym na podejrzenie wrażliwych informacji.
- GHSA-pmv8-rq9r-6j72Średnie
Axios w wersjach od 0.28.0 zawiera niekontrolowaną rekurencję w formDataToJSON, która jest udostępniana jako axios.formToJSON() i używana wewnętrznie, gdy axios serializuje FormData z Content-Type: application/json. Jeśli aplikacja przekaże kontrolowane przez atakującego nazwy pól FormData, może to prowadzić do wyczerpania stosu.
- CVE-2026-101909Wysokie
Axios od wersji 0.28.0 do 0.34.0 oraz od 1.15.1 do 1.20.0 przetwarza dziedziczone opcje serializacji i właściwości odwiedzającego dostarczane przez zanieczyszczenie prototypu. Osobna wada zanieczyszczenia prototypu w tym samym procesie dostarcza dziedziczone wartości dots, indexes, metaTokens, maxDepth, visitor lub Blob przed serializacją obiektów. Dziedziczone opcje zmieniają nazewnictwo pól i interpretację danych, maxDepth może wymusić błąd żądania, Blob zmienia obsługę wartości, a zanieczyszczony visitor może wykonać kod, gdy atakujący ma już silniejszą zdolność wstrzyknięcia funkcji.
- CVE-2026-101908Średnie
W Axios od wersji 1.7.0 do 1.20.0 adapter fetch konstruuje Request z oczyszczonymi resolvedOptions, ale następnie wywołuje fetch z oryginalnymi fetchOptions. Osobna wada zanieczyszczenia prototypu w tym samym procesie wypełnia Object.prototype.headers, więc fetchOptions.headers rozwiązuje się przez dziedziczenie. Odziedziczona wartość fetchOptions.headers nadpisuje oczyszczone nagłówki Request przez drugi argument do fetch po konstrukcji Request. Nagłówki kontrolowane przez atakującego mogą zmienić autoryzację, buforowanie, dostęp do usług metadanych lub zachowanie specyficzne dla aplikacji.
- CVE-2026-101907Wysokie
Axios od wersji 1.17.0 do 1.20.0 w adapterze fetch omija politykę przekierowań maxRedirects: 0. Żądanie Axios używające adaptera fetch z maxRedirects ustawionym na zero otrzymuje odpowiedź przekierowania, ale bazowa implementacja fetch podąża za przekierowaniem zamiast zwrócić odpowiedź bez zmian. Przekierowane żądanie może uzyskać dostęp do wewnętrznych odpowiedzi lub osiągnąć wewnętrzne punkty końcowe zmieniające stan, mimo że przekierowania są wyłączone.
- CVE-2026-101906Wysokie
Axios od wersji 1.15.0 do 1.20.0 w funkcji shouldBypassProxy stosuje kwadratowe wyrażenie regularne z kropkami na końcu do nazw hostów przekierowań. Gdy skonfigurowano HTTP_PROXY lub HTTPS_PROXY, NO_PROXY lub no_proxy nie jest puste, przekierowania są śledzone, a spreparowane przekierowanie Location zawiera wiele kropek po których następuje znak niebędący kropką, wyrażenie regularne może powodować kwadratowe cofanie się, blokując pętlę zdarzeń Node.js i powodując odmowę usługi.
Oryginalny opis (angielski, źródło NVD)
Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.0 and 0.31.0, Axios does not correctly handle hostname normalization when checking NO_PROXY rules. Requests to loopback addresses like localhost. (with a trailing dot) or [::1] (IPv6 literal) skip NO_PROXY matching and go through the configured proxy. This goes against what developers expect and lets attackers force requests through a proxy, even if NO_PROXY is set up to protect loopback or internal services. This issue leads to the possibility of proxy bypass and SSRF vulnerabilities allowing attackers to reach sensitive loopback or internal services despite the configured protections. This vulnerability is fixed in 1.15.0 and 0.31.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

