CRITICAL✓ PATCH🇬🇧 English

CVE-2025-29927

Pominięcie autoryzacji w middleware Next.js przez nagłówek x-middleware-subrequest

CVSS 9.1v3.1pub. 2025-03-21upd. 2025-09-10

Podatność w frameworku Next.js (Vercel) umożliwia atakującemu całkowite ominięcie mechanizmów autoryzacji zaimplementowanych w middleware aplikacji. Zagrożenie jest krytyczne, ponieważ nie wymaga uwierzytelnienia ani interakcji użytkownika, a może prowadzić do nieuprawnionego dostępu do chronionych zasobów.

Pokaż oryginał (EN)

Next.js is a React framework for building full-stack web applications. Starting in version 1.11.4 and prior to versions 12.3.5, 13.5.9, 14.2.25, and 15.2.3, it is possible to bypass authorization checks within a Next.js application, if the authorization check occurs in middleware. If patching to a safe version is infeasible, it is recommend that you prevent external user requests which contain the x-middleware-subrequest header from reaching your Next.js application. This vulnerability is fixed in 12.3.5, 13.5.9, 14.2.25, and 15.2.3.

🤖 Analiza AI
Jak działa

Atakujący wysyła żądanie HTTP zawierające specjalnie spreparowany nagłówek x-middleware-subrequest. Next.js traktuje takie żądanie jako wewnętrzne podzapytanie middleware i pomija wykonanie logiki autoryzacyjnej zdefiniowanej w warstwie middleware. W efekcie kontrole dostępu — niezależnie od ich implementacji — są ignorowane, a żądanie trafia do chronionych zasobów bez weryfikacji uprawnień. Problem dotyczy wszystkich sprawdzeń autoryzacyjnych umieszczonych wyłącznie w middleware.

Skutki

Atakujący może uzyskać nieautoryzowany dostęp do chronionych zasobów aplikacji oraz manipulować danymi, do których normalnie nie powinien mieć uprawnień, co odpowiada naruszeniu poufności i integralności (CWE-285, CWE-863).

Mitygacja

Należy zaktualizować Next.js do wersji 12.3.5, 13.5.9, 14.2.25 lub 15.2.3. Jeśli aktualizacja nie jest możliwa do natychmiastowego wdrożenia, producent zaleca blokowanie na poziomie infrastruktury (reverse proxy, firewall, load balancer) wszystkich przychodzących żądań zewnętrznych zawierających nagłówek x-middleware-subrequest, tak aby nie docierały do aplikacji Next.js.

Kogo dotyczy

Next.js w wersjach od 1.11.4 do 12.3.4, od 13.0.0 do 13.5.8, od 14.0.0 do 14.2.24 oraz od 15.0.0 do 15.2.2 — wszystkie warianty oparte o framework Next.js firmy Vercel, w których logika autoryzacji jest zaimplementowana w middleware.

Uwagi

Producent (Vercel) opublikował oficjalne security advisory GHSA-f82v-jwr5-mffw. Podatność dotyczy wyłącznie aplikacji, w których autoryzacja jest realizowana w warstwie middleware — jeśli sprawdzenia uprawnień są implementowane na poziomie poszczególnych route handlerów lub stron, ryzyko jest mniejsze.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
  • Vercel Next.js

    APP
    Vercel
    11.1.4 – 12.3.5 (bez)13.0.0 – 13.5.9 (bez)14.0.0 – 14.2.25 (bez)15.0.0 – 15.2.3 (bez)
🟢
PATCH DOSTĘPNY
Aktualizacja od producenta gotowa. Wdrożenie w ramach standardowego cyklu.
CWE
Referencje

Powiązane podatności

CVE-2025-55182CRITICAL10.0⚠ KEVPL ✓ten sam produkt

RCE bez uwierzytelnienia w React Server Components (deserializacja)

CVE-2026-44573HIGH7.5ten sam produkt

Next.js is a React framework for building full-stack web applications. From 12.2.0 to before 15.5.16 and 16.2....

CVE-2026-44575HIGH7.5ten sam produkt

Next.js is a React framework for building full-stack web applications. From 15.2.0 to before 15.5.16 and 16.2....

CVE-2026-44574HIGH8.1ten sam produkt

Next.js is a React framework for building full-stack web applications. From 15.4.0 to before 15.5.16 and 16.2....

CVE-2026-44578HIGH8.6ten sam produkt

Next.js is a React framework for building full-stack web applications. From 13.4.13 to before 15.5.16 and 16.2...