p PatchFirst

CVE-2026-9545

CVE-2026-9545 · exposing HTTP/3 early data

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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.

CVSS 7.5 · High · EPSS 0.4% · Fix available

Published
Updated

Stack: system

Affected products and versions

  • curl

    Versions
    • ≥ 8.11.0, < 8.14.2: Affected (semver)
    • ≥ 8.15.0, < 8.16.1: Affected (semver)
    • ≥ 8.17.0, < 8.20.1: Affected (semver)

    Update to 8.14.2; Update to 8.16.1; Update to 8.20.1

  • curl

    Versions
    • ≥ 962097b8dd44ed5b9e7984bc1cdffdbdd566857f, < 7b9613fa9b1a5e04301a3920eef58e8138dad05e: Affected (git)

    No fix published

  • curl

    Versions
    • 8.20.0: Affected
    • 8.19.0: Affected
    • 8.18.0: Affected
    • 8.17.0: Affected
    • 8.16.0: Affected
    • 8.15.0: Affected
    • 8.14.1: Affected
    • 8.14.0: Affected
    • 8.13.0: Affected
    • 8.12.1: Affected
    • 8.12.0: Affected
    • 8.11.1: Affected
    • 8.11.0: Affected

    No fix published

  • curl Debian:13

    Versions
    • 8.14.1-2
    • 8.14.1-2+deb13u1
    • 8.14.1-2+deb13u2
    • 8.14.1-2+deb13u2~bpo13+1
    • 8.14.1-2+deb13u3
    • 8.14.1-2+deb13u4
    • 8.14.1-2+deb13u5
    • 8.14.1-2+exp1
    • 8.15.0-1
    • 8.15.0-1~bpo13+1
    • 8.15.0-1~exp1
    • 8.15.0~rc1-1exp1
    • 8.15.0~rc2-1~exp1
    • 8.15.0~rc3-1~exp1
    • 8.16.0-1
    • 8.16.0-1+exp1
    • 8.16.0-1~bpo13+1
    • 8.16.0-2
    • 8.16.0-3
    • 8.16.0-4
    • 8.16.0-4~bpo13+1
    • 8.16.0~rc1-1~exp1
    • 8.16.0~rc2-1
    • 8.16.0~rc2-2
    • 8.16.0~rc3-1
    • 8.17.0-1
    • 8.17.0-2
    • 8.17.0-3
    • 8.17.0~rc1-1~exp1
    • 8.17.0~rc2-1
    • 8.17.0~rc3-1
    • 8.18.0-1
    • 8.18.0-1~bpo13+1
    • 8.18.0-2
    • 8.18.0~rc1-1+exp1
    • 8.18.0~rc2-1
    • 8.18.0~rc3-1
    • 8.19.0-1
    • 8.19.0-1+exp1
    • 8.19.0-1~bpo13+1
    • 8.19.0-2
    • 8.19.0-3
    • 8.19.0-3+exp1
    • 8.19.0-3+exp2
    • 8.19.0~rc1-1~exp1
    • 8.19.0~rc2-1
    • 8.19.0~rc2-2
    • 8.19.0~rc3-1
    • 8.20.0-1
    • 8.20.0-1+exp
    • 8.20.0-2
    • 8.20.0-2+exp1
    • 8.20.0-2~bpo13+1
    • 8.20.0-3
    • 8.20.0-4
    • 8.20.0-5
    • 8.20.0-5~bpo13+1
    • 8.20.0~rc1-1+exp1
    • 8.20.0~rc1-1+exp2
    • 8.20.0~rc1-1+exp3
    • 8.20.0~rc2-1
    • 8.20.0~rc2-1+exp1
    • 8.20.0~rc3-1
    • 8.20.0~rc3-1+exp1
    • 8.21.0-1
    • 8.21.0-1+exp1
    • 8.21.0-2
    • 8.21.0-2+exp1
    • 8.21.0-2~bpo13+1
    • 8.21.0~rc1-1+exp1
    • 8.21.0~rc2-1
    • 8.21.0~rc2-1+exp1
    • 8.21.0~rc3-1
    • 8.21.0~rc3-1+exp1
    • 8.22.0-1
    • 8.22.0-1+exp1
    • 8.22.0~rc2-1
    • 8.22.0~rc2-2
    • 8.22.0~rc3-1
    • 8.22.0~rc3-1+exp1
    • 8.23.0~rc1-1
    • 8.23.0~rc1-2
    • 8.23.0~rc2-1
    • 8.23.0~rc2-1+exp1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • curl Debian:14

    Versions
    • 8.14.1-2
    • 8.14.1-2+exp1
    • 8.15.0-1
    • 8.15.0-1~bpo13+1
    • 8.15.0-1~exp1
    • 8.15.0~rc1-1exp1
    • 8.15.0~rc2-1~exp1
    • 8.15.0~rc3-1~exp1
    • 8.16.0-1
    • 8.16.0-1+exp1
    • 8.16.0-1~bpo13+1
    • 8.16.0-2
    • 8.16.0-3
    • 8.16.0-4
    • 8.16.0-4~bpo13+1
    • 8.16.0~rc1-1~exp1
    • 8.16.0~rc2-1
    • 8.16.0~rc2-2
    • 8.16.0~rc3-1
    • 8.17.0-1
    • 8.17.0-2
    • 8.17.0-3
    • 8.17.0~rc1-1~exp1
    • 8.17.0~rc2-1
    • 8.17.0~rc3-1
    • 8.18.0-1
    • 8.18.0-1~bpo13+1
    • 8.18.0-2
    • 8.18.0~rc1-1+exp1
    • 8.18.0~rc2-1
    • 8.18.0~rc3-1
    • 8.19.0-1
    • 8.19.0-1+exp1
    • 8.19.0-1~bpo13+1
    • 8.19.0-2
    • 8.19.0-3
    • 8.19.0-3+exp1
    • 8.19.0-3+exp2
    • 8.19.0~rc1-1~exp1
    • 8.19.0~rc2-1
    • 8.19.0~rc2-2
    • 8.19.0~rc3-1
    • 8.20.0-1
    • 8.20.0-1+exp
    • 8.20.0-2
    • 8.20.0-2+exp1
    • 8.20.0-2~bpo13+1
    • 8.20.0-3
    • 8.20.0-4
    • 8.20.0-5
    • 8.20.0-5~bpo13+1
    • 8.20.0~rc1-1+exp1
    • 8.20.0~rc1-1+exp2
    • 8.20.0~rc1-1+exp3
    • 8.20.0~rc2-1
    • 8.20.0~rc2-1+exp1
    • 8.20.0~rc3-1
    • 8.20.0~rc3-1+exp1
    • 8.21.0~rc1-1+exp1
    Affected ranges
    • ECOSYSTEM: < 8.21.0~rc2-1

    Update to 8.21.0~rc2-1

  • curl Ubuntu:25.10

    Versions
    • 8.12.1-3ubuntu1
    • 8.13.0-5ubuntu1
    • 8.14.1-1ubuntu2
    • 8.14.1-1ubuntu3
    • 8.14.1-2ubuntu1
    • 8.14.1-2ubuntu1.1
    • 8.14.1-2ubuntu1.2
    • 8.14.1-2ubuntu1.3
    Affected ranges
    • ECOSYSTEM: < 8.14.1-2ubuntu1.4

    Update to 8.14.1-2ubuntu1.4

  • curl Ubuntu:26.04:LTS

    Versions
    • 8.14.1-2ubuntu1
    • 8.17.0-1ubuntu1
    • 8.18.0-1ubuntu1
    • 8.18.0-1ubuntu2
    • 8.18.0-1ubuntu2.1
    Affected ranges
    • ECOSYSTEM: < 8.18.0-1ubuntu2.2

    Update to 8.18.0-1ubuntu2.2

Original sources

Check your server →