CVE-2026-84933
largeSet-Cookie Leakage in undici Cache Interceptor Enables Cross-User Cookie Theft
undici's cache interceptor never inspects, refuses to store, or strips the Set-Cookie response header along its cache path. In shared cache mode (the default), a cacheable response carrying Set-Cookie — for example one marked public with a max-age directive — is stored and later re-served to any caller matching the same cache key, disclosing one user's cookie to a different user and letting an untrusted origin server inject cookies into responses served to all subsequent callers. The flaw violates the HTTP caching requirement that a shared cache must not store cookies and affects applications using undici's caching interceptor on versions 7.0.0 through 7.29.1 and 8.0.0 through 8.10.2. The vulnerability is rated high (CVSS 3.1: 8.2) due to network-reachable, low-complexity exploitation with high confidentiality impact. No public proof of concept is known and there is no evidence of in-the-wild exploitation to date.
What to do: Upgrade to undici 7.29.1 or later on the 7.x line, or 8.10.2 or later on the 8.x line. Until patched, disable the cache interceptor for responses that may carry Set-Cookie headers or run it in a non-shared-cache configuration, and audit any existing cache stores for persisted Set-Cookie entries. If cookie leakage is suspected, rotate affected session cookies and review logs for cross-user cache-key collisions on cookie-bearing endpoints.
| nodejs undici | >=7.0.0, <7.29.1 (fixed in 7.29.1) |
| nodejs undici | >=8.0.0, <8.10.2 (fixed in 8.10.2) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
undici's cache interceptor does not handle the Set-Cookie response header anywhere in its cache path, so it neither refuses to store nor strips that header. In shared cache mode, which is the default, an otherwise cacheable response that carries a Set-Cookie header, for example one marked with a public and max-age directive, is stored and then re-served to a later caller that matches the same cache key. As a result one caller's cookie is disclosed to a different caller, and an untrusted server can inject cookies into cached responses served to all subsequent callers. This violates the requirement that a shared cache must not store cookies. This affects undici versions from 7.0.0 up to 7.29.1 and from 8.0.0 up to 8.10.2. Users should upgrade to undici 7.29.1 or 8.10.2.
- Vendors
- nodejs
- Products
- undici
- Weakness
- CWE-200, CWE-524
- Vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
In the news0 stories
No ingested article mentions this CVE yet.