CVE-2026-44572
NiskieCVSS 3.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 21 - wyżej niż 21% wszystkich znanych CVE
Streszczenie
Next.js w wersjach 12.2.0–15.5.15 i 16.2.4 pozwala zewnętrznemu klientowi wysłać nagłówek x-nextjs-data w zwykłym żądaniu do ścieżki obsługiwanej przez middleware zwracający przekierowanie. Middleware może potraktować żądanie jako żądanie danych i zastąpić nagłówek Location wewnętrznym x-nextjs-redirect, którego przeglądarki nie obsługują. Jeśli aplikacja jest za CDN lub reverse proxy cache'ującym odpowiedzi 3xx bez uwzględnienia tego nagłówka, pojedyncze żądanie atakującego może zatruć pamięć podręczną i spowodować odmowę usługi dla tej ścieżki.
Ocena ryzyka
Atakujący może zatruć pamięć podręczną CDN/proxy, powodując, że kolejni użytkownicy otrzymają nieprawidłowe przekierowania bez nagłówka Location. Prowadzi to do odmowy usługi dla dotkniętej ścieżki do czasu wygaśnięcia lub wyczyszczenia wpisu cache.
Rekomendacja
Zaktualizuj Next.js do wersji 15.5.16 lub 16.2.5. Skonfiguruj CDN/proxy tak, aby uwzględniały nagłówek x-nextjs-data w kluczu cache lub nie cache'owały odpowiedzi 3xx.
Inne podatności w Next.js
Zobacz wszystkie- CVE-2017-16877Wysokie
Next.js w wersjach przed 2.4.1 ma podatność na atak typu directory traversal w przestrzeni nazw /_next i /static, co pozwala atakującym na uzyskanie wrażliwych informacji.
- CVE-2026-75604Krytyczne
Next.js, framework React do budowy aplikacji full-stack, w wersjach od 13.4.0 do 15.5.24 i 16.3.3, na serwerach Windows nieprawidłowo obsługuje backslashe w segmentach tras podczas konstruowania ścieżek cache, co pozwala zdalnemu atakującemu na wyjście poza katalog cache i ujawnienie prywatnych danych, w tym klucza szyfrowania server-reference-manifest. Ujawnienie tego klucza może umożliwić zdalne wykonanie kodu. Luka naprawiona w wersjach 15.5.24 i 16.3.3.
- CVE-2026-44578Wysokie
Next.js w wersjach od 13.4.13 do 15.5.15 oraz 16.2.4 jest podatny na fałszowanie żądań po stronie serwera (SSRF) poprzez spreparowane żądania uaktualnienia WebSocket. Atakujący może zmusić serwer do proxy żądań do dowolnych wewnętrznych lub zewnętrznych celów, co może ujawnić wewnętrzne usługi lub punkty końcowe metadanych chmury.
- GHSA-673q-mjm6-r5xrKrytyczne
Podatność w aplikacjach korzystających z App router z komponentem Cache może prowadzić do zdalnego wykonania kodu. Warunkiem jest obecność funkcji `use cache`, która zwraca wiele tablic typowanych.
- CVE-2026-94482Wysokie
Next.js w wersjach od 13.0.0 do 15.5.28 oraz 16.4.1 zawiera podatność, w której spreparowane żądania skierowane do aplikacji App Router z co najmniej jedną Server Action mogą powodować nadmierne zużycie CPU i blokować przetwarzanie kolejnych żądań w tym samym procesie. Aplikacje korzystające z Pages Router oraz aplikacje App Router bez Server Actions nie są dotknięte. Problem naprawiono w wersjach 15.5.28 i 16.4.1.
- CVE-2026-94544Średnie
Next.js w wersjach od 16.3.0 do 16.3.8 współdzieli wypełnienia pamięci podręcznej dla tego samego klucza bez rozdzielania żądań trybu roboczego od zwykłych żądań. Nakładające się zwykłe żądanie może otrzymać nieuwierzytelnione nieopublikowane treści z wypełnienia trybu roboczego, a nakładające się żądanie trybu roboczego może otrzymać opublikowane treści ze zwykłego wypełnienia. Gdy zwykłe żądanie prerenderuje stronę, treści zależne od wersji roboczej mogą pozostać w wygenerowanej stronie i być serwowane późniejszym odwiedzającym do czasu rewalidacji. Luka dotyczy witryn z włączonymi Cache Components lub experimental.useCache, gdy funkcje buforowane zwracają treści zależne od wersji roboczej. Problem naprawiono w wersji 16.3.8.
- CVE-2026-94543Średnie
Next.js w wersjach od 15.0.0 do 15.5.27 oraz 16.3.8 dla samodzielnie hostowanych aplikacji używających Pages Router ze statycznie generowanymi stronami lub Incremental Static Regeneration może kluczować wpis w pamięci podręcznej odpowiedzi bez wystarczającego powiązania go z trasą źródłową. Żądanie może zastąpić wpis pamięci podręcznej jednej strony treścią z innej trasy, co powoduje serwowanie nieprawidłowych treści wszystkim odwiedzającym do czasu rewalidacji. Aplikacje wdrożone na Vercel nie są dotknięte. Problem naprawiono w wersjach 15.5.27 i 16.3.8.
- CVE-2026-94486Średnie
Next.js to framework React do budowy aplikacji full-stack. Od wersji 16.0.0 do 16.3.8 serwer deweloperski next dev udostępnia punkt końcowy Model Context Protocol bez niezawodnego ograniczania żądań między witrynami. Złośliwa witryna odwiedzona przez dewelopera może uzyskać dostęp do punktu końcowego i odczytać lokalizację dysku projektu, fragmenty kodu źródłowego z raportów błędów, listę tras i logi deweloperskie. Wdrożenia produkcyjne nie udostępniają tego punktu końcowego. Problem został naprawiony w wersji 16.3.8.
- CVE-2026-94485Średnie
Next.js w wersjach od 16.0.0 do 16.3.8 w serwerze deweloperskim `next dev` udostępnia endpoint Model Context Protocol bez wystarczającego ograniczenia żądań cross-site. Złośliwa witryna odwiedzona przez dewelopera może uzyskać dostęp do endpointu i odczytać lokalizację dysku projektu, fragmenty kodu źródłowego z raportów błędów, spis tras oraz logi deweloperskie. Wdrożenia produkcyjne nie serwują tego endpointu. Problem naprawiono w wersji 16.3.8.
- CVE-2026-94484Średnie
Next.js w wersjach od 15.0.0 do 15.5.27 oraz 16.3.8 dla aplikacji z catch-all stroną na poziomie głównym i statycznie generowanymi trasami lub Incremental Static Regeneration może używać współdzielonego klucza pamięci podręcznej odpowiedzi, który jest niewystarczająco ograniczony do trasy źródłowej. Pojedyncze nieuwierzytelnione spreparowane żądanie może zatruć tę pamięć podręczną, powodując podmianę treści między użytkownikami lub trwałą odmowę usługi do czasu rewalidacji lub wymiany zatrutego wpisu. Problem naprawiono w wersjach 15.5.27 i 16.3.8.
Oryginalny opis (angielski, źródło NVD)
Next.js is a React framework for building full-stack web applications. From 12.2.0 to before 15.5.16 and 16.2.5, an external client could send a x-nextjs-data header on a normal request to a path handled by middleware that returns a redirect. When that happened, the middleware/proxy could treat the request as a data request and replace the standard Location redirect header with the internal x-nextjs-redirect header. Browsers do not follow x-nextjs-redirect, so the response became an unusable redirect for normal clients. If the application was deployed behind a CDN or reverse proxy that caches 3xx responses without varying on this header, a single attacker request could poison the cached redirect response for the affected path. Subsequent visitors could then receive a cached redirect response without a Location header, causing a denial of service for that redirect path until the cache entry expired or was purged. This vulnerability is fixed in 15.5.16 and 16.2.5.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

