undici vulnerable to cross-origin cache poisoning via missing origin isolation in interceptors (undici undici)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.16 % · percentile 6 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- openjs
- NVD status
- Analyzed
Description
undici 8.10.0 omits the destination origin from the cache and request-deduplication keys when the cache or deduplicate interceptor is composed directly onto a Client or Pool. Because the internal cache key falls back to an empty origin string, a cacheable or in-flight response from one upstream origin is returned for a request to a different, trusted origin whenever the method, path, and relevant headers match, which permits cross-origin information disclosure and persistent cache poisoning. The reporter demonstrated a full authentication bypass in which a JWT signed with an attacker-controlled key was accepted as belonging to a trusted issuer, and the trusted origin was never contacted. This is a regression introduced in 8.10.0 and affects undici versions from 8.10.0 up to 8.10.2. Applications using an Agent, which carries the origin in its dispatch options, are not affected. Users should upgrade to undici 8.10.2.
Weaknesses (CWE)
- CWE-346 — Origin Validation Error
References
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | HIGH 7.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N | openjs |
| CVSS 3.1 | HIGH 7.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N | NVD · ce714d77-add3-4f53-aff5-83d477b104bb (Secondary) |
Advisories
- GHSA-vp8m-p9jh-q5pm — undici vulnerable to cross-origin cache poisoning via missing origin isolation in interceptors
European references
- ENISA EUVD · EUVD-2026-71474
- GCVE · GCVE-0-2026-85152
Affected configurations (NVD CPE)
cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:*≥ 8.10.0 < 8.10.2
Affected products
| Product | Versions |
|---|---|
| undici · undici | affected 8.10.0 < 8.10.2 ; unaffected 8.10.2 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |