CVE-2026-67317
ŚrednieCVSS 6.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 29 - wyżej niż 29% wszystkich znanych CVE
Streszczenie
Axios w wersjach 1.7.0 przed 1.18.0 nie egzekwuje limitu maxBodyLength dla ciał żądań typu WHATWG ReadableStream w adapterze fetch, gdy nie można określić Content-Length. Atakujący mogą dostarczyć dane strumieniowe o nieznanej długości, aby ominąć limity rozmiaru przesyłania i spowodować niekontrolowany egress sieciowy lub wyczerpanie zasobów.
Ocena ryzyka
Ryzyko polega na możliwości ominięcia limitów rozmiaru przesyłania, co może prowadzić do nadmiernego zużycia przepustowości sieciowej i wyczerpania zasobów serwera.
Rekomendacja
Zaleca się aktualizację biblioteki axios do wersji 1.18.0 lub nowszej.
Inne podatności w axios
Zobacz wszystkie- 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-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-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-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.
- 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-67321Średnie
W bibliotece axios w wersjach 0.31.1 przed 0.33.0 oraz 1.15.1 przed 1.18.0 występuje niekompletne obejście ograniczenia głębokości w pliku toFormData.js. Atakujący kontrolujący klucze obiektów i zagnieżdżone wartości przekazywane do serializacji formularza lub parametrów może wywołać błąd RangeError z JSON.stringify, powodując odmowę usługi w ścieżce żądania.
- CVE-2026-67320Wysokie
axios w środowisku Node.js używające adaptera HTTP może kierować żądania przez proxy kontrolowane przez atakującego. axios zabezpiecza scaloną konfigurację żądania, tworząc obiekt z prototypem null, ale interceptory żądań działają po scaleniu; popularny wzorzec niezmiennego interceptora, taki jak {...config} lub Object.assign({}, config), konwertuje zabezpieczoną konfigurację z powrotem na zwykły obiekt. axios następnie wysyła ten obiekt bez ponownego zabezpieczania, a adapter HTTP Node odczytuje config.proxy przez łańcuch prototypów. Jeśli atakujący może zanieczyścić Object.prototype.proxy, dotknięte żądania mogą być kierowane przez proxy kontrolowane przez atakującego. W przypadku zwykłych żądań HTTP proxy może obserwować nagłówki Authorization, Basic auth z config.auth, metodę, bezwzględny URL, Host i treść żądania oraz może zwrócić własną odpowiedź. Dotyczy wersji >=0.31.1 (naprawione w 0.33.0) i >=1.15.2 (naprawione w 1.18.0).
- CVE-2026-67319Średnie
Axios przed wersją 0.33.0 (oraz 1.x przed 1.18.0) może konsumować dziedziczone właściwości z zagnieżdżonych obiektów opcji żądania, gdy Object.prototype procesu JavaScript został już zanieczyszczony przez inny komponent. Mimo że scalona konfiguracja najwyższego poziomu używa prototypu null, zagnieżdżone obiekty, takie jak auth i paramsSerializer, są klonowane do zwykłych obiektów i odczytywane bez sprawdzania własności. Gdy aplikacja przekazuje zagnieżdżone obiekty zastępcze, takie jak auth: {} lub paramsSerializer: {}, dziedziczone wartości nazwy użytkownika/hasła mogą spowodować ciche wstrzyknięcie nagłówka Authorization: Basic, a dziedziczone wartości encode/serialize mogą zmienić serializację łańcucha zapytania (pełna zamiana serializatora wymaga prymitywu zanieczyszczenia funkcją). Jest to możliwe do wykorzystania tylko w obecności istniejącego zanieczyszczenia prototypu.
Oryginalny opis (angielski, źródło NVD)
axios versions 1.7.0 before 1.18.0 fail to enforce maxBodyLength for WHATWG ReadableStream request bodies in the fetch adapter when Content-Length cannot be determined. Attackers can supply unknown-length stream data to bypass upload size limits and cause uncontrolled network egress or resource exhaustion.

