p PatchFirst

CVE-2026-102278

CVE-2026-102278 · brace-expansion: DoS via uncontrolled recursion on nested brace groups causing stack exhaustion

This page contains facts from public vulnerability sources. Check the original advisory before updating.

The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.20, 2.1.6, 3.0.8, and 5.0.11, deeply nested brace groups cause expand_() to recurse once per nesting level at comma-member and single-set expansion sites, exhausting the native stack before output limits can apply and potentially terminating the Node.js process. expand_ performs uncontrolled recursion for nested brace alternatives and single-part sets. deeply nested brace groups supplied as an untrusted pattern. expand_ is affected. expand is affected. Comma members is affected. Single set is affected. native stack exhaustion during nested sub-expansion. process-terminating denial of service. This issue is fixed in versions 1.1.20, 2.1.6, 3.0.8, and 5.0.11.

CVSS 7.5 · High · EPSS 0.5% · Fix available

Published
Updated

Stack: system · node

Affected products and versions

  • brace-expansion

    Versions
    • >= 4.0.0, < 5.0.11: Affected
    • >= 3.0.0, < 3.0.8: Affected
    • >= 2.0.0, < 2.1.6: Affected
    • < 1.1.20: Affected

    No fix published

  • node-brace-expansion Debian:12

    Versions
    • 2.0.1+~1.1.0-1
    • 2.0.1+~1.1.0-2
    • 2.0.1-2
    • 2.0.3+~1.1.2-1
    • 2.0.3+~1.1.2-2
    • 2.0.3+~1.1.2-3
    • 2.1.4+~1.1.2-1
    • 2.1.7+~1.1.2-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-brace-expansion Debian:13

    Versions
    • 2.0.1+~1.1.0-2
    • 2.0.3+~1.1.2-1
    • 2.0.3+~1.1.2-2
    • 2.0.3+~1.1.2-3
    • 2.1.4+~1.1.2-1
    • 2.1.7+~1.1.2-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-brace-expansion Debian:14

    Versions
    • 2.0.1+~1.1.0-2
    • 2.0.3+~1.1.2-1
    • 2.0.3+~1.1.2-2
    • 2.0.3+~1.1.2-3
    • 2.1.4+~1.1.2-1
    Affected ranges
    • ECOSYSTEM: < 2.1.7+~1.1.2-1

    Update to 2.1.7+~1.1.2-1

  • brace-expansion npm

    Affected ranges
    • SEMVER: ≥ 4.0.0, < 5.0.11

    Update to 5.0.11

  • brace-expansion npm

    Affected ranges
    • SEMVER: ≥ 3.0.0, < 3.0.8

    Update to 3.0.8

  • brace-expansion npm

    Affected ranges
    • SEMVER: ≥ 2.0.0, < 2.1.6

    Update to 2.1.6

  • brace-expansion npm

    Affected ranges
    • SEMVER: < 1.1.20

    Update to 1.1.20

  • node-brace-expansion Ubuntu:18.04:LTS

    Versions
    • 1.1.8-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-brace-expansion Ubuntu:20.04:LTS

    Versions
    • 1.1.8-1
    • 1.1.11-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-brace-expansion Ubuntu:22.04:LTS

    Versions
    • 2.0.0-1
    • 2.0.1-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-brace-expansion Ubuntu:24.04:LTS

    Versions
    • 2.0.1-2
    • 2.0.1+~1.1.0-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-brace-expansion Ubuntu:26.10

    Versions
    • 2.0.1+~1.1.0-2
    • 2.0.3+~1.1.2-2
    • 2.0.3+~1.1.2-3
    • 2.1.4+~1.1.2-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • node-brace-expansion Ubuntu:26.04:LTS

    Versions
    • 2.0.1+~1.1.0-2
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

Original sources

Check your server →