CVE-2026-102278 json
brace-expansion: DoS via uncontrolled recursion on nested brace groups causing stack exhaustion
published last mo. modified last mo. also EUVD-2026-88555 , GHSA-qhr7-859c-m2p7
- 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
- brace_expansion_project brace_expansion 1.1.20, 2.1.6, 3.0.8, 5.0.11
- juliangruber 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-packaging Rocky Linux 9 2021.06-6.module+el9.7.0+40165+d075e3f2
- 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-packaging Rocky Linux 9 2021.06-6.module+el9.8.0+40164+8921ab53
- nodejs-nodemon Rocky Linux 9 3.1.14-3.module+el9.8.0+40281+14cc6568
- nodejs Rocky Linux 9 1:24.22.1-3.module+el9.8.0+40401+e24b8c95
- 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:96226RLSA-2026:96234RLSA-2026:92378RLSA-2026:92376
Is CVE-2026-102278 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor 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 nodejs26, linux-sgx, 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
12 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
- last mo.
Exploit prediction
0.49% chance of exploitation in the next 30 days, higher than 42% of all scored CVEs (FIRST EPSS, 2026-11-09).
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 Intel 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.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.