Out-of-Bounds Write in webpack-dev-middleware (CVE-2026-76844)
Summary
Out-of-bounds write in webpack-dev-middleware (CVE-2026-76844). Data can be tampered with by attackers. Exploitable via getFilenameFromUrl. Mitigation: upgrade to 7.4.6 or later.
Original description
The description as published by the source.
[!IMPORTANT]
CVE-2026-76844 was assigned and published for this issue by VulnCheck on 2026-08-24 without prior coordination with the webpack maintainers or the OpenJS Foundation, which holds the CVE Numbering Authority scope for webpack projects. Neither the maintainers nor the OpenJS CNA were notified before publication, and no fix was available at that time. This advisory is the coordinated record produced by the webpack maintainers and the OpenJS Foundation CNA.
Impact
webpack-dev-middleware resolves a request to a local file in getFilenameFromUrl. When the configured publicPath has no trailing slash (for example /assets), a request that shares that prefix without being under it (for example /assets../secret) still passes the containment check, and the .. guard does not catch it because it runs on the path before the publicPath prefix is stripped. The stripped remainder then escapes the configured output directory once joined, so an unauthenticated request can read files outside the output root. Applications serving webpack-dev-middleware (directly or via webpack-dev-server) with a publicPath that does not end in a slash are affected. A development server reachable on the network can be attacked with a single request and no victim interaction.
Patches
Patched in webpack-dev-middleware 8.3.0. There is no backport to the 5.x, 6.x, or 7.x lines; users on those lines should upgrade to 8.3.0 or later.
Workarounds
Configure `publicPath…
Source: GitHub Security Advisories (Global) NVD GitHub Advisory
Auto-generated summary
Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.
A vulnerability tracked as CVE-2026-76844 has been found in webpack-dev-middleware.
Attackers can target a specific entry point like getFilenameFromUrl over the network to misuse the product.
Data can be tampered with by attackers. CVSS score: 7.4/10.
What to do: upgrade webpack-dev-middleware to 7.4.6 or later.
If unsure, ask your IT team or search "webpack-dev-middleware CVE-2026-76844" on the vendor's site.
CVE-2026-76844 (webpack-dev-middleware) — CWE-787 / CVSS v3 7.4
Attack vector: remote (network-reachable) / unauthenticated / no user interaction
Attack surface: getFilenameFromUrl / publicPath
Patched: 7.4.6 — apply immediately
Workaround: Configure publicPath with a trailing slash (for example /assets/ instead of /assets), or upgrade to a patched version.
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.
Out-of-bounds write (CWE-787) exists in webpack-dev-middleware. Attackers reach the vulnerable code path via getFilenameFromUrl without authentication.
Check the vendor advisory for the affected versions of webpack-dev-middleware. Attack surface: getFilenameFromUrl / publicPath.
Severity: High (CVSS 7.4/10). Data can be tampered with by attackers.
Update to 7.4.6.
Workaround: Configure publicPath with a trailing slash (for example /assets/ instead of /assets), or upgrade to a patched version.
Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r 'webpack-dev-middleware' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.
Response actions
Concrete steps and command examples for SOC/SRE teams to execute in order
-
1Identify exposure identify
grep -r 'webpack-dev-middleware' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
webpack-dev-middlewareを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply temporary workaround mitigate
Configure `publicPath` with a trailing slash (for example `/assets/` instead of `/assets`), or upgrade to a patched version.パッチが適用されるまでの応急処置として、Configure
publicPathwith a trailing slash (for example/assets/instead of/assets), or upgrade to a patched version. を実施。回避策の副作用 (機能低下) を確認した上で。 -
3Apply patch patch
Upgrade webpack-dev-middleware to 7.4.6ステージング環境で 7.4.6 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
4Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
Affected packages
References
- advisory nvd.nist.gov
- advisory github.com
- package github.com
- web github.com
- web vulncheck.com
- web github.com
- web disclosure@vulncheck.com
- web disclosure@vulncheck.com
- web disclosure@vulncheck.com
- web disclosure@vulncheck.com
- web disclosure@vulncheck.com
- web github.com
- web github.com
- web github.com
- web github.com
- web github.com
- web github.com
- web github.com