Skip to main content

undici CVE-2026-109829

| EUVDEUVD-2026-102309 HIGH
Origin Validation Error (CWE-346)
2026-10-15 openjs
7.4
CVSS 3.1 · Vendor: openjs
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify app using redirect-then-cache interceptors with shared cache
  2. Delivery
    Point a trusted URL's redirect at attacker-controlled origin
  3. Exploit
    Trigger request so response caches under original trusted key
  4. Execution
    Later callers served poisoned/private cached response
  5. Impact
    Persistent cache poisoning and private-data disclosure

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Origin validation
Exploitation Conditions

Exploitable ONLY when all three conditions hold simultaneously in the target application: (1) an originless undici Agent is used, (2) a shared cache store is configured, and (3) the redirect interceptor is composed BEFORE the cache interceptor. Additionally, the attacker must control the target of a redirect originating from a URL the application already trusts. These are non-default, opt-in configuration choices, which is the primary factor limiting real-world exploitation despite the network attack vector and lack of authentication. Exploitation is prevented by the documented workarounds (compose cache before redirect, use per-origin dispatchers and cache stores, or disable shared caching on redirect-capable requests) or by upgrading to undici 7.30.1 / 8.12.2 or later.

Impact

This is a genuine but conditionally-exploitable issue rather than a drop-everything priority. The CVSS vector (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N, 7.4 HIGH) correctly captures the shape: remotely reachable (AV:N), no authentication needed by the attacker (PR:N), no victim interaction (UI:N), but HIGH attack complexity (AC:H) because exploitation depends on a specific, non-default interceptor composition in the target application. The HIGH confidentiality and integrity impacts are justified - cache poisoning (integrity: serving attacker content under a trusted URL) and private-data disclosure (confidentiality: a user-specific response served to a later unauthenticated caller) are both described. No EPSS score, KEV entry, or POC was provided in the input, so exploitation probability signals are absent. There is no public exploit identified at time of analysis, and undici is NOT in CISA KEV. The signals are internally consistent - there is no network-vs-local or auth conflict to flag. The dominant risk-limiting factor is not the CVSS metrics but the exploitation precondition: the flaw only manifests when an originless Agent, a shared cache store, and the redirect-then-cache interceptor ordering are all present simultaneously, which is an opt-in configuration a minority of undici deployments will have. Treat as a priority patch for applications known to use undici's cache + redirect interceptors with shared caching; routine for everyone else.

Exploit ScenarioDerived

An application uses an originless undici Agent that composes the redirect interceptor followed by the cache interceptor over a shared cache store. An unauthenticated attacker who controls the destination of a redirect from a trusted URL causes undici to cache the attacker's cross-origin response under the original trusted key, so subsequent callers requesting the trusted URL are served poisoned content; the same key confusion can also persist a private per-user redirect response and later return it to a different, unauthenticated caller. No public exploit code was identified at time of analysis, and the high attack complexity reflects the required vulnerable interceptor composition.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 15, 2026

Cache poisoning and private-data disclosure in undici affect versions 7.0.0 through 7.30.0 and 8.0.0 through 8.12.1 when an originless Agent, a shared cache store, and a redirect-before-cache interceptor composition are all present. A remote unauthenticated attacker who controls the target of a redirect from a trusted URL can have the redirected response stored under the original trusted URL, causing persistent cache poisoning or exposure of user-specific private data to later callers. This is a conditionally exploitable, non-default configuration issue rather than a drop-everything priority; no public exploit identified at time of analysis, and vendor fixes are available in undici 7.30.1 and 8.12.2.

RemediationAI

Upgrade to undici 7.30.1 or 8.12.2 or later, as these versions verify that the producing origin still matches the cache key and preserve each redirect hop's cache-control policy before storing. If upgrading is not immediately possible, use one of the documented workarounds: compose the cache interceptor before the redirect interceptor, which changes the interceptor ordering assumptions and may affect applications relying on the current hook order; use per-origin dispatchers and cache stores, which adds configuration and resource overhead and reduces cross-origin cache sharing; or disable shared caching on redirect-capable requests, which avoids the key-confusion path at the cost of losing caching performance for those requests. Vendor advisory URLs for verification are https://github.com/nodejs/undici/security/advisories/GHSA-4w7w-5xrc-9h26 and https://cna.openjsf.org/security-advisories.html.

Affected VersionsENISA

undici 8.0.0 <8.12.2
undici 7.0.0 <7.30.1

Affected Packages

euvd undici fix: 7.30.1, 8.12.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The issue is CWE-346 (Origin Validation Error) in undici, the HTTP client library for Node.js. When an originless Agent composes the redirect interceptor before the cache interceptor with a shared cache store, the cache builds its key from the original request URL before the redirect handler changes the origin. As a result, a response produced after a cross-origin redirect is stored under the original key, and the same key confusion can store a private, non-stored redirect response to a user-specific resource under the original URL for later retrieval. The affected product is undici, represented by CPE cpe:2.3:a:undici:undici:*:*:*:*:*:*:*:*, with exploitable versions 7.0.0 through 7.30.0 and 8.0.0 through 8.12.1. Exploitation requires all three non-default conditions simultaneously: an originless undici Agent, a shared cache store, and redirect interceptor composed before cache interceptor; the attacker must also control the target of a redirect originating from a URL the application already trusts. The vendor advisory is GHSA-4w7w-5xrc-9h26, published via the OpenJS CNA.

Know when Undici gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (openjs) PRIMARY 7.4 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
vuln.today AI 7.4 HIGH

Remotely reachable with no auth (AV:N/PR:N/UI:N), but AC:H because it requires a specific non-default interceptor composition plus attacker control of a trusted redirect; C:H/I:H from disclosure and cache poisoning, no availability impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Red Hat 7.4 HIGH

Primary rating from Vendor (openjs).

CVSS VectorVendor: openjs

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

2
Patch available
Oct 15, 2026 - 20:03 EUVD
CVE Published
Oct 15, 2026 - 18:28 cve.org
HIGH 7.4

DescriptionCVE.org

undici is an HTTP client library for Node.js. In versions 7.0.0 through 7.30.0 and 8.0.0 through 8.12.1, when an originless Agent composes the redirect and cache interceptors in that order with a shared cache store, the cache builds its key from the original request URL before the redirect handler changes the origin, so a response produced after a cross-origin redirect is stored under the original key. An attacker who controls the target of a redirect from a trusted URL can have their response cached under that trusted URL and served to later callers, allowing persistent cache poisoning, and the same key confusion lets a private, non-stored redirect response to a user-specific resource be stored under the original URL and served to a later unauthenticated caller, disclosing private data. Applications are affected only when an originless Agent, a shared cache store, and the redirect-then-cache composition are all used. The issue is fixed in undici 7.30.1 and 8.12.2, which verify the producing origin still matches the cache key and preserve each redirect hop's cache-control policy before storing, and users should upgrade to one of those versions or later. As a workaround, compose the cache interceptor before the redirect interceptor, use per-origin dispatchers and cache stores, or disable shared caching on redirect-capable requests.

Technical POC Analysis

Bug class: CWE-346 (Origin Validation Error), also classified CWE-524 (Use of Cache Containing Sensitive Information).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

A configuration-dependent flaw in undici, the HTTP client library used by Node.js services, can let an attacker who controls a redirect target store a malicious response under a trusted URL and expose one caller's private data to others using the same process. Only services that simultaneously use an originless Agent, a shared cache store, and a redirect-before-cache interceptor are exposed, so the majority of deployments are not affected - but those that are could see persistent cross-user data disclosure or corrupted cached responses. Leadership should care because the risk is to customer-specific data and cached content integrity in affected Node.js services, and remediation requires a library upgrade rather than a configuration toggle alone.

Business Impact: Medium
Compensating Controls

Apply vendor patch (7.30.1 / 8.12.2 as referenced in the advisory context - structured patch data is inconsistent, confirm with vendor). Interim mitigations until upgraded: remove the shared cache store, disable or omit the redirect-before-cache interceptor, refrain from caching responses obtained via redirects, and isolate caches per origin or per tenant.

Threat Intelligence Overview

EPSS Score
0.1%
Top 96% exploitable
Prevalence
High
undici is Node.js's bundled HTTP client powering global fetch, widely deployed
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Total

Priority Score

37
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +37
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Undici

View all
CVE-2022-35949 CRITICAL POC
9.8 Aug 12

undici is an HTTP/1.1 client, written from scratch for Node.js.`undici` is vulnerable to SSRF (Server-side Request Forge

CVE-2026-12151 HIGH POC
7.5 Jun 17

Memory exhaustion denial of service in the undici WebSocket client (versions 6.17.0 and later) allows a malicious or com

CVE-2026-14643 HIGH POC
7.5 Jul 29

Cross-user information disclosure in undici's cache interceptor allows authenticated users' responses to be served from

CVE-2026-16729 MEDIUM POC
6.5 Jul 29

Cookie attribute injection in undici's setCookie function allows attacker-controlled domain values or unparsed array ent

CVE-2022-31151 MEDIUM POC
6.5 Jul 21

Authorization headers are cleared on cross-origin redirect. Rated medium severity (CVSS 6.5), this vulnerability is remo

CVE-2022-32210 MEDIUM POC
6.5 Jul 14

`Undici.ProxyAgent` never verifies the remote server's certificate, and always exposes all request & response data to th

CVE-2026-15157 MEDIUM POC
5.4 Jul 29

CRLF injection in undici's HTTP/1.1 dispatcher enables HTTP header injection and potential request smuggling when applic

CVE-2023-23936 MEDIUM POC
5.4 Feb 16

Undici is an HTTP/1.1 client for Node.js. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitable,

CVE-2022-35948 MEDIUM POC
5.3 Aug 15

undici is an HTTP/1.1 client, written from scratch for Node.js.`=< undici@5.8.0` users are vulnerable to _CRLF Injection

CVE-2026-13697 CRITICAL
9.1 Jul 29

Cross-user information disclosure and a parse-time denial of service in undici's HTTP cache interceptor affect versions

CVE-2026-84961 CRITICAL
9.1 Sep 04

TLS certificate validation bypass in undici's BalancedPool dispatcher silently discards function-valued options - includ

CVE-2026-6734 HIGH
8.8 Jun 17

Cross-origin request misrouting in undici's Socks5ProxyAgent (introduced in 7.23.0, affecting all releases through 8.1.0

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy