chore(deps): update dependency next to v14 [security] #5377
+47
−60
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
13.4.10
->14.1.1
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
GitHub Vulnerability Alerts
CVE-2023-46298
Next.js before 13.4.20-canary.13 lacks a cache-control header and thus empty prefetch responses may sometimes be cached by a CDN, causing a denial of service to all users requesting the same URL via that CDN. Cloudflare considers these requests cacheable assets.
CVE-2024-34350
Impact
Inconsistent interpretation of a crafted HTTP request meant that requests are treated as both a single request, and two separate requests by Next.js, leading to desynchronized responses. This led to a response queue poisoning vulnerability in the affected Next.js versions.
For a request to be exploitable, the affected route also had to be making use of the rewrites feature in Next.js.
Patches
The vulnerability is resolved in Next.js
13.5.1
and newer. This includes Next.js14.x
.Workarounds
There are no official workarounds for this vulnerability. We recommend that you upgrade to a safe version.
References
https://portswigger.net/web-security/request-smuggling/advanced/response-queue-poisoning
CVE-2024-34351
Impact
A Server-Side Request Forgery (SSRF) vulnerability was identified in Next.js Server Actions by security researchers at Assetnote. If the
Host
header is modified, and the below conditions are also met, an attacker may be able to make requests that appear to be originating from the Next.js application server itself.Prerequisites
<14.1.1
) is running in a self-hosted* manner./
.* Many hosting providers (including Vercel) route requests based on the Host header, so we do not believe that this vulnerability affects any Next.js applications where routing is done in this manner.
Patches
This vulnerability was patched in #62561 and fixed in Next.js
14.1.1
.Workarounds
There are no official workarounds for this vulnerability. We recommend upgrading to Next.js
14.1.1
.Credit
Vercel and the Next.js team thank Assetnote for responsibly disclosing this issue to us, and for working with us to verify the fix. Thanks to:
Adam Kues - Assetnote
Shubham Shah - Assetnote
CVE-2024-47831
Impact
The image optimization feature of Next.js contained a vulnerability which allowed for a potential Denial of Service (DoS) condition which could lead to excessive CPU consumption.
Not affected:
next.config.js
file is configured withimages.unoptimized
set totrue
orimages.loader
set to a non-default value.Patches
This issue was fully patched in Next.js
14.2.7
. We recommend that users upgrade to at least this version.Workarounds
Ensure that the
next.config.js
file has eitherimages.unoptimized
,images.loader
orimages.loaderFile
assigned.Credits
Brandon Dahler (brandondahler), AWS
Dimitrios Vlastaras
CVE-2024-39693
Impact
A Denial of Service (DoS) condition was identified in Next.js. Exploitation of the bug can trigger a crash, affecting the availability of the server.
This vulnerability can affect all Next.js deployments on the affected versions.
Patches
This vulnerability was resolved in Next.js 13.5 and later. We recommend that users upgrade to a safe version.
Workarounds
There are no official workarounds for this vulnerability.
Credit
Release Notes
vercel/next.js (next)
v14.1.1
Compare Source
Note: this is a backport release for critical bug fixes -- this does not include all pending features/changes on canary
Core Changes
Credits
Huge thanks to @huozhi, @shuding, @Ethan-Arrowood, @styfle, @ijjk, @ztanner, @balazsorban44, @kdy1, and @williamli for helping!
v14.1.0
Compare Source
Core Changes
swc_core
tov0.86.98
and turbopack: #59393optimize_server_react
transform: #59390default
handling in route groups that handle interception: #59752auto-cjs
pass: #60118@vercel/[email protected]
: #60172<Script>
withbeforeInteractive
strategy ignores additional attributes in App Router: #59779auto-cjs
pass: #60216generateStaticParams
withoutput:export
: #57053node-web-audio-api
to server-external-packages.json: #60243next dev --experimental-https
: #603570cdfef1
tof1039be
: #60368watchpack
to the precompile: #60309chalk
: #60317updatedModules
for App Router and Turbopack changes: #59785RootLayout
with parallel routes: #60401unstable_cache
implementation: #60403experimental.missingSuspenseWithCSRBailout
flag: #57642experimental.missingSuspenseWithCSRBailout
flag": #60508f1039be
to60a927d
: #60619experimental.missingSuspenseWithCSRBailout
flag" (#60508): #60751unstable_getImgProps()
=>getImageProps()
: #60739normalize-catchall-routes
test case: #60777next/headers
: #60817browserslist
andcaniuse-lite
: #60827generateStaticParams
withoutput:export
": #60831Documentation Changes
getServerSideProps
page: #59545generateSitemaps
: #59626@next/third-parties
documentation for Google Analytics: #59671typesafe-i18n
from thrid-party i18n options: #59624cwd
to VSCode debugging setup steps: #58689useFormState
: #60010redirect
with client components: #60056maxDuration
info: #60086⌘+Enter
for forms: #60090Optimizing: Third Party Libraries
: #60136revalidatePath
'spath
has dynamic segment path,type
must bepage
.: #59149Optimizing: Third Party Libraries
on tracking pageviews for Google Analytics: #60176revalidate
type annotation: #60230compression
docs: #60264useSearchParams
behavior: #60257compress
: #60268searchParams
is not passed to Layouts: #60277remotePatterns
to mention what happens when prop is omitted: #60387@next/third-parties
being experimental: #60372windowHistorySupport
flag, and addpushState
/replaceState
examples: #60374windowHistorySupport
title: #60503.svg
unoptimized behavior: #60735Example Changes
with-vitest
example. Unlocks the tests passing withserver-only
usage: #58902with-algolia-react-instantsearch
example to latest major version and use app router: #59961image-component
example to App Router: #60289cache-handler-redis
example dependencies: #59458useOptimistic
: #60596Misc Changes
swc_core
tov0.87.10
: #59834swc_core
tov0.87.16
: #60192create-next-app
even smaller and faster: #58030Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Renovate Bot.