CVE-2026-9678 json
undici vulnerable to cross-user information disclosure via shared cache whitespace bypass
published 2026-06-17 4 mo ago modified 2026-09-10 1 mo ago also GHSA-pr7r-676h-xcf6 , EUVD-2026-37766
- cvss
- 5.9
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 33%
- public exploits
- 0
- none known
Summary
Impact: Undici's cache interceptor incorrectly classifies some responses as cacheable when the upstream Cache-Control header uses whitespace-padded qualified private or no-cache field names such as private=" authorization" or no-cache="\tauthorization". The parser preserves the surrounding whitespace, so later comparisons against the literal authorization field name fail and the response is stored.
In shared-cache mode, this allows a response containing one user's authenticated data to be served from cache to a subsequent caller, including an unauthenticated caller, when both requests resolve to the same cache key.
Affected applications are those that explicitly enable the cache interceptor (interceptors.cache()) in shared mode, forward Authorization headers upstream, and receive cacheable responses with non-canonical qualified private or no-cache directives.
Patches: Upgrade to undici v7.28.0 or v8.5.0.
Workarounds: If upgrade is not immediately possible, disable shared-cache mode for traffic that includes Authorization headers, avoid caching responses to authenticated requests, or add Vary: Authorization upstream.
Patch / fix
- npm undici 7.28.0, 8.5.0
- undici undici 7.28.0, 8.5.0
- node-undici Debian 14 8.5.0+dfsg+~cs3.2.0-1
debian advisories DEBIAN-CVE-2026-9678
- npm RHEL 8 1:10.9.8-1.22.23.1.1.module+el8.10.0+24500+8eb51621
- nodejs RHEL 8 1:22.23.1-1.module+el8.10.0+24500+8eb51621
- nodejs-libs RHEL 8 1:22.23.1-1.module+el8.10.0+24500+8eb51621
- nodejs-nodemon RHEL 8 3.0.1-1.module+el8.10.0+24500+8eb51621
- nodejs-full-i18n RHEL 8 1:22.23.1-1.module+el8.10.0+24500+8eb51621
- nodejs-packaging RHEL 8 2021.06-6.module+el8.10.0+24500+8eb51621
- nodejs-packaging-bundler RHEL 8 2021.06-6.module+el8.10.0+24500+8eb51621
- npm RHEL 8 1:11.16.0-1.24.18.0.1.module+el8.10.0+24481+7a71fac8
red hat advisories RHSA-2026:41947RHSA-2026:39868RHSA-2026:38236RHSA-2026:35891RHSA-2026:35892RHSA-2026:35842
- nodejs24 SLES for SAP applications 16.0, SLES 16.0 24.18.0-160000.1.1
- nodejs24 SLE Module for Web and Scripting 15 SP7 24.17.0-150700.15.11.1
suse advisories SUSE-SU-2026:22565-1SUSE-SU-2026:2633-1
- nodejs24 openSUSE Leap 16.0 24.18.0-160000.1.1
- nodejs24 openSUSE Tumbleweed 24.17.0-1.1
opensuse advisories openSUSE-SU-2026:21236-1openSUSE-SU-2026:11121-1
- npm AlmaLinux 8 1:10.9.8-1.22.23.1.1.module_el8.10.0+4231+1bf2f855
- nodejs AlmaLinux 8 1:22.23.1-1.module_el8.10.0+4231+1bf2f855
- nodejs-libs AlmaLinux 8 1:22.23.1-1.module_el8.10.0+4231+1bf2f855
- nodejs-nodemon AlmaLinux 8 3.0.1-1.module_el8.10.0+3956+47c9ee9f
- nodejs-full-i18n AlmaLinux 8 1:22.23.1-1.module_el8.10.0+4231+1bf2f855
- nodejs-packaging AlmaLinux 8 2021.06-6.module_el8.10.0+4158+e796f37f
- nodejs-packaging-bundler AlmaLinux 8 2021.06-6.module_el8.10.0+4158+e796f37f
- npm AlmaLinux 8 1:11.16.0-1.24.18.0.1.module_el8.10.0+4228+2938bc94
almalinux advisories ALSA-2026:41947ALSA-2026:39868ALSA-2026:35841ALSA-2026:35842ALSA-2026:35891ALSA-2026:35892
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.9.0+1760+903d54b9
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.10.0+1667+4a788d89
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.10.0+1824+532140ee
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.10.0+1823+b5789597
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.10.0+1924+614dc87f
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.10.0+1666+930e28e8
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.10.0+1988+437f3d23
- nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.10.0+1989+e60144d9
rocky linux advisories RLSA-2026:41947RLSA-2026:39868RLSA-2026:35841RLSA-2026:35842RLSA-2026:35891RLSA-2026:35892
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-9678 updated cvss 5.9
undici: Undici: Information disclosure due to improper cache-control header parsing
-
Red Hat Cryostat 4 undici, grafana-infinity-datasource-npm, cryostat-openshift-console-plugin-npm Red Hat OpenShift Pipelines openshift-pipelines/pipelines-console-plugin-rhel8, openshift-pipelines/pipelines-console-plugin-rhel9, openshift-pipelines/pipelines-console-plugin-pf5-rhel9 Red Hat AMQ Broker 7 undici Red Hat Build of Podman Desktop rh-podman-desktop.git Red Hat Developer Hub 1 rhdh/rhdh-hub-rhel9 Red Hat Enterprise Linux 8 npm, nodejs, nodejs-libs, nodejs-nodemon, nodejs-full-i18n, nodejs-packaging, +1 moreaffected: workaround, no fix available “Fix deferred”
+6 more productsfewer
Red Hat OpenShift AI (RHOAI) 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-agent-installer-ui-rhel9 Red Hat Openshift Data Foundation 4 odf4/odf-console-rhel9, odf4/ocs-client-console-rhel9, odf4/odf-multicluster-console-rhel9 Red Hat OpenShift Dev Spaces devspaces/code-rhel9, devspaces/openvsx-rhel9, devspaces/dashboard-rhel9, devspaces/pluginregistry-rhel9 Red Hat Self-service automation portal 2 ansible-automation-platform/automation-portal, ansible-automation-platform/bootc-automation-portal-rhel9 -
Red Hat Enterprise Linux AppStream (v. 8) nodejs 22.23.1-1.module+el8.10.0+24500+8eb51621, nodejs 24.18.0-1.module+el8.10.0+24481+7a71fac8, nodejs-libs 22.23.1-1.module+el8.10.0+24500+8eb51621, nodejs-libs 24.18.0-1.module+el8.10.0+24481+7a71fac8, nodejs-nodemon 3.0.1-1.module+el8.10.0+24500+8eb51621, nodejs-nodemon 3.0.3-1.module+el8.10.0+24190+49a46c75, +8 morefixed: vendor fix RHSA-2026:41947
-
Red Hat Enterprise Linux AppStream (v. 9) nodejs 22.23.1-1.module+el9.8.0+24457+996af7aa, nodejs 24.18.0-1.module+el9.8.0+24456+b244c3b4, nodejs-libs 22.23.1-1.module+el9.8.0+24457+996af7aa, nodejs-libs 24.18.0-1.module+el9.8.0+24456+b244c3b4, nodejs-nodemon 3.0.1-1.module+el9.8.0+24156+bb41d456, nodejs-nodemon 3.0.3-3.module+el9.8.0+24355+35d95b59, +8 morefixed: vendor fix RHSA-2026:35892
-
Red Hat Enterprise Linux AppStream (v. 10) nodejs 22.23.1-2.el10_2, nodejs22 22.23.1-2.el10_2, nodejs24 24.18.0-1.el10_2, nodejs-libs 22.23.1-2.el10_2, nodejs24-libs 24.18.0-1.el10_2, nodejs-full-i18n 22.23.1-2.el10_2, +3 morefixed: vendor fix RHSA-2026:35842
-
Red Hat Hardened Images nodejs25 25.9.0-1.1.hum1, nodejs26 26.3.0-1.2.hum1, nodejs24 24.18.0-0.3.hum1, nodejs25-bin 25.9.0-1.1.hum1, nodejs26-bin 26.3.0-1.2.hum1, nodejs24-bin 24.18.0-0.3.hum1, +12 morefixed: vendor fix RHSA-2026:38236
-
Red Hat Hardened Images rust Red Hat OpenShift AI (RHOAI) rhoai/odh-dashboard-rhel9, rhoai/odh-mod-arch-maas-rhel9, rhoai/odh-mod-arch-automl-rhel9, rhoai/odh-mod-arch-gen-ai-rhel9, rhoai/odh-mod-arch-mlflow-rhel9, rhoai/odh-mod-arch-autorag-rhel9, +2 morenot affected: vulnerable code not present
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
- no
- Technical impact
- partial
- Assessed
- 4 mo ago
Exploit prediction
0.39% chance of exploitation in the next 30 days, higher than 33% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 5.9 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | undici | >=7.0.0, <7.28.0 >=8.0.0, <8.5.0 |
7.28.0 8.5.0 |
Affected products
- undici undici
Classification
- Weakness
-
- CWE-524 Use of Cache Containing Sensitive Information
References
-
github.com
/nodejs/undici/security/advisories/GHSA-pr7r-676h-xcf6
web, mitigation, vendor-advisory
-
cna.openjsf.org
/security-advisories.html
web, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-9678
advisory
-
github.com
/nodejs/undici
package
Sources
- CVE List CVE-2026-9678
- GitHub Advisory GHSA-pr7r-676h-xcf6
- NVD CVE-2026-9678
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.