Description
undici's cache interceptor mishandles malformed Cache-Control private directives. In undici 7.0.0 up to before 7.29.0 and 8.0.0 up to before 8.9.0, a response carrying a degenerate qualified private directive, such as private set to an empty value, can be stored in the default shared cache and later served to a different caller with the same cache key, disclosing private response bodies and headers including Set-Cookie. Separately, a Cache-Control header that combines an unqualified private directive with a qualified one triggers an uncaught TypeError in the cache-control parser, which rejects the request and, depending on the consumer's error handling, can terminate the process. Both issues affect applications using the cache interceptor in shared mode, including the default configuration. The issues are fixed in undici 7.29.0 and 8.9.0.
Published: 2026-07-29
Score: 7.4 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Undici’s cache interceptor mishandles malformed Cache‑Control headers that contain degenerate private directives, leading to a privacy‑violation weakness and a crash caused by malformed input. The vulnerability permits cross‑user information disclosure – a CWE‑200 privacy violation – by allowing an empty private directive to be cached in the shared default cache. When a distinct caller requests the same cache key, the library returns the cached body and sensitive headers such as Set‑Cookie, exposing private data. In addition, the parser throws an uncaught TypeError when an unqualified private directive is combined with a qualified one; unhandled, this terminates the Node.js process, causing a denial‑of‑service. The weakness involves multiple CWEs, including CWE‑200 and CWE‑248.

Affected Systems

The vulnerability exists in undici version 7.0.0 through 7.28.99 and in 8.0.0 through 8.8.99. Applications that import the library’s default shared cache interceptor are affected. The patch is available in undici 7.29.0 and 8.9.0; upgrading to those or later releases removes both the information‑disclosure and the crash risks.

Risk and Exploitability

The CVSS score of 7.4 indicates a high level of risk, but the EPSS score is less than 1 %, implying exploitation is unlikely at present. The vulnerability is not in CISA’s KEV catalog. The likely attack vector is external: a malicious server or an attacker who controls the response can embed the degenerate directives, which are then processed by the application. A local attacker with the ability to submit crafted responses to the library can also trigger the issue. In either scenario, the attacker needs only to supply a response that contains the problematic Cache‑Control headers; no authentication or privileged access is required.

Generated by OpenCVE AI on August 5, 2026 at 14:21 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade undici to version 7.29.0 or 8.9.0 or later to apply the official fix for both the information‑disclosure and parser crash vulnerabilities.
  • If an upgrade cannot be performed immediately, reconfigure undici to disable the shared cache interceptor or use a per‑request cache so private responses are never stored in a common cache.
  • As a temporary workaround, cleanse any Cache‑Control private headers received from untrusted sources before passing them to undici’s cache interceptor.
  • Monitor application logs for uncaught TypeError exceptions originating from undici as a sign of attempted exploitation.

Generated by OpenCVE AI on August 5, 2026 at 14:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-4cwx-7wf7-3272 undici vulnerable to cross-user information disclosure and parse-time crash via degenerate private cache directives
History

Wed, 05 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
First Time appeared Redhat
Redhat hummingbird
Weaknesses CWE-524
CPEs cpe:/a:redhat:hummingbird:1
Vendors & Products Redhat
Redhat hummingbird
References
Metrics threat_severity

None

threat_severity

Important


Wed, 29 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 29 Jul 2026 17:45:00 +0000

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

Wed, 29 Jul 2026 16:45:00 +0000

Type Values Removed Values Added
Description undici's cache interceptor mishandles malformed Cache-Control private directives. In undici 7.0.0 up to before 7.29.0 and 8.0.0 up to before 8.9.0, a response carrying a degenerate qualified private directive, such as private set to an empty value, can be stored in the default shared cache and later served to a different caller with the same cache key, disclosing private response bodies and headers including Set-Cookie. Separately, a Cache-Control header that combines an unqualified private directive with a qualified one triggers an uncaught TypeError in the cache-control parser, which rejects the request and, depending on the consumer's error handling, can terminate the process. Both issues affect applications using the cache interceptor in shared mode, including the default configuration. The issues are fixed in undici 7.29.0 and 8.9.0.
Title undici vulnerable to cross-user information disclosure and parse-time crash via degenerate private cache directives
Weaknesses CWE-200
CWE-248
CWE-525
References
Metrics cvssV3_1

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


cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-07-29T17:53:57.335Z

Reserved: 2026-06-29T11:30:50.679Z

Link: CVE-2026-13697

cve-icon Vulnrichment

Updated: 2026-07-29T17:53:51.109Z

cve-icon NVD

Status : Analyzed

Published: 2026-07-29T17:16:50.503

Modified: 2026-08-04T14:17:59.003

Link: CVE-2026-13697

cve-icon Redhat

Severity : Important

Publid Date: 2026-07-29T16:32:39Z

Links: CVE-2026-13697 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T14:30:05Z

Weaknesses
  • CWE-200

    Exposure of Sensitive Information to an Unauthorized Actor

  • CWE-248

    Uncaught Exception

  • CWE-524

    Use of Cache Containing Sensitive Information

  • CWE-525

    Use of Web Browser Cache Containing Sensitive Information