Bump webpack-dev-server from 5.1.0 to 5.2.4#1472
Conversation
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 5.1.0 to 5.2.4. - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](webpack/webpack-dev-server@v5.1.0...v5.2.4) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.4 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com>
There was a problem hiding this comment.
Stale comment
package.json:194does upgrade to a patchedwebpack-dev-server, but this repository’s dev-server config still opts out of the new protection. Bothconfig/webpackDevServer.config.jsandwebpack.config.jssetallowedHosts: "all"andAccess-Control-Allow-Origin: "*"; upstream 5.2.4 only addsCross-Origin-Resource-Policy: same-originwhen neither of those opt-outs is present. I verified the current local server response for/web-component.htmlstill lacks aCross-Origin-Resource-Policyheader, so the published source-exposure issue remains effectively unmitigated for this repo’s default HTTP dev setup.Open questions / assumptions:
Assuming the permissive cross-origin settings are intentional for embedding and local integration flows. If so, I would treat this as a follow-up security/config decision rather than a compatibility blocker for the dependency bump itself.Change summary:
Upstream security improvements included here are real:webpack-dev-server5.2.1 fixedGHSA-4v9v-hfq4-rm2v/CVE-2025-30359andGHSA-9jgg-88mc-972h/CVE-2025-30360, while 5.2.4 fixedGHSA-79cf-xcqc-c78w/CVE-2026-6402for default/non-opt-out configs. The lockfile refresh also updates transitive packages such asexpress(4.22.2) andqs(6.15.1), andselfsignedmoves to v5, removing the oldernode-forgedependency from the tree.Safety of merging looks good from a behavior and test perspective: I found no repo code that appears directly broken by the 5.1.0 -> 5.2.4 changes,
yarn lintpassed, andCI=true yarn test --coverage --maxWorkers=4 --workerThreads=true --reporters=default --reporters=jest-junit --reporters=jest-github-actions-reporterpassed (92/92suites,835/835tests). I could not complete Cypress here because the machine did not have the Cypress binary cached and downloading it fromdownload.cypress.iofailed with an SSL/network error.Recommendation:
Merge with caution. This looks safe to merge for compatibility, and it is still a net-positive dependency refresh, but it should not be considered a complete security fix for this repository until the dev server stops opting into wildcard cross-origin access or is run over HTTPS.Sent by Cursor Automation: Editor-UI - Tests Dependabot PRs
| "webpack-bundle-analyzer": "^5.2.0", | ||
| "webpack-cli": "5.1.4", | ||
| "webpack-dev-server": "5.1.0", | ||
| "webpack-dev-server": "5.2.4", |
There was a problem hiding this comment.
This upgrade brings in the upstream 5.2.4 fix, but this repo’s current dev-server config still opts out of it. config/webpackDevServer.config.js and webpack.config.js both set allowedHosts: "all" and Access-Control-Allow-Origin: "*", and upstream only adds Cross-Origin-Resource-Policy: same-origin when neither of those is true. A local check against /web-component.html still returned no Cross-Origin-Resource-Policy header, so GHSA-79cf-xcqc-c78w / CVE-2026-6402 is not actually closed for this project’s default HTTP dev setup.
There was a problem hiding this comment.
Findings
- Medium: this bump does not fully activate the new
5.2.4hardening in this repository's dev setup. Upstreamwebpack-dev-servernow addsCross-Origin-Resource-Policy: same-originfor the HTTP source-code theft fix (GHSA-79cf-xcqc-c78w/CVE-2026-6402), but it only does that when the server is not usingallowedHosts: "all"and not sending wildcard CORS. Bothwebpack.config.jsandconfig/webpackDevServer.config.jsdeliberately setallowedHosts: "all"plusAccess-Control-Allow-Origin: "*", and in local testingcurl -I http://127.0.0.1:3011/web-component.jsstill returned noCross-Origin-Resource-Policyheader. So this PR is still useful, but it should be treated as dependency hygiene rather than a full remediation of the latest upstream advisory for this repo.
Open Questions / Assumptions
- I assumed the permissive dev-server settings are still required for the embedded/hosted local-development workflows. If that is no longer true, a follow-up should tighten
allowedHosts/CORS or add a more selective CORP strategy so the5.2.4protection can actually take effect.
Change Summary
- Security:
- Upstream this version range includes fixes for
GHSA-4v9v-hfq4-rm2v/CVE-2025-30359(source-code theft via malicious site, patched in5.2.1) andGHSA-79cf-xcqc-c78w/CVE-2026-6402(HTTP-origin source-code exposure, patched in5.2.4). - The lockfile also picks up some favorable transitive movement:
express4.21.1 -> 4.22.2,http-proxy-middleware2.0.7 -> 2.0.9, andselfsigned2.4.1 -> 5.5.0which removes the oldnode-forgedependency. - Residual risk:
webpack-dev-serverstill depends onws@^8.18.0, so the newerwsadvisoryGHSA-58qx-3vcg-4xpxis not resolved by this PR. That range was already present in5.1.0, so it is not newly introduced here.
- Upstream this version range includes fixes for
- Safety of merging:
- I did not find direct API usage of
webpack-dev-serverin this repo beyondwebpack serveand static config, so the5.2.xadditive API work (getClientEntry/getClientHotEntry) does not affect this codebase. - The main upstream behavioural changes in
5.2.1are stricter cross-origin / WebSocket checks, but this repo already opts into permissive settings (allowedHosts: "all", wildcard CORS), so those changes are unlikely to break local development here.
- I did not find direct API usage of
Test Results
yarn install --immutable: passed (with pre-existing peer dependency warnings only)yarn lint: passedCI=true yarn test --coverage --maxWorkers=4 --workerThreads=true --reporters=default --reporters=jest-junit --reporters=jest-github-actions-reporter: passed (92/92suites,835/835tests)yarn start: compiled successfully locallyyarn exec cypress run: could not run in this environment because the Cypress14.5.4desktop binary is not installed in the agent cache (/home/ubuntu/.cache/Cypress/14.5.4/Cypress)
Recommendation
Merge with caution. I do not see a compatibility regression from the version bump itself, and the local lint/Jest/dev-server checks were good. The caution is that the repo's current dev-server configuration still opts out of the new CORP-based protection, so merging this PR does not by itself eliminate the latest webpack-dev-server exposure for local HTTP dev sessions.
Sent by Cursor Automation: Editor-UI - Tests Dependabot PRs
| "webpack-bundle-analyzer": "^5.2.0", | ||
| "webpack-cli": "5.1.4", | ||
| "webpack-dev-server": "5.1.0", | ||
| "webpack-dev-server": "5.2.4", |
There was a problem hiding this comment.
Worth noting for the security assessment: webpack-dev-server 5.2.4 only emits the new Cross-Origin-Resource-Policy: same-origin protection when allowedHosts !== "all" and wildcard CORS is not enabled. This repo's webpack.config.js and config/webpackDevServer.config.js deliberately use allowedHosts: "all" plus Access-Control-Allow-Origin: "*", and in local testing curl -I http://127.0.0.1:3011/web-component.js still returned no CORP header. So the bump is still low-risk and worth taking, but it doesn't fully remediate GHSA-79cf-xcqc-c78w for this repo's current dev-server configuration.


Bumps webpack-dev-server from 5.1.0 to 5.2.4.
Release notes
Sourced from webpack-dev-server's releases.
... (truncated)
Changelog
Sourced from webpack-dev-server's changelog.
... (truncated)
Commits
fd40130chore(release): 5.2.4ece4f36chore: update deps (#5661)a216144ci: fix test (#5658)df073c5Merge commit from forkb550a70chore(release): 5.2.39704dc5chore: upgrade selfsigned to v5 and remove node-forge dependency (#5618)92bf644chore: bump express to update qs (#5621)792b2f0chore(deps-dev): bump the dependencies group with 4 updates (#5606)6d587cachore(deps): bump the dependencies group across 1 directory with 27 updates (...f91baa8fix(overlay): add ESC key to dismiss overlay (#5598)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)You can disable automated security fix PRs for this repo from the Security Alerts page.