Podatność w Next.js (wersje 13.0.0–15.5.20 oraz 16.0.0–16.2.10) umożliwia atakującemu zdalnie doprowadzenie do nadmiernego zużycia CPU poprzez spreparowane żądania HTTP. Skutkuje to zablokowaniem przetwarzania kolejnych żądań w danym procesie, co prowadzi do odmowy usługi (DoS).
▸ Pokaż oryginał (EN)
Next.js is a React framework for building full-stack web applications. In versions 13.0.0 through 15.5.20 and 16.0.0 through 16.2.10, crafted requests targeting Next.js applications using App Router with at least one Server Action can lead to excessive CPU usage blocking processing of further requests in the same process. This issue has been fixed in versions 15.5.21 and 16.2.11.
Podatność (CWE-834 — nadmierna iteracja) dotyczy aplikacji Next.js korzystających z App Router z co najmniej jedną zdefiniowaną Server Action. Spreparowane żądanie wysłane do takiej aplikacji wyzwala pętlę lub iterację pochłaniającą nadmierne zasoby CPU. Zablokowany proces nie jest w stanie obsłużyć kolejnych przychodzących żądań, co powoduje niedostępność aplikacji.
Atakujący może doprowadzić do wyczerpania zasobów CPU serwera, blokując przetwarzanie żądań w ramach danego procesu i powodując niedostępność aplikacji (Denial of Service). Atak nie wymaga uwierzytelnienia ani interakcji użytkownika.
Należy zaktualizować Next.js do wersji 15.5.21 lub 16.2.11, w których problem został naprawiony. Poprawki dostępne są w oficjalnym repozytorium GitHub projektu Vercel/Next.js.
Vercel Next.js w wersjach 13.0.0 – 15.5.20 oraz 16.0.0 – 16.2.10, wyłącznie aplikacje używające App Router z co najmniej jedną Server Action.
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XVercel Next.js
APPVercel13.0.0 – 15.5.21 (bez)16.0.0 – 16.2.11 (bez)
Powiązane podatności
RCE bez uwierzytelnienia w React Server Components (deserializacja)
Pominięcie autoryzacji w middleware Next.js przez nagłówek x-middleware-subrequest
Ominięcie uwierzytelniania middleware w Next.js App Router z Turbopack
Next.js: SSRF i Open Redirect przez niekontrolowane reguły rewrites/redirects
SSRF w Next.js — przekierowanie żądań przez Server Actions do złośliwego hosta