HIGH🇬🇧 English

CVE-2026-64645

Next.js: SSRF i Open Redirect przez niekontrolowane reguły rewrites/redirects

CVSS 8.3v4.0pub. 2026-07-27upd. 2026-07-29

Podatność w framework Next.js umożliwia atakującemu manipulowanie docelowym hostem w regułach rewrites() lub redirects(), jeśli nazwa hosta jest budowana na podstawie danych wejściowych z żądania. Prowadzi to do ataku SSRF (Server-Side Request Forgery) lub Open Redirect, co może skutkować nieautoryzowanym dostępem do wewnętrznych zasobów lub przekierowaniem użytkowników na złośliwe witryny.

Pokaż oryginał (EN)

Next.js is a React framework for building full-stack web applications. In versions 12.0.0 through 15.5.20 and 16.0.0 through 16.2.10, a rewrites() or redirects() rule that builds its external destination hostname from request-controlled input can be pointed at an arbitrary hostname, regardless of the rule's hostname suffix. For a rewrite, Next.js proxies the request to that arbitrary host and serves the response from the application's origin, leading to Server-Side Request forgery. A redirects() rule configured this way is vulnerable to an Open Redirect. This issue has been fixed in versions 15.5.21 and 16.2.11.

🤖 Analiza AI
Jak działa

Gdy reguła rewrites() buduje docelową nazwę hosta z danych kontrolowanych przez żądanie sieciowe (np. nagłówków lub parametrów URL), atakujący może wskazać dowolny host, omijając ograniczenia sufiksu hostname zdefiniowane w regule. W przypadku rewrite Next.js pośredniczy w żądaniu, przesyłając je do wskazanego przez atakującego hosta i zwracając odpowiedź z serwera aplikacji, co stanowi klasyczny SSRF. W przypadku reguły redirects() skonfigurowanej w analogiczny sposób możliwe jest przekierowanie użytkownika na dowolny zewnętrzny adres URL (Open Redirect).

Skutki

Atakujący może uzyskać dostęp do wewnętrznych zasobów infrastruktury niedostępnych publicznie (SSRF) lub przekierować użytkowników aplikacji na kontrolowane przez siebie, potencjalnie złośliwe strony internetowe (Open Redirect), co może być wykorzystane do phishingu lub kradzieży danych uwierzytelniających.

Mitygacja

Należy zaktualizować Next.js do wersji 15.5.21 (gałąź 15.x) lub 16.2.11 (gałąź 16.x), w których problem został naprawiony. Patche dostępne są w repozytoriach GitHub projektu pod wskazanymi tagami wydań.

Kogo dotyczy

Vercel Next.js w wersjach 12.0.0 – 15.5.20 oraz 16.0.0 – 16.2.10

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:L/VA:N/SC:L/SI:L/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:X
  • Vercel Next.js

    APP
    Vercel
    12.0.0 – 15.5.21 (bez)16.0.0 – 16.2.11 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
SSRF
CWE
Referencje

Powiązane podatności

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

RCE bez uwierzytelnienia w React Server Components (deserializacja)

CVE-2025-29927CRITICAL9.1PL ✓ten sam produkt

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

CVE-2026-64641HIGH8.2PL ✓ten sam produkt

Vercel Next.js — nadmierne zużycie CPU przez spreparowane żądania (DoS)

CVE-2026-64642HIGH8.3PL ✓ten sam produkt

Ominięcie uwierzytelniania middleware w Next.js App Router z Turbopack

CVE-2026-64649HIGH8.3PL ✓ten sam produkt

SSRF w Next.js — przekierowanie żądań przez Server Actions do złośliwego hosta