CVE-2026-69152
The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.18, 2.1.4, 3.0.6, and 5.0.9, expand() does not apply maxLength while constructing comma-alternative intermediate arrays or padded sequences, allowing attacker-controlled input to exhaust memory or block the event loop. The fix for CVE-2026-14257 is bypassed by the vulnerability. This issue is fixed in versions 1.1.18, 2.1.4, 3.0.6, and 5.0.9.
- CVSS 3.1
- 7.5
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - EPSS
- 0.6% chance of exploitation in the next 30 days; higher than 50% of CVEs (scores of 2026-10-25)
- CWEs
- CWE-400, CWE-770
- Published
- Modified
- Record from
- the NVD, synced
Affected
- juliangruber:brace-expansion
Packages (OSV)
| Advisory | Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|---|
| GHSA-rgw5-rvv9-x895 | npm | brace-expansion | <1.1.18 | 1.1.18 |
| GHSA-rgw5-rvv9-x895 | npm | brace-expansion | >=2.0.0 <2.1.4 | 2.1.4 |
| GHSA-rgw5-rvv9-x895 | npm | brace-expansion | >=3.0.0 <3.0.6 | 3.0.6 |
| GHSA-rgw5-rvv9-x895 | npm | brace-expansion | >=4.0.0 <5.0.9 | 5.0.9 |
References
- https://github.com/juliangruber/brace-expansion/commit/139d015104e71433ad52a41d19467c48ecbb2c7d
- https://github.com/juliangruber/brace-expansion/commit/1e30c930238d7162802d88a94189182def178dac
- https://github.com/juliangruber/brace-expansion/commit/688a99eeaab02627c2b89ba8ba4821fecfa659cf
- https://github.com/juliangruber/brace-expansion/commit/cb4b9e47cc2ec777c14b2b4492fb431a56f6a031
- https://github.com/juliangruber/brace-expansion/security/advisories/GHSA-rgw5-rvv9-x895