Skip to content

Commit 56b9dcc

Browse files
revopushbotclaude
andcommitted
Fix brace-expansion DoS advisories (REV-72)
Clears two high-severity Dependabot advisories on brace-expansion: - GHSA-3jxr-9vmj-r5cp: DoS via exponential-time expansion of consecutive non-expanding {} groups (patched in 1.1.16 / 2.1.2). - GHSA-mh99-v99m-4gvg (CVE-2026-14257): DoS via unbounded expansion length causing an OOM crash; patched in 5.0.8 and backported to 1.1.17 / 2.1.3. Both installed copies were stale relative to their own semver ranges, so `npm update brace-expansion` was sufficient — lockfile-only, no override entry and no manifest change: - rimraf@2 -> glob@7 -> minimatch@3 (also eslint): 1.1.15 -> 1.1.17. Reachable from the production tree. - mocha@11 -> minimatch@9: 2.1.1 -> 2.1.3. Dev-only. Deliberately not overridden to 5.0.8: brace-expansion 5.x exports a named `expand` (exports.expand = expand) while minimatch does `const expand = require('brace-expansion')`, so forcing 5.x would break glob/rimraf/eslint/mocha at runtime. The maintenance backports are the fix. Verified against the installed copies: normal expansion unchanged (a{b,c}d{1..3} -> abd1,abd2,abd3,acd1,acd2,acd3 on both); 40 consecutive empty {} groups expand in 0ms; 6 chained 200KB groups now cap at 3.6M chars via the new EXPANSION_MAX_LENGTH=4000000 guard instead of growing unbounded. tsc --noEmit clean; eslint and mocha still resolve their globs. Note: npm audit and Dependabot will keep flagging GHSA-mh99-v99m-4gvg until GitHub amends it — the advisory declares one flat range `<= 5.0.7` with first_patched_version 5.0.8 and has not yet been updated for the 1.1.17 / 2.1.3 backports published 2026-07-28/29. The installed code is patched. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 614f3d3 commit 56b9dcc

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

package-lock.json

Lines changed: 8 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)