GHSA-jxxr-4gwj-5jf2MediumCVSS 6.5

brace-expansion: Large numeric range defeats documented `max` DoS protection

Published
May 18, 2026
Last Modified
May 18, 2026

🔗 CVE IDs covered (1)

📋 Description

The max option was being applied too late:

When expanding a single large numeric range like {1..10000000}, the sequence generation loop generates all 10 million intermediate elements before the max limit is applied With max=10, the output is correctly limited to 10 items, but the process still allocates ~505 MB and spends ~800ms building the full intermediate array.

Workaround

Ensure the string to be expanded doesn't contain more values than the desired max item count.

🎯 Affected products1

  • npm/brace-expansion:>= 5.0.0, < 5.0.6

🔗 References (3)