<Vulnerability name="CVE-2026-14643">
    <DocumentDistribution xml:lang="en">Copyright © 2012 Red Hat, Inc. All rights reserved.</DocumentDistribution>
    <ThreatSeverity>Moderate</ThreatSeverity>
    <PublicDate>2026-07-29T21:08:33</PublicDate>
    <Bugzilla id="2508676" url="https://bugzilla.redhat.com/show_bug.cgi?id=2508676" xml:lang="en:us">
undici: undici: Cross-user information disclosure due to improper Cache-Control directive parsing
    </Bugzilla>
    <CVSS3 status="verified">
        <CVSS3BaseScore>5.9</CVSS3BaseScore>
        <CVSS3ScoringVector>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N</CVSS3ScoringVector>
    </CVSS3>
    <CWE>CWE-524</CWE>
    <Details xml:lang="en:us" source="Mitre">
undici's cache interceptor mishandles optional whitespace placed around the equals sign of a qualified no-cache or private Cache-Control directive. In undici from 7.0.0 up to before 7.29.0 and from 8.0.0 up to before 8.9.0, the parser either drops the directive or stores a field name with literal quote characters, so the cache decision fails to recognize the qualification and the response is stored. In shared-cache mode, this lets a response containing one user's authenticated data be served from cache to a later caller, including an unauthenticated one, when both requests resolve to the same cache key. It affects applications that enable the cache interceptor in shared mode, forward Authorization headers upstream, and receive cacheable responses with qualified directives padded with whitespace around the equals sign. This is the whitespace-around-equals variant that the fix for CVE-2026-9678 did not normalize, and it is fixed in undici 7.29.0 and 8.9.0.
    </Details>
    <Details xml:lang="en:us" source="Red Hat">
A flaw was found in undici. The cache interceptor in undici improperly handles optional whitespace around the equals sign in `no-cache` or `private` `Cache-Control` directives. This vulnerability allows an attacker to bypass cache restrictions, leading to cross-user information disclosure. Specifically, authenticated user data can be inadvertently served from the cache to a different, potentially unauthenticated, user if both requests resolve to the same cache key.
    </Details>
    <AffectedRelease cpe="cpe:/a:redhat:hummingbird:1">
        <ProductName>Red Hat Hardened Images</ProductName>
        <ReleaseDate>2026-07-29T00:00:00Z</ReleaseDate>
        <Advisory type="RHSA" url="https://access.redhat.com/errata/RHSA-2026:48273">RHSA-2026:48273</Advisory>
        <Package name="nodejs26-main">nodejs26-main-26.5.1-1.5.hum1</Package>
    </AffectedRelease>
    <AffectedRelease cpe="cpe:/a:redhat:hummingbird:1">
        <ProductName>Red Hat Hardened Images</ProductName>
        <ReleaseDate>2026-07-30T00:00:00Z</ReleaseDate>
        <Advisory type="RHSA" url="https://access.redhat.com/errata/RHSA-2026:48537">RHSA-2026:48537</Advisory>
        <Package name="nodejs24-main">nodejs24-main-24.18.1-0.1.hum1</Package>
    </AffectedRelease>
    <PackageState cpe="cpe:/a:redhat:hummingbird:1">
        <ProductName>Red Hat Hardened Images</ProductName>
        <FixState>Not affected</FixState>
        <PackageName>grafana12.4</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:hummingbird:1">
        <ProductName>Red Hat Hardened Images</ProductName>
        <FixState>Not affected</FixState>
        <PackageName>jaeger</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:hummingbird:1">
        <ProductName>Red Hat Hardened Images</ProductName>
        <FixState>Will not fix</FixState>
        <PackageName>nodejs25</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:hummingbird:1">
        <ProductName>Red Hat Hardened Images</ProductName>
        <FixState>Not affected</FixState>
        <PackageName>prometheus3.13</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:hummingbird:1">
        <ProductName>Red Hat Hardened Images</ProductName>
        <FixState>Not affected</FixState>
        <PackageName>rust</PackageName>
    </PackageState>
    <References xml:lang="en:us">
https://www.cve.org/CVERecord?id=CVE-2026-14643
https://nvd.nist.gov/vuln/detail/CVE-2026-14643
https://cna.openjsf.org/security-advisories.html
https://github.com/nodejs/undici/security/advisories/GHSA-jr45-8vmc-qm54
    </References>
</Vulnerability>