undici
CVE-2026-6734
HIGH
Severity by source
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Network-reachable misrouting with no auth needed (PR:N - attacker only needs to be an origin), AC:H for the multi-origin Socks5ProxyAgent precondition, C:H and I:H from credential leak and HTTPS downgrade, A:L for failed legitimate requests.
Primary rating from Vendor (openjs).
CVSS VectorVendor: openjs
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Lifecycle Timeline
1DescriptionCVE.org
Impact: When using Socks5ProxyAgent, undici reuses a single connection pool across different origins without verifying that the pool's origin matches the requested origin. All requests are dispatched through the pool connected to the first origin, regardless of the intended destination.
This causes cross-origin request routing: credentials and request data intended for origin B are sent to origin A, responses from the wrong origin are trusted, and HTTPS requests may be silently downgraded to HTTP.
Impacted users are applications that use Socks5ProxyAgent (directly or via setGlobalDispatcher) and make requests to more than one origin.
This was introduced in undici 7.23.0 via PR #4385 and affects all versions through 8.1.0.
Patches: Upgrade to undici v7.26.0 or v8.2.0.
Workarounds: Use a separate Socks5ProxyAgent instance per origin, or avoid using Socks5ProxyAgent with multiple origins.
AnalysisAI
Cross-origin request misrouting in undici (Node.js HTTP client) versions 7.23.0 through 8.1.0 occurs when Socks5ProxyAgent shares a single connection pool across origins without validating the pool's origin against the requested destination. All requests get dispatched through the connection bound to the first origin, causing credentials and request bodies destined for origin B to be sent to origin A, responses from the wrong origin to be trusted, and HTTPS requests to be silently downgraded to HTTP. …
Unlock full vulnerability intelligence
- Risk assessment & exploitation conditions
- Attack chain visualization
- Remediation with exact patch versions
- Threat intelligence from 22 sources
- Personal watchlist & email alerts
Free forever · No credit card required
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata
Vulnerability AssessmentAI
| Exploitation | The vulnerable application must use undici's Socks5ProxyAgent - either directly or installed globally via setGlobalDispatcher - and must issue outbound requests to more than one origin through that agent within the same process; single-origin clients and applications using other dispatchers (default Agent, ProxyAgent, HTTP CONNECT proxies) are not affected. … Additional conditions and limiting factors are described in the full assessment. |
| Risk Assessment | The vendor CVSS of 7.5 (AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H) reflects high confidentiality and integrity impact tempered by AC:H because exploitation requires the victim application to make requests to multiple origins through one Socks5ProxyAgent - a real but non-universal configuration. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in. |
| Exploit Scenario | An application uses Socks5ProxyAgent as its global dispatcher and first calls https://attacker.example to fetch a benign resource, then calls https://api.bank.example with an Authorization bearer token; because the pool is bound to attacker.example, the second request is dispatched over the existing connection to the attacker, leaking the token and allowing the attacker to return a forged response that the application trusts. The same path also causes a silent downgrade if the attacker terminates HTTP instead of HTTPS. … |
| Remediation | Vendor-released patch: upgrade undici to 7.26.0 on the 7.x line or 8.2.0 on the 8.x line, per the Node.js security advisory at https://github.com/nodejs/undici/security/advisories/GHSA-hm92-r4w5-c3mj. … Detailed patch versions, workarounds, and compensating controls in full report. |
Recommended ActionAI
24 hours: Identify all internal Node.js applications using undici 7.23.0-8.1.0 with Socks5ProxyAgent; assess criticality and data exposure. …
Sign in for detailed remediation steps and compensating controls.
Threat intelligence, references, and detailed analysis are available after sign-in.
More from same product – last 7 days
Memory exhaustion denial of service in the undici WebSocket client (versions 6.17.0 and later) allows a malicious or com
Denial-of-service in the undici WebSocket client (Node.js HTTP/WebSocket library) version 8.1.0 through versions prior t
TLS pinning bypass in undici 7.23.0 through 7.27.x and 8.x prior to 8.5.0 allows network-positioned attackers to perform
Cache information disclosure in Undici's shared-mode cache interceptor allows a prior authenticated user's HTTP response
HTTP response header injection in undici's cookie parser exposes proxy, middleware, and SSR framework applications to se
Share
External POC / Exploit Code
Leaving vuln.today