{"id":"CVE-2026-9545","title":"In this scenario, libcurl first uses a proper HTTP/3 server for the initial\ntransfers, and when it makes a second transfer to the same site it has been\nreplaced by the attacker's impostor machine - without a valid certificate.\n\nWhen libc…","summary":"In this scenario, libcurl first uses a proper HTTP/3 server for the initial\ntransfers, and when it makes a second transfer to the same site it has been\nreplaced by the attacker's impostor machine - without a valid certificate.\n\nWhen libc…","severity":"high","cvss":7.5,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","cwe":["CWE-200","CWE-295"],"vendor":"haxx","product":"curl","affected":["curl >= 8.11.0, < 8.21.0"],"patched":["curl 8.21.0"],"published":"2026-07-03","updated":"2026-09-15","sourceUpdated":"2026-09-15T07:16:34.947","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-9545","references":[{"url":"https://curl.se/docs/CVE-2026-9545.html","label":"2499f714-1537-4658-8207-48ae4bb9eae9"},{"url":"https://curl.se/docs/CVE-2026-9545.json","label":"2499f714-1537-4658-8207-48ae4bb9eae9"},{"url":"https://hackerone.com/reports/3752888","label":"2499f714-1537-4658-8207-48ae4bb9eae9"},{"url":"https://hackerone.com/reports/3752888","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-9545.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-9545"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2496756"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-9545"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-9545"},{"url":"https://access.redhat.com/errata/RHSA-2026:41240"}],"tags":["nvd","cve.org","exploit-available","csaf","vex","red-hat"],"exploitAvailable":true,"ssvc":{"exploitation":"poc","automatable":"yes","technicalImpact":"partial","timestamp":"2026-07-06T16:52:42.898546Z"},"epss":0.00268,"epssPercentile":0.19224,"ingestedAt":"2026-07-04T06:55:48.803Z","slug":"CVE-2026-9545","body":"## Overview\n\nIn this scenario, libcurl first uses a proper HTTP/3 server for the initial\ntransfers, and when it makes a second transfer to the same site it has been\nreplaced by the attacker's impostor machine - without a valid certificate.\n\nWhen libcurl returns to the hostname the second time with a cached SSL session\n(`CURLOPT_SSL_SESSIONID_CACHE` is not disabled) and early data enabled (the\n`CURLSSLOPT_EARLYDATA` bit is set in `CURLOPT_SSL_OPTIONS`), libcurl might\nsend off the second request's bytes on that new connection *before* enforcing\nthe certificate verification failure. Potentially leaking sensitive\ninformation.\n\n## Affected\n\n- `curl >= 8.11.0, < 8.21.0`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `curl 8.21.0`\n\n## Vendor advisories\n\n- **RHSA-2026:41240** · Red Hat · fixed in: Red Hat Hardened Images · released 2026-07-17 · [advisory](https://access.redhat.com/errata/RHSA-2026:41240)\n- **Red Hat VEX** · Moderate · affected: Confidential Compute Attestation, Red Hat Enterprise Linux AI (RHEL AI) 3, Red Hat OpenShift Container Platform 4, Red Hat OpenShift Dev Spaces, Red Hat Trusted Profile Analyzer · updated 2026-09-18 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-9545.json)","depth":"midnight","depthScore":53,"depthScoreParts":{"impact":41.3,"likelihood":0.1,"exploitation":12,"ransomware":0},"changes":[{"seq":203512,"id":"CVE-2026-9545","ts":1789457645873,"field":"exploit_available","old":"false","new":"true"},{"seq":203511,"id":"CVE-2026-9545","ts":1789457645873,"field":"cvss","old":null,"new":"7.5"},{"seq":203510,"id":"CVE-2026-9545","ts":1789457645873,"field":"severity","old":"none","new":"high"}]}