Next.js 15.2.0 introduces subtle yet potentially impactful changes compared to the previous stable version, 15.1.8. Both versions share the same core dependencies like busboy, postcss, @next/env, styled-jsx, @swc/counter, and @swc/helpers, ensuring a foundational level of consistency. However, examining the devDependencies reveals key updates. Most notably, the core webpack dependency jumps from version 5.96.1 to 5.98.0, which may bring performance improvements and bug fixes.
The @next/font, @next/swc and @next/react-refresh-utils versions have been bumped reflecting internal improvements to the font optimization, compiler, and fast refresh capabilities of Next.js. The typescript version remains the same, indicating no major language feature adoption in this patch.
Other changes concern package versions for development tools. Some packages have been omitted and some updated to later revisions, like storybook from 8.6.0 and the addition of @storybook/addon-webpack5-compiler-swc which means that a swc compiler can be use to develop Storybook components.
Developers aiming to upgrade should evaluate how these webpack and swc related package updates impact their build process and application performance. Carefully review changelogs for webpack and swc. The new @storybook packages indicate enhancements for UI development workflows. Also worth considering are the changes on optional dependencies like the versions of @next/swc for different architectures in order to improve app performance. Always test thoroughly to ensure compatibility and stability after upgrading.
All the vulnerabilities related to the version 15.2.0 of the package
Information exposure in Next.js dev server due to lack of origin verification
A low-severity vulnerability in Next.js has been fixed in version 15.2.2. This issue may have allowed limited source code exposure when the dev server was running with the App Router enabled. The vulnerability only affects local development environments and requires the user to visit a malicious webpage while npm run dev
is active.
Because the mitigation is potentially a breaking change for some development setups, to opt-in to the fix, you must configure allowedDevOrigins
in your next config after upgrading to a patched version. Learn more.
Learn more: https://vercel.com/changelog/cve-2025-48068
Thanks to sapphi-red and Radman Siddiki for responsibly disclosing this issue.
Authorization Bypass in Next.js Middleware
It is possible to bypass authorization checks within a Next.js application, if the authorization check occurs in middleware.
15.2.3
14.2.25
13.5.9
12.3.5
Note: Next.js deployments hosted on Vercel are automatically protected against this vulnerability.
If patching to a safe version is infeasible, it is recommend that you prevent external user requests which contain the x-middleware-subrequest
header from reaching your Next.js application.
Next.js Affected by Cache Key Confusion for Image Optimization API Routes
A vulnerability in Next.js Image Optimization has been fixed in v15.4.5 and v14.2.31. When images returned from API routes vary based on request headers (such as Cookie
or Authorization
), these responses could be incorrectly cached and served to unauthorized users due to a cache key confusion bug.
All users are encouraged to upgrade if they use API routes to serve images that depend on request headers and have image optimization enabled.
More details at Vercel Changelog
Next.js Content Injection Vulnerability for Image Optimization
A vulnerability in Next.js Image Optimization has been fixed in v15.4.5 and v14.2.31. The issue allowed attacker-controlled external image sources to trigger file downloads with arbitrary content and filenames under specific configurations. This behavior could be abused for phishing or malicious file delivery.
All users relying on images.domains
or images.remotePatterns
are encouraged to upgrade and verify that external image sources are strictly validated.
More details at Vercel Changelog
Next.js Improper Middleware Redirect Handling Leads to SSRF
A vulnerability in Next.js Middleware has been fixed in v14.2.32 and v15.4.7. The issue occurred when request headers were directly passed into NextResponse.next()
. In self-hosted applications, this could allow Server-Side Request Forgery (SSRF) if certain sensitive headers from the incoming request were reflected back into the response.
All users implementing custom middleware logic in self-hosted environments are strongly encouraged to upgrade and verify correct usage of the next()
function.
More details at Vercel Changelog