CVE-2026-9545
Fixed in a distro release EPSS <1%CVSS 7.5
In this scenario, libcurl first uses a proper HTTP/3 server for the initial transfers, and when it makes a second transfer to the same site it has been replaced by the attacker's impostor machine - without a valid certificate. When libcurl returns to the hostname the second time with a cached SSL session (`CURLOPT_SSL_SESSIONID_CACHE` is not disabled) and early data enabled (the `CURLSSLOPT_EARLYDATA` bit is set in `CURLOPT_SSL_OPTIONS`), libcurl might send off the second request's bytes on that new connection *before* enforcing the certificate verification failure. Potentially leaking sensitive information.
Products: curl
Distro releases
| Release | Package | Fixed in |
|---|---|---|
| Alpine 3.23 | curl | 8.22.0-r0 |
| Alpine 3.24 | curl | 8.21.0-r0 |
| Chainguard | eco-python-curl | 8.21.0-r0 |
| Chainguard | eco-python-curl-minimal | 8.21.0-r0 |
| Chainguard | eco-python-curl-minimal-bin | 8.21.0-r0 |
| Chainguard | eco-python-curl-minimal-dev | 8.21.0-r0 |
| Chainguard | eco-python-curl-minimal-doc | 8.21.0-r0 |
| Chainguard | eco-python-curl-minimal-static | 8.21.0-r0 |
| Chainguard | eco-python-curl-nghttp2 | 8.21.0-r0 |
| Chainguard | eco-python-curl-nghttp2-bin | 8.21.0-r0 |
| Chainguard | eco-python-curl-nghttp2-dev | 8.21.0-r0 |
| Chainguard | eco-python-curl-nghttp2-static | 8.21.0-r0 |
| Debian 13 | curl | no fix |
| Debian 14 | curl | 8.21.0~rc2-1 |
| Red Hat hummingbird 1 | curl | 0:8.21.0-0.1.1.hum1 |
| Red Hat hummingbird 1 | libcurl | 0:8.21.0-0.1.1.hum1 |
| Red Hat hummingbird 1 | libcurl-devel | 0:8.21.0-0.1.1.hum1 |
| Red Hat hummingbird 1 | libcurl-minimal | 0:8.21.0-0.1.1.hum1 |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Installer Updates 15 SP4 | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Installer Updates 15 SP5 | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Micro 5.3 | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Micro 5.4 | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Micro 5.5 | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Module for Basesystem 15 SP7 | curl | 8.14.1-150700.7.20.1 |
| SUSE Linux Enterprise Server 15 SP4-LTSS | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Server 15 SP5-LTSS | curl | 8.14.1-150400.5.86.1 |
| SUSE Linux Enterprise Server 15 SP6-LTSS | curl | 8.14.1-150600.4.46.1 |
| SUSE Linux Enterprise Server 16.0 | curl | 8.14.1-160000.8.1 |
| SUSE Linux Enterprise Server 16.0 | curl-mini | 8.14.1-160000.8.1 |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | curl | 8.14.1-150600.4.46.1 |
| SUSE Linux Enterprise Server for SAP applications 16.0 | curl | 8.14.1-160000.8.1 |
| SUSE Linux Enterprise Server for SAP applications 16.0 | curl-mini | 8.14.1-160000.8.1 |
| SUSE Linux Micro 6.0 | curl | 8.14.1-7.1 |
| SUSE Linux Micro 6.1 | curl | 8.14.1-slfo.1.1_8.1 |
| SUSE Linux Micro 6.2 | curl | 8.14.1-160000.8.1 |
| Ubuntu 22.04 LTS | curl | 7.81.0-1ubuntu1.25 |
| Ubuntu 24.04 LTS | curl | 8.5.0-2ubuntu10.10 |
| Ubuntu 25.10 | curl | 8.14.1-2ubuntu1.4 |
| Ubuntu 26.04 LTS | curl | 8.18.0-1ubuntu2.2 |
| Ubuntu Pro 14.04 LTS | curl | 7.35.0-1ubuntu2.20+esm20 |
| Ubuntu Pro 16.04 LTS | curl | 7.47.0-1ubuntu2.19+esm16 |
| Ubuntu Pro 18.04 LTS | curl | 7.58.0-2ubuntu3.24+esm9 |
| Ubuntu Pro 20.04 LTS | curl | 7.68.0-1ubuntu2.25+esm4 |
| openSUSE Leap 16.0 | curl | 8.14.1-160000.8.1 |
| openSUSE Tumbleweed | curl | 8.21.0-1.1 |