Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Next.js Cache Poisoning #55

Closed
ADITYAVOFFICIAL opened this issue Sep 27, 2024 · 0 comments · Fixed by #56
Closed

Next.js Cache Poisoning #55

ADITYAVOFFICIAL opened this issue Sep 27, 2024 · 0 comments · Fixed by #56
Assignees

Comments

@ADITYAVOFFICIAL
Copy link
Member

Impact
By sending a crafted HTTP request, it is possible to poison the cache of a non-dynamic server-side rendered route in the pages router (this does not affect the app router). When this crafted request is sent it could coerce Next.js to cache a route that is meant to not be cached and send a Cache-Control: s-maxage=1, stale-while-revalidate header which some upstream CDNs may cache as well.

To be potentially affected all of the following must apply:

Next.js between 13.5.1 and 14.2.9
Using pages router
Using non-dynamic server-side rendered routes e.g. pages/dashboard.tsx not pages/blog/[slug].tsx
The below configurations are unaffected:

Deployments using only app router
Deployments on Vercel are not affected
Patches
This vulnerability was resolved in Next.js v13.5.7, v14.2.10, and later. We recommend upgrading regardless of whether you can reproduce the issue or not.

Workarounds
There are no official or recommended workarounds for this issue, we recommend that users patch to a safe version.

@ADITYAVOFFICIAL ADITYAVOFFICIAL self-assigned this Sep 27, 2024
@ADITYAVOFFICIAL ADITYAVOFFICIAL linked a pull request Sep 27, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant