CVE-2026-6402: webpack-dev-server vulnerable to cross-origin source code exposure on non-HTTPS origins
Impact
When webpack-dev-server is running on a non-HTTPS origin (the default), cross-origin requests from malicious websites can load the dev server's JavaScript bundles via <script> tags. The fix introduced in v5.2.1 (CVE-2025-30359) relied on Sec-Fetch-Mode and Sec-Fetch-Site request headers to block these requests, but browsers only send these headers for potentially trustworthy origins. Over plain HTTP, the headers are absent and the check is bypassed.
An attacker who knows the dev server's host, port, and output path can exfiltrate all module source code by intercepting the webpack runtime's module registration.
This does not affect Chrome 142+ (and other Chromium-based browsers) due to local network access restrictions.
Patches
Patched in webpack-dev-server >= 5.2.4 by setting Cross-Origin-Resource-Policy: same-origin on responses.
Workarounds
Run the dev server with HTTPS enabled (--https or server.type: 'https' in config).
Resources
- GHSA-4v9v-hfq4-rm2v (CVE-2025-30359) - original vulnerability - GHSA-9jgg-88mc-972h (CVE-2025-30360) - prior bypass
Other sources
webpack-dev-server versions up to and including 5.2.3 are vulnerable to cross-origin source code exposure when serving over a non-potentially trustworthy origin such as plain HTTP. The previous fix relied on the Sec-Fetch-Mode and Sec-Fetch-Site request headers, which browsers omit for non-trustworthy origins, allowing a malicious site to load the bundled source as a script and read it across origins. Impact: an attacker controlling a website visited by a developer running webpack-dev-server can recover the application source code when the dev server runs over HTTP at a guessable host and port. Chromium based browsers from Chrome 142 onward are not affected due to local network access restrictions. Upgrade to webpack-dev-server 5.2.4 or later, which sets Cross-Origin-Resource-Policy: same-origin on responses.
— MITRE
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
npm/webpack-dev-serverto a version that resolves this vulnerability.Fixed in 5.2.4 - Upgrade
Upgrade
webpack-dev-serverto a version that resolves this vulnerability.Fixed in 5.2.4Patch GHSA-4v9v-hfq4-rm2v - Configuration
Ensure webpack-dev-server responses include header `Cross-Origin-Resource-Policy: same-origin` (patched in webpack-dev-server >= 5.2.4).
webpack-dev-server Cross-Origin-Resource-Policy = same-origin - Configuration
Run webpack-dev-server with HTTPS enabled: use `--https` or set `server.type: 'https'` in config, to reduce cross-origin exposure on non-HTTPS origins.
webpack-dev-server server.type = https
Event History
Frequently Asked Questions
What is the severity of CVE-2026-6402?
The severity of CVE-2026-6402 is medium with a score of 6.5.
What is the impact of CVE-2026-6402?
The impact of CVE-2026-6402 allows cross-origin source code exposure when webpack-dev-server runs on a non-HTTPS origin.
How do I mitigate CVE-2026-6402?
To mitigate CVE-2026-6402, ensure that webpack-dev-server is running on an HTTPS origin.
Which versions of webpack-dev-server are affected by CVE-2026-6402?
CVE-2026-6402 affects versions of webpack-dev-server prior to v5.2.1.
What patch addresses CVE-2026-6402?
The patch for CVE-2026-6402 is included in the update introduced in version 5.2.1.