Description
undici is an HTTP client for Node.js. In versions 7.0.0 through 7.30.1 and 8.0.0 through 8.12.3, when an Agent composes the redirect and shared cache interceptors, a cached response that is revalidated with a conditional request can be validated by a 304 Not Modified from a different origin. When the origin that stored the response redirects the conditional revalidation request to another origin, the redirect handler strips origin-bound credential headers but not the cache-generated If-None-Match or If-Modified-Since validators, so the redirect destination receives the original origin's validator and undici treats its 304 as successful revalidation of the stored representation. As a result, a shared cache can serve the original origin's stored authenticated response, including one gated by Authorization, to a later unauthenticated caller. The issue is fixed in undici 7.30.2 and 8.12.4, and users should upgrade to one of those versions or later. As a workaround, compose the interceptors as cache then redirect, use per-origin dispatchers and cache stores, or disable shared caching on redirect-capable requests.
Published: 2026-11-06
Score: 5.9 Medium
EPSS: n/a
KEV: No
Impact: Information Disclosure via cross‑origin redirect revalidation
Action: Immediate Patch
AI Analysis

Impact

The vulnerability occurs when undici builds redirect and shared cache interceptors in an Agent, allowing a cached 304 Not Modified response obtained from a different origin to be validated as fresh for a stored response with Authorization headers. This leads to the original owner’s authenticated content being served to an unauthenticated user who subsequently makes a request that triggers the redirect. The weakness involves improper handling of cache validators during revalidation (CWE-346) and failure to strip sensitive headers across origins (CWE-524). The result is cross‑user information disclosure, exposing data that the original caller was not permitted to see.

Affected Systems

The flaw affects undici versions 7.0.0 through 7.30.1 and 8.0.0 through 8.12.3. Users running any of these releases on Node.js should consider them vulnerable until the patch is applied.

Risk and Exploitability

The CVSS score of 5.9 indicates a moderate severity, and no EPSS data is available. The vulnerability is not listed in CISA’s KEV catalog. Exploitation requires the attacker to convince or control a user’s undici client to issue a redirect‑capable request that satisfies the conditional revalidation logic. The likely attack vector is via a malicious origin that redirects a user’s cached request, allowing the attacker to read sensitive data through the aborted 304 validation process. Given the moderate severity score and lack of publicly known exploitation, the risk is medium but should still be mitigated promptly.

Generated by OpenCVE AI on November 6, 2026 at 11:52 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade undici to 7.30.2, 8.12.4, or later.
  • When upgrading is unavailable, reorder the interceptors in the Agent to place the cache interceptor before the redirect interceptor.
  • Configure undici to use per‑origin dispatchers and per‑origin cache stores so that cached responses cannot be shared across origins.
  • Disable shared caching on requests that are capable of following redirects.

Generated by OpenCVE AI on November 6, 2026 at 11:52 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 06 Nov 2026 12:15:00 +0000

Type Values Removed Values Added
First Time appeared Undici
Undici undici
Vendors & Products Undici
Undici undici

Fri, 06 Nov 2026 10:30:00 +0000

Type Values Removed Values Added
Description undici is an HTTP client for Node.js. In versions 7.0.0 through 7.30.1 and 8.0.0 through 8.12.3, when an Agent composes the redirect and shared cache interceptors, a cached response that is revalidated with a conditional request can be validated by a 304 Not Modified from a different origin. When the origin that stored the response redirects the conditional revalidation request to another origin, the redirect handler strips origin-bound credential headers but not the cache-generated If-None-Match or If-Modified-Since validators, so the redirect destination receives the original origin's validator and undici treats its 304 as successful revalidation of the stored representation. As a result, a shared cache can serve the original origin's stored authenticated response, including one gated by Authorization, to a later unauthenticated caller. The issue is fixed in undici 7.30.2 and 8.12.4, and users should upgrade to one of those versions or later. As a workaround, compose the interceptors as cache then redirect, use per-origin dispatchers and cache stores, or disable shared caching on redirect-capable requests.
Title undici vulnerable to cross-user information disclosure via cross-origin redirect revalidation
Weaknesses CWE-346
CWE-524
References
Metrics cvssV3_1

{'score': 5.9, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-11-06T10:13:44.685Z

Reserved: 2026-10-26T17:49:18.547Z

Link: CVE-2026-116630

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-06T11:17:05.497

Modified: 2026-11-06T11:17:05.497

Link: CVE-2026-116630

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-06T12:00:05Z

Weaknesses
  • CWE-346

    Origin Validation Error

  • CWE-524

    Use of Cache Containing Sensitive Information