CVE-2026-101906
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 32 - wyżej niż 32% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Atakujący może spowodować blokadę pętli zdarzeń Node.js, co prowadzi do niedostępności aplikacji (DoS).
Rekomendacja
Zaktualizuj Axios do wersji 1.20.0 lub nowszej, aby naprawić podatność.
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-2025-62718Krytyczne
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.
- 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.
Oryginalny opis (angielski, źródło NVD)
Axios is a promise-based HTTP client for the browser and Node.js. From 1.15.0 until 1.20.0, Axios shouldBypassProxy applies a quadratic trailing-dot regular expression to redirect hostnames. HTTP_PROXY or HTTPS_PROXY is configured, NO_PROXY or no_proxy is non-empty, redirects are followed, and a crafted redirect Location contains many dots followed by a non-dot character. Hostname.replace(/.+$/, '') backtracks quadratically while processing the crafted redirect hostname. Synchronous regular-expression processing can block the Node.js event loop and cause denial of service. This issue is fixed in version 1.20.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

