brace-expansion: DoS via uncontrolled recursion in parseCommaParts causing stack exhaustion
Summary
| CVE | CVE-2026-102276 |
|---|---|
| State | PUBLISHED |
| Assigner | GitHub_M |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-09-28 21:17:16 UTC |
| Updated | 2026-09-30 19:57:08 UTC |
| Description | The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.19, 2.1.5, 3.0.7, and 5.0.10, crafted brace patterns can exhaust the native stack in parseCommaParts because parseCommaParts recursively processes the remainder once per brace group and uses push.apply to pass every element of a very large comma-part array as a function argument. Patterns containing many comma-separated brace groups trigger the recursive path, while the large array triggers the argument-array path without deep recursion. These paths cause recursive and argument-array native stack exhaustion before max or maxLength can limit output, potentially terminating the Node.js process in a process-terminating denial of service. This issue is fixed in versions 1.1.19, 2.1.5, 3.0.7, and 5.0.10. |
Risk And Classification
Primary CVSS: v3.1 7.5 HIGH from [email protected]
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
EPSS: 0.003500000 probability, percentile 0.261550000 (date 2026-09-29)
Problem Types: CWE-400 | CWE-674 | CWE-400 CWE-400: Uncontrolled Resource Consumption | CWE-674 CWE-674: Uncontrolled Recursion
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | [email protected] | Secondary | 7.5 | HIGH | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| 3.1 | CNA | DECLARED | 7.5 | HIGH | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
CVSS v3.1 Breakdown
Attack Vector
NetworkAttack Complexity
LowPrivileges Required
NoneUser Interaction
NoneScope
UnchangedConfidentiality
NoneIntegrity
NoneAvailability
HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | Juliangruber | Brace-expansion | affected >= 4.0.0, < 5.0.10 | Not specified |
| CNA | Juliangruber | Brace-expansion | affected >= 3.0.0, < 3.0.7 | Not specified |
| CNA | Juliangruber | Brace-expansion | affected >= 2.0.0, < 2.1.5 | Not specified |
| CNA | Juliangruber | Brace-expansion | affected < 1.1.19 | Not specified |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| github.com/juliangruber/brace-expansion/commit/5171e681c0922b7ae8bfaf9a3... | [email protected] | github.com | |
| github.com/juliangruber/brace-expansion/security/advisories/GHSA-6j4f-fj... | [email protected] | github.com | |
| github.com/juliangruber/brace-expansion/commit/6735c94873ca570bcdd6a0690... | [email protected] | github.com | |
| github.com/juliangruber/brace-expansion/commit/316359e6019c39b3254c8ba8e... | [email protected] | github.com | |
| github.com/juliangruber/brace-expansion/commit/0bcbfc0a5928c3073d48f4299... | [email protected] | github.com | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.