HSTS subdomain overwrites parent cache entry
Description
curl's HSTS subdomain expiry time can overwrite parent domain cache entry, causing incorrect HTTPS upgrade timing or premature insecure fallback.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
curl's HSTS subdomain expiry time can overwrite parent domain cache entry, causing incorrect HTTPS upgrade timing or premature insecure fallback.
Vulnerability
When curl is used with HSTS enabled, the expiry time for a subdomain (e.g., x.example.com) can overwrite the parent domain's (example.com) HSTS cache entry. This affects curl applications that enable HSTS and use URLs with the insecure HTTP:// scheme, performing transfers with hosts where the first host is a subdomain of the second. The bug requires the HSTS cache to have entries for the involved domains, either from manual population or previous HTTPS accesses. When x.example.com responds with Strict-Transport-Security: headers, its expiry timeout can bleed over and replace the example.com entry in curl's HSTS cache [1].
Exploitation
An attacker needs to control a subdomain (x.example.com) that can send a Strict-Transport-Security header with a specific max-age. The attacker must also have a way to cause the victim to make HTTP requests to both x.example.com and example.com while HSTS is active. The victim must have previous HSTS entries for these domains in curl's cache. When x.example.com responds with the HSTS header, the expiry value incorrectly overwrites the parent domain's entry, either lengthening or shortening the HSTS enforcement period for example.com [1].
Impact
The incorrect expiry can cause HTTP accesses to example.com to be upgraded to HTTPS for a period different from the server's intent. If the parent domain no longer supports HTTPS, curl may fail to access http://example.com until the wrongly set timeout expires. Conversely, the entry may expire earlier, causing curl to fall back to insecure HTTP prematurely. This could result in a minor denial of service or unprotected data transmission [1].
Mitigation
Fixed in curl version 8.11.0, released November 6, 2024. Users should update to curl 8.11.0 or later. As a workaround, disabling HSTS or not mixing HTTP/HTTPS accesses to subdomains and parent domains can prevent the issue. The vulnerability is not listed in CISA's Known Exploited Vulnerabilities catalog [1].
AI Insight generated on May 25, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
37- osv-coords35 versionspkg:apk/chainguard/curlpkg:apk/chainguard/curl-devpkg:apk/chainguard/curl-docpkg:apk/chainguard/curl-oci-entrypointpkg:apk/chainguard/curl-staticpkg:apk/chainguard/libcurl4pkg:apk/chainguard/libcurl-openssl4pkg:apk/wolfi/curlpkg:apk/wolfi/curl-devpkg:apk/wolfi/curl-docpkg:apk/wolfi/curl-oci-entrypointpkg:apk/wolfi/curl-staticpkg:apk/wolfi/libcurl4pkg:apk/wolfi/libcurl-openssl4pkg:rpm/opensuse/curl&distro=openSUSE%20Leap%2015.5pkg:rpm/opensuse/curl&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/curl&distro=openSUSE%20Leap%20Micro%205.5pkg:rpm/opensuse/curl&distro=openSUSE%20Tumbleweedpkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP4-ESPOSpkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP4-LTSSpkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Installer%20Updates%2015%20SP4pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Installer%20Updates%2015%20SP5pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Micro%205.3pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Micro%205.4pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Micro%205.5pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP5pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Server%2012%20SP5-LTSSpkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP4-LTSSpkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP4pkg:rpm/suse/curl&distro=SUSE%20Linux%20Enterprise%20Server%20LTSS%20Extended%20Security%2012%20SP5pkg:rpm/suse/curl&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/curl&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/curl&distro=SUSE%20Manager%20Proxy%204.3pkg:rpm/suse/curl&distro=SUSE%20Manager%20Server%204.3
< 8.11.0-r0+ 34 more
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.11.0-r0
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.6.0-150600.4.12.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.11.0-1.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.6.0-150600.4.12.1
- (no CPE)range: < 8.0.1-11.98.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-11.98.1
- (no CPE)range: < 8.6.0-4.1
- (no CPE)range: < 8.12.1-slfo.1.1_1.1
- (no CPE)range: < 8.0.1-150400.5.56.1
- (no CPE)range: < 8.0.1-150400.5.56.1
Patches
0No patches discovered yet.
Vulnerability mechanics
No source-code context for this CVE — mechanics is only generated when we can read the actual fix diff. Without that, the four sections (root cause, attack vector, affected code, fix) would be speculation rather than analysis.
References
3News mentions
0No linked articles in our index yet.