Description
undici is an HTTP client for Node.js. In versions 7.30.1 and 8.12.2 through 8.12.3, when an originless Agent composes the redirect and shared cache interceptors, undici decides whether to store the final response under the original request key by inspecting only the final redirect hop, which bypasses the earlier fix for CVE-2026-109829 that compared only the initial and final origins. A redirect that bounces through an untrusted origin and returns to the trusted origin is still cached under the trusted key, an intermediate hop's Vary is dropped so a response that varies on Authorization or Cookie can be served to a different user, and an intermediate hop's no-cache or default-uncacheable status is ignored so a non-storable redirect is laundered into a cacheable entry. An attacker who controls a redirect target from a trusted URL can poison the cached entry for that URL or have a private, per-user response served to a later 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: 7.4 High
EPSS: n/a
KEV: No
Impact: Cache poisoning and cross‑user data disclosure via redirect hops
Action: Immediate Patch
AI Analysis

Impact

undici’s redirect logic mistakenly caches a response under a trusted origin after a redirect chain passes through an untrusted origin. The cache lookup key is computed from only the final hop, so cache entries from a maliciously controlled redirect can be played back to a different user. This allows an attacker to poison the cache for a legitimate URL and cause private, per‑user responses to be served to others, enabling data disclosure. The flaw does not provide remote code execution but can lead to elevated privilege exposure if the cached content contains authenticated data.

Affected Systems

The vulnerability affects undici HTTP client versions 7.30.1 and 8.12.2 through 8.12.3 used in Node.js applications. Users running these specific releases are exposed, while later releases are not.

Risk and Exploitability

The CVSS score of 7.4 indicates high severity. EPSS data is not available, and the flaw is not currently listed in CISA’s KEV catalog. An attacker who can control the target of a redirect from a trusted origin can trigger the cache poisoning. The attack requires the application to accept untrusted redirect destinations; it does not rely on additional privileged conditions.

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

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade undici to version 7.30.2 or later, or to 8.12.4 or later.
  • If an upgrade is not possible, configure the interceptor chain with cache then redirect, instead of redirect then cache.
  • Alternatively use per‑origin dispatchers and cache stores, or disable shared caching on requests that can redirect.

Generated by OpenCVE AI on November 6, 2026 at 11:30 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:15:00 +0000

Type Values Removed Values Added
Description undici is an HTTP client for Node.js. In versions 7.30.1 and 8.12.2 through 8.12.3, when an originless Agent composes the redirect and shared cache interceptors, undici decides whether to store the final response under the original request key by inspecting only the final redirect hop, which bypasses the earlier fix for CVE-2026-109829 that compared only the initial and final origins. A redirect that bounces through an untrusted origin and returns to the trusted origin is still cached under the trusted key, an intermediate hop's Vary is dropped so a response that varies on Authorization or Cookie can be served to a different user, and an intermediate hop's no-cache or default-uncacheable status is ignored so a non-storable redirect is laundered into a cacheable entry. An attacker who controls a redirect target from a trusted URL can poison the cached entry for that URL or have a private, per-user response served to a later 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 cache poisoning and cross-user disclosure via intermediate redirect hops
Weaknesses CWE-346
CWE-524
References
Metrics cvssV3_1

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


cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-11-06T10:05:41.972Z

Reserved: 2026-10-26T15:14:13.192Z

Link: CVE-2026-116592

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-06T10:16:36.313

Modified: 2026-11-06T10:16:36.313

Link: CVE-2026-116592

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

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

Weaknesses
  • CWE-346

    Origin Validation Error

  • CWE-524

    Use of Cache Containing Sensitive Information