[GHSA-mh99-v99m-4gvg] brace-expansion: DoS via unbounded expansion length causing an out-of-memory process crash - #8915
Conversation
|
Hi there @juliangruber! A community member has suggested an improvement to your security advisory. If approved, this change will affect the global advisory listed at github.com/advisories. It will not affect the version listed in your project repository. This change will be reviewed by our Security Curation Team. If you have thoughts or feedback, please share them in a comment here! If this PR has already been closed, you can start a new community contribution for this advisory |
There was a problem hiding this comment.
Pull request overview
Updates the brace-expansion advisory to model patched maintenance releases.
Changes:
- Adds affected ranges for 1.x, 2.x, and 4.x/5.x.
- Updates the advisory modification timestamp.
Suppressed comments (1)
advisories/github-reviewed/2026/07/GHSA-mh99-v99m-4gvg/GHSA-mh99-v99m-4gvg.json:88
- The split ranges jump from 2.x directly to 4.x, so once the broad original range is removed, vulnerable 3.0.0–3.0.2 releases will no longer be reported. The upstream v3.0.3 tag contains the CVE-2026-14257 mitigation; add the corresponding
introduced: 3.0.0/fixed: 3.0.3record.
"introduced": "4.0.0"
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "type": "ECOSYSTEM", | ||
| "events": [ | ||
| { | ||
| "introduced": "0" |
Updates
Comments
The affected range on this advisory is a single <= 5.0.7, but the source advisory published by the maintainer declares four distinct ranges with per-major backported patches:
GHSA-mh99-v99m-4gvg
— < 1.1.17 (patched 1.1.17), >= 2.0.0 < 2.1.3 (patched 2.1.3), >= 3.0.0 < 3.0.3 (patched 3.0.3), 4.0.0 - 5.0.7 (patched 5.0.8).
The fix was backported to the 1.x, 2.x and 3.x maintenance lines. brace-expansion 1.1.17 introduces EXPANSION_MAX_LENGTH and a bounded combine(), with a source comment naming CVE-2026-14257 directly; 2.1.3 and 3.0.3 carry the equivalent change.
Because the current range is expressed as a single <= 5.0.7, the patched 1.x/2.x/3.x releases still satisfy it and the alert cannot be cleared by upgrading. This affects any project on minimatch 3.x/9.x, which depend on brace-expansion@^1.1.7 / ^2.0.2 and cannot move to 5.x — v5's CommonJS entry exports { expand } rather than a callable, so it is not a drop-in.
Every other brace-expansion advisory in the database already uses per-major ranges (GHSA-3jxr-9vmj-r5cp, GHSA-f886-m6hf-6m8v, GHSA-v6h2-p8h4-qcjw), so this appears to be a transcription error at intake rather than an intentional widening.