Impact: Undici's cache interceptor incorrectly classifies some responses as cacheable when the upstream Cache-Control header uses whitespace-padded qualified private or no-cache field names such as private=" authorization" or no-cache="\tauthorization". The parser preserves the surrounding whitespace, so later comparisons against the literal authorization field name fail and the response is stored.
In shared-cache mode, this allows a response containing one user's authenticated data to be served from cache to a subsequent caller, including an unauthenticated caller, when both requests resolve to the same cache key.
Affected applications are those that explicitly enable the cache interceptor (interceptors.cache()) in shared mode, forward Authorization headers upstream, and receive cacheable responses with non-canonical qualified private or no-cache directives.
Patches: Upgrade to undici v7.28.0 or v8.5.0.
Workarounds: If upgrade is not immediately possible, disable shared-cache mode for traffic that includes Authorization headers, avoid caching responses to authenticated requests, or add Vary: Authorization upstream.
CVSS Details
- CVSS 3.1 Base Score: 5.9
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade nodejs-libsUpgrade nodejs-full-i18nUpgrade nodejs-packagingUpgrade nodejs-nodemonUpgrade nodejs-docsUpgrade nodejsUpgrade nodejs-develUpgrade nodejs-packaging-bundlerUpgrade npmUpgrade v8-12.4-develUpgrade v8-13.6-devel | Jul 7, 2026 | Jul 6, 2026 |
| Amazon_linux_2023 | — | Upgrade nodejs24-docsUpgrade v8-13.6-develUpgrade nodejs24-debugsourceUpgrade nodejs24-debuginfoUpgrade nodejs24-npmUpgrade nodejs24-libs-debuginfoUpgrade nodejs24-libsUpgrade nodejs24-develUpgrade nodejs24Upgrade nodejs24-full-i18n | Jul 8, 2026 | Jun 17, 2026 |
| Redhat_linux | — | Upgrade nodejs22-debugsourceUpgrade nodejs24-docsUpgrade nodejsUpgrade npmUpgrade nodejs-full-i18nUpgrade nodejs-libsUpgrade nodejs-npmUpgrade nodejs-packaging-bundlerUpgrade nodejs24-libs-debuginfoUpgrade nodejs24-libsUpgrade nodejs24-debuginfoUpgrade nodejs24-develUpgrade nodejs24-npmUpgrade nodejs24-full-i18nUpgrade nodejs-libs-debuginfoUpgrade nodejs-develUpgrade nodejs22-debuginfoUpgrade nodejs24No solution existsUpgrade nodejs-packagingUpgrade v8-13.6-develUpgrade nodejs-debuginfoUpgrade nodejs-debugsourceUpgrade nodejs24-debugsourceUpgrade nodejs-docsUpgrade v8-12.4-develUpgrade nodejs-nodemon | Jul 7, 2026 | Jun 17, 2026 |
| Rocky_linux | — | Upgrade nodejs-debugsourceUpgrade nodejs-full-i18nUpgrade nodejs-npmUpgrade v8-13.6-develUpgrade v8-12.4-develUpgrade nodejs-libsUpgrade npmUpgrade nodejs22-debuginfoUpgrade nodejs24-debuginfoUpgrade nodejs24-libs-debuginfoUpgrade nodejsUpgrade nodejs-libs-debuginfoUpgrade nodejs24-libsUpgrade nodejs24-develUpgrade nodejs24-debugsourceUpgrade nodejs-debuginfoUpgrade nodejs24Upgrade nodejs24-full-i18nUpgrade nodejs22-debugsourceUpgrade nodejs-devel | Jul 10, 2026 | Jul 7, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub