CVE Catalog

CVE-2026-102277

MediumCVSS 5.3
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.30%

21th percentile - higher than 21% of all known CVEs

Summary

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service.

Risk Assessment

An attacker can supply a specially crafted pattern that causes quadratic CPU and memory consumption, blocking the Node.js event loop and causing a denial of service. The process eventually recovers, but the application may be unavailable for an extended period.

Recommendation

Upgrade the brace-expansion library to version 1.1.21, 2.1.7, 3.0.9, or 5.0.12 (depending on the branch in use). Verify that Node.js applications using this library do not process untrusted input.

Other vulnerabilities in brace-expansion

See all
Original NVD description (English source)

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS