Skip to main content

webpack-dev-server CVE-2026-6402

| EUVDEUVD-2026-29404 MEDIUM
Exposed Dangerous Method or Function (CWE-749)
2026-05-12 openjs GHSA-79cf-xcqc-c78w
5.3
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Visit attacker website
  2. Delivery
    Browser fetches bundled source from unprotected dev server
  3. Exploit
    Script tag or fetch API loads JavaScript
  4. Execution
    Malicious script extracts and exfiltrates source code
  5. Impact
    Attacker recovers intellectual property

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Dangerous method exposure prevention
Exploitation Conditions

Exploitation requires all of the following concrete conditions to be met: (1) webpack-dev-server versions 5.2.3 or earlier must be running and accessible over HTTP (not HTTPS). (2) The dev server must be accessible from the attacker's origin, typically because it is bound to a network interface (not localhost-only) or port-scanned/guessed by the attacker. (3) A developer using the vulnerable server must visit a website controlled by or compromised by the attacker while the dev server is running. (4) The browser must not enforce local network access restrictions (e.g., Chromium 142+ excludes this). The description explicitly identifies the root condition as 'non-potentially trustworthy origin such as plain HTTP' - the Sec-Fetch-* headers are omitted for HTTP origins, enabling the cross-origin read. Limiting factors: authentication is not required (PR:N), but user interaction is mandatory (a developer must click a link or navigate to the attacker's site), hence AC:H. The attack fails if the dev server is localhost-only, uses HTTPS, or if the developer does not visit an attacker-controlled site. Non-Chromium browsers (Firefox, Safari, older Chrome) are affected; modern Chromium browsers are protected by local network access restrictions independent of this fix.

Impact

This vulnerability presents moderate real-world risk with significant context-dependent factors. CVSS score of 5.3 reflects the threat model: Network vector (AV:N) and unauthenticated (PR:N) attack, but High complexity (AC:H) due to the mandatory user interaction requirement - a developer must visit an attacker-controlled website while running an unpatched dev server. The confidentiality impact is High (C:H) because full source code exposure can leak intellectual property, secrets, and architecture. Exploitation likelihood is suppressed by several practical factors: the attacker must guess the dev server's host and port (typically localhost:8080 or 3000, making enumeration feasible but not certain), the target must be a developer (not an end user), and the developer must visit a malicious site during their dev session. No EPSS score or KEV status provided, suggesting no confirmed active exploitation in the wild at time of advisory. However, the attack is straightforward to execute once conditions are met, and source code exposure is a high-value target. Organizations with developers regularly testing on HTTP (rather than HTTPS or localhost-only) face elevated risk. The Chromium exception (Chrome 142+) reduces risk for modern Chrome users via local network access restrictions, but other browsers and older Chrome versions remain vulnerable. Defense is simple (upgrade), making patch adoption a key risk factor.

Exploit ScenarioDerived

A developer clones a project repository and runs 'npm install && npm start', which launches webpack-dev-server on http://localhost:8080 (or http://192.168.1.100:8080 if explicitly configured for network access). The developer then opens a GitHub issue or pulls a link from Slack pointing to an attacker's website, malicious-ads.example.com. The attacker's page includes hidden JavaScript: fetch('http://localhost:8080/main.bundle.js').then(r => r.text()).then(code => /* exfiltrate code */). Alternatively, the page uses a <script> tag: <script src='http://localhost:8080/main.bundle.js'></script>, and injected code inspects window.myApp or other globals to extract the bundled code. The bundled source code (containing API keys, business logic, and architecture) is sent to the attacker's server. No special tools or privileges are required; a simple HTML page and JavaScript suffice.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – May 12, 2026

Cross-origin source code exposure in webpack-dev-server up to 5.2.3 allows attackers controlling a malicious website to steal bundled application source code when a developer runs the dev server over non-trustworthy HTTP origins. The vulnerability exploits the omission of Sec-Fetch-Mode and Sec-Fetch-Site headers on non-HTTPS connections, enabling script injection and cross-origin code exfiltration. Chromium-based browsers Chrome 142+ are exempt due to local network access restrictions. CVSS 5.3 (AC:H due to user requirement to visit attacker site; High confidentiality impact). Fix: upgrade to webpack-dev-server 5.2.4 or later.

RemediationAI

Upgrade webpack-dev-server to version 5.2.4 or later immediately; this version sets the Cross-Origin-Resource-Policy: same-origin header on all responses, preventing cross-origin script loads. To upgrade, run 'npm update webpack-dev-server@^5.2.4' or 'npm install webpack-dev-server@5.2.4' in your project. Verify the upgrade by checking package.json and package-lock.json. For teams unable to upgrade immediately, implement compensating controls: (1) Run webpack-dev-server exclusively on localhost (127.0.0.1) and ensure it binds to the loopback interface only (configure host: 'localhost' or host: '127.0.0.1' in webpack.config.js); this prevents remote access but still allows local CSRF-style attacks if a developer visits a malicious site on the same machine. (2) Use HTTPS for the dev server (require https: true in webpack.config.js with a self-signed certificate); this enables Sec-Fetch-* headers even during development and partially mitigates the issue, though developers must accept browser warnings. (3) Restrict network access to the dev server port (e.g., iptables, firewall rules) to trusted IPs only. (4) Educate developers to avoid visiting untrusted websites during development sessions. These workarounds have trade-offs: localhost-only binding may impede remote development or CI/CD scenarios; HTTPS adds friction to dev workflows; firewall rules require infrastructure coordination. None are as robust as the patch. Patch application is strongly preferred.

Affected VersionsENISA

webpack-dev-server 0 <5.2.4

Affected Packages

npm webpack-dev-server fix: 5.2.4

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

webpack-dev-server is a development server that bundles and serves web application code during development. The vulnerability stems from a flawed cross-origin protection mechanism (CWE-749: Improperly Controlled Interaction with Externally-Controlled Resources) that relied on browser-provided Sec-Fetch-Mode and Sec-Fetch-Site headers to prevent unauthorized script loading. These headers are only sent for trustworthy origins (HTTPS with valid certificates), not for plain HTTP. An attacker's website can reference the dev server's bundled JavaScript directly using a <script src="http://target-dev-server:port/bundle.js"></script> tag. The browser loads it due to the permissive Same-Origin Policy, and malicious JavaScript can extract and transmit the source via the browser's network stack or DOM inspection. The fix implements the Cross-Origin-Resource-Policy: same-origin header, which explicitly forbids cross-origin script loads regardless of origin trustworthiness.

Know when Chrome gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 5.3 MEDIUM
AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N
SUSE MEDIUM
Red Hat 5.3 MEDIUM

Primary rating from NVD.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch available
May 12, 2026 - 09:01 EUVD
CVE Published
May 12, 2026 - 07:45 nvd
MEDIUM 5.3

DescriptionCVE.org

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.

Threat Intelligence Overview

EPSS Score
0.0%
Top 91% exploitable
Threat Intel
1
1 sources
Exploit
POC
Public exploit code exists
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA MSRC Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Chrome

View all
CVE-2015-5122 CRITICAL POC
9.8 Jul 14

Use-after-free vulnerability in the DisplayObject class in the ActionScript 3 (AS3) implementation in Adobe Flash Player

CVE-2016-5198 HIGH POC
8.8 Jan 19

V8 in Google Chrome prior to 54.0.2840.90 for Linux, and 54.0.2840.85 for Android, and 54.0.2840.87 for Windows and Mac

CVE-2017-5070 HIGH POC
8.8 Oct 27

Type confusion in V8 in Google Chrome prior to 59.0.3071.86 for Linux, Windows, and Mac, and 59.0.3071.92 for Android, a

CVE-2016-1646 HIGH POC
8.8 Mar 29

The Array.prototype.concat implementation in builtins.cc in Google V8, as used in Google Chrome before 49.0.2623.108, do

CVE-2013-0758 CRITICAL POC
9.3 Jan 13

Mozilla Firefox before 18.0, Firefox ESR 10.x before 10.0.12 and 17.x before 17.0.2, Thunderbird before 17.0.2, Thunderb

CVE-2017-5030 HIGH POC
8.8 Apr 24

Incorrect handling of complex species in V8 in Google Chrome prior to 57.0.2987.98 for Linux, Windows, and Mac and 57.0.

CVE-2012-3993 CRITICAL POC
9.3 Oct 10

The Chrome Object Wrapper (COW) implementation in Mozilla Firefox before 16.0, Firefox ESR 10.x before 10.0.8, Thunderbi

CVE-2017-3823 HIGH POC
8.8 Feb 01

An issue was discovered in the Cisco WebEx Extension before 1.0.7 on Google Chrome, the ActiveTouch General Plugin Conta

CVE-2014-8636 HIGH POC
7.5 Jan 14

The XrayWrapper implementation in Mozilla Firefox before 35.0 and SeaMonkey before 2.32 does not properly interact with

CVE-2013-0757 CRITICAL POC
9.3 Jan 13

The Chrome Object Wrapper (COW) implementation in Mozilla Firefox before 18.0, Firefox ESR 17.x before 17.0.2, Thunderbi

CVE-2014-1510 CRITICAL POC
9.8 Mar 19

The Web IDL implementation in Mozilla Firefox before 28.0, Firefox ESR 24.x before 24.4, Thunderbird before 24.4, and Se

CVE-2015-5123 CRITICAL
9.8 Jul 14

Use-after-free vulnerability in the BitmapData class in the ActionScript 3 (AS3) implementation in Adobe Flash Player 13

Vendor StatusVendor

SUSE

Severity: Medium
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 12 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy