CVE-2026-102278 json
brace-expansion: DoS via uncontrolled recursion on nested brace groups causing stack exhaustion
published 2026-09-28 41 d ago modified 2026-10-01 38 d ago also GHSA-qhr7-859c-m2p7 , EUVD-2026-88555
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.5%
- EPSS 0.5% chance of exploitation in 30 days, percentile 42%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- npm brace-expansion 1.1.20, 2.1.6, 3.0.8, 5.0.11
- node-brace-expansion Debian 14 2.1.7+~1.1.2-1
debian advisories DEBIAN-CVE-2026-102278
- nodejs26 hummingbird 1 26.10.0-0.3.hum1
- nodejs26-bin hummingbird 1 26.10.0-0.3.hum1
- nodejs26-npm hummingbird 1 11.19.1-1.26.10.0.0.3.hum1
- nodejs26-libs hummingbird 1 26.10.0-0.3.hum1
- nodejs26-npm-bin hummingbird 1 26.10.0-0.3.hum1
- nodejs26-full-i18n hummingbird 1 26.10.0-0.3.hum1
- nodejs24 hummingbird 1 24.21.0-1.2.hum1
- nodejs24-bin hummingbird 1 24.21.0-1.2.hum1
red hat advisories RHSA-2026:74168RHSA-2026:74167RHSA-2026:74161RHSA-2026:73916RHSA-2026:73914RHSA-2026:73856
- pi-coding-agent openSUSE Leap 16.0 1.0.4-bp160.1.1
- pi-coding-agent openSUSE Tumbleweed 1.0.0-1.1
opensuse advisories openSUSE-SU-2026:22111-1openSUSE-SU-2026:11967-1
- npm AlmaLinux 8 1:11.19.1-1.24.22.1.1.module_el8.10.0+4331+0683c9c1
- nodejs AlmaLinux 8 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
- nodejs-libs AlmaLinux 8 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
- nodejs-nodemon AlmaLinux 8 3.1.14-2.module_el8.10.0+4250+09238ed4
- nodejs-full-i18n AlmaLinux 8 1:24.22.1-1.module_el8.10.0+4331+0683c9c1
- nodejs-packaging AlmaLinux 8 2021.06-6.module_el8.10.0+4086+70facd4a
- nodejs-packaging-bundler AlmaLinux 8 2021.06-6.module_el8.10.0+4086+70facd4a
- npm AlmaLinux 9 1:11.19.1-1.24.22.1.3.module_el9.8.0+333+788f3075
almalinux advisories ALSA-2026:92376ALSA-2026:92378
- nodejs Rocky Linux 9 1:24.22.1-3.module+el9.8.0+40401+e24b8c95
- nodejs-nodemon Rocky Linux 9 3.1.14-3.module+el9.8.0+40281+14cc6568
- nodejs-packaging Rocky Linux 9 2021.06-6.module+el9.7.0+40165+d075e3f2
- nodejs-packaging Rocky Linux 9 2021.06-6.module+el9.8.0+40164+8921ab53
- nodejs-packaging Rocky Linux 9 2021.06-6.module+el9.7.0+40052+e32ea525
- nodejs-packaging Rocky Linux 9 2021.06-6.module+el9.7.0+40153+4d595597
- nodejs-nodemon Rocky Linux 8 3.1.14-2.module+el8.10.0+40277+b1b3f89e
- nodejs-nodemon Rocky Linux 8 3.1.14-2.module+el8.10.0+40278+50b003a3
rocky linux advisories RLSA-2026:92378RLSA-2026:92376
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-102278 updated cvss 6.5
brace-expansion: brace-expansion: Denial of Service via uncontrolled recursion in nested brace patterns
-
Red Hat Cost Management On Premise costmanagement/costmanagement-ui-rhel10 Red Hat Exploit Intelligence exploit-intelligence/vulnerability-analysis-rhel9 Red Hat Migration Toolkit for Applications 8 mta/mta-ui-rhel9, mta/mta-nodejs-external-provider-rhel9 Red Hat Migration Toolkit for Containers rhmtc/openshift-migration-ui-rhel8 Red Hat Node HealthCheck Operator workload-availability/node-remediation-console-rhel8, workload-availability/node-healthcheck-rhel9-operator, workload-availability/node-healthcheck-operator-bundle, workload-availability/node-healthcheck-must-gather-rhel9 Red Hat OpenShift Pipelines openshift-pipelines/pipelines-hub-ui-rhel8, openshift-pipelines/pipelines-hub-ui-rhel9, openshift-pipelines/pipelines-console-plugin-rhel8, openshift-pipelines/pipelines-console-plugin-pf5-rhel9affected: workaround, no fix available
+1 more productsfewer
Red Hat AMQ Broker 7 amq-broker-maven-repository.zip -
Red Hat Ansible Automation Platform 2 automation-gateway, automation-controller, automation-platform-ui, automation-eda-controlleraffected: workaround, no fix available, no fix planned “Will not fix”
-
Red Hat build of Apache Camel - HawtIO 4 rhaf-hawtio-maven-repository.zip Red Hat Build of Keycloak rhbk-quarkus-dist.zip, keycloak-operator.redhat-00001.zip, keycloak-operator.redhat-00003.zip Red Hat Build of Podman Desktop rh-podman-desktopaffected: workaround, no fix available
-
Red Hat Ceph Storage 4 cockpit-ceph-installer Red Hat Ceph Storage 9 libarrow, parquet-libsaffected: workaround, no fix available “Fix deferred”
-
Red Hat Certification Program for Red Hat Enterprise Linux 9 redhat-certification-cnf Red Hat Connectivity Link 1 rhcl-1/rhcl-console-plugin-rhel9 Red Hat Developer Hub 1 rhdh/rhdh-hub-rhel9, rhdh/red-hat-developer-hub-backstage-plugin-lightspeed-backend, rhdh/red-hat-developer-hub-backstage-plugin-orchestrator-backendaffected: workaround, no fix available
-
Red Hat Directory Server 11 389-ds-base Red Hat Directory Server 12 389-ds-base Red Hat Directory Server 13 389-ds-baseaffected: workaround, no fix planned “Will not fix”
-
Red Hat Enterprise Linux 7 rhsm-gtk, python-syspurpose, subscription-manager, subscription-manager-gui, subscription-manager-rhsm, subscription-manager-cockpit, +5 moreaffected: workaround, no fix available
-
Red Hat Enterprise Linux 8 npm, rls, rust, cargo, clippy, nodejs, +31 more Red Hat Enterprise Linux 9 gjs, npm, rust, cargo, clippy, nodejs, +26 moreaffected: workaround, no fix available, no fix planned “Will not fix”
show 10 moreshow fewer
-
Red Hat Enterprise Linux 10 nodejs22, nodejs24, nodejs26, linux-sgx, nodejs-nodemon, cockpit-image-builder Red Hat Enterprise Linux AI (RHEL AI) 3 rust, rhelai3/bootc-cuda-rhel9, rhelai3/bootc-rocm-rhel9, rhelai3/bootc-gaudi-rhel9, rhelai3/disk-image-cuda-rhel9affected: workaround, no fix available
-
Red Hat Fuse 7 brace-expansion Red Hat Hardened Images nodejs25 25.9.0-1.6.hum1, nodejs20 20.20.2-1.2.hum1 Red Hat JBoss Enterprise Application Platform 7 jboss-eap-patch.zip, jboss-eap-maven-repository.zip, jboss-eap-full-maven-repository.zip, jboss-eap-runtime-maven-repository.zip, jboss-eap-incremental-maven-repository.zipaffected: workaround, no fix planned “Will not fix”
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-mlflow-rhel9, rhoai/odh-core-bff-rhel9, rhoai/odh-dashboard-operator-rhel9, rhoai/odh-mod-arch-agent-ops-rhel9, rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9 Red Hat OpenShift Container Platform 4 openshift4/ose-console-rhel9, openshift4/ose-monitoring-plugin-rhel9, openshift4/ose-agent-installer-ui-rhel9 Red Hat OpenShift Container Platform 5 openshift5/ose-console-rhel9, openshift5/ose-monitoring-plugin-rhel9, openshift5/nmstate-console-plugin-rhel9 Red Hat Openshift Data Foundation 4 odf4/mcg-core-rhel9, odf4/odf-console-rhel9, odf4/ocs-client-console-rhel9, odf4/odf-multicluster-console-rhel9 Red Hat OpenShift Dev Spaces devspaces/udi-rhel9, devspaces/code-rhel9, devspaces/openvsx-rhel9, devspaces/dashboard-rhel9, devspaces/jetbrains-ide-rhel9, devspaces/pluginregistry-rhel9affected: workaround, no fix available
-
Red Hat OpenShift GitOps openshift-gitops-1/argocd-rhel9affected: workaround, no fix planned “Will not fix”
-
Red Hat Quay 3 quay/quay-rhel8, quay/quay-rhel9 Red Hat Satellite 6 satellite/iop-advisor-frontend-rhel9, satellite/iop-vulnerability-frontend-rhel9, satellite/iop-host-inventory-frontend-rhel9affected: workaround, no fix available
-
Red Hat Single Sign-On 7 rh-sso-server-dist.zipaffected: workaround, no fix planned “Will not fix”
-
Red Hat Self-service automation portal 2 ansible-automation-platform/automation-portal, ansible-automation-platform/bootc-automation-portal-rhel9affected: workaround, no fix available
-
Red Hat Cluster Observability Operator 1.5 cluster-observability-operator/logging-console-plugin-rhel9 1793660293, cluster-observability-operator/logging-console-plugin-rhel9 1793839292, cluster-observability-operator/logging-console-plugin-pf4-rhel9 1793660952, cluster-observability-operator/logging-console-plugin-pf4-rhel9 1793824934, cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9 1793661804, cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9 1793823428fixed: vendor fix RHSA-2026:95591
-
Red Hat Cryostat 4 on RHEL 9 cryostat/cryostat-openshift-console-plugin-rhel9 4.2.0-19fixed: vendor fix RHSA-2026:95360
-
Red Hat Discovery 2 discovery/discovery-ui-rhel9 1792603924, discovery/discovery-ui-rhel9 1793218530fixed: vendor fix RHSA-2026:92136
11 more fixed, 27 more not affected in the full advisory
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 38 d ago
Exploit prediction
0.49% chance of exploitation in the next 30 days, higher than 42% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | brace-expansion | >=4.0.0, <5.0.11 >=3.0.0, <3.0.8 >=2.0.0, <2.1.6 <1.1.20 |
5.0.11 3.0.8 2.1.6 1.1.20 |
Affected products
- juliangruber brace-expansion
Classification
References
-
github.com
/juliangruber/brace-expansion/commit/1efee7c397c191da6287a78ec19512476a966a7b
web
-
github.com
/juliangruber/brace-expansion/commit/935d78f32f335b2ff76578e5c5e877d31ae9888c
web
-
github.com
/juliangruber/brace-expansion/commit/de84f144e9816f30e25fc8179e2e1249ab6df0db
web
-
github.com
/juliangruber/brace-expansion/security/advisories/GHSA-qhr7-859c-m2p7
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-102278
advisory
-
github.com
/juliangruber/brace-expansion
package
Sources
- CVE List CVE-2026-102278
- GitHub Advisory GHSA-qhr7-859c-m2p7
- NVD CVE-2026-102278
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.