Skip to content
OpenAdvisories
Low · 3.7 Public exploit CVE-2025-32421 EUVD-2025-14946GHSA-qpjv-v59x-3qc4

Next.js Race Condition to Cache Poisoning

Published May 14, 2025 · Updated May 15, 2025 · Assigned by GitHub_M

Description

Next.js is a React framework for building full-stack web applications. Versions prior to 14.2.24 and 15.1.6 have a race-condition vulnerability. This issue only affects the Pages Router under certain misconfigurations, causing normal endpoints to serve `pageProps` data instead of standard HTML. This issue was patched in versions 15.1.6 and 14.2.24 by stripping the `x-now-route-matches` header from incoming requests. Applications hosted on Vercel's platform are not affected by this issue, as the platform does not cache responses based solely on `200 OK` status without explicit `cache-control` headers. Those who self-host Next.js deployments and are unable to upgrade immediately can mitigate this vulnerability by stripping the `x-now-route-matches` header from all incoming requests at the content development network and setting `cache-control: no-store` for all responses under risk. The maintainers of Next.js strongly recommend only caching responses with explicit cache-control headers.

Affected products

VendorProductAffectedFixed
vercel next.js < 14.2.24, >= 15.0.0, < 15.1.6 —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 2 repositories

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Affected packages

EcosystemPackageAffectedFixedRecord
npm next >= 0.9.9, < 14.2.24 14.2.24 GHSA-qpjv-v59x-3qc4
npm next >= 15.0.0, < 15.1.6 15.1.6 GHSA-qpjv-v59x-3qc4

Advisories 1

References