CVE-2026-10536

NameCVE-2026-10536
DescriptionA use-after-free vulnerability exists in libcurl when an application configures an HTTP/2 stream-dependency tree via `CURLOPT_STREAM_DEPENDS` or `CURLOPT_STREAM_DEPENDS_E`, subsequently invokes `curl_easy_reset()`, and finally terminates the handle with `curl_easy_cleanup()`. During this final cleanup phase, libcurl attempts to access and modify an internal structure that was already freed during the reset operation.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
curl (PTS)bullseye7.74.0-1.3+deb11u13fixed
bullseye (security)7.74.0-1.3+deb11u16fixed
bookworm7.88.1-10+deb12u15vulnerable
bookworm (security)7.88.1-10+deb12u5vulnerable
trixie8.14.1-2+deb13u4vulnerable
forky8.20.0-5vulnerable
sid8.21.0-2fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
curlsourcebullseye(not affected)
curlsource(unstable)8.21.0~rc2-1

Notes

[trixie] - curl <no-dsa> (Minor issue)
[bookworm] - curl <postponed> (Minor issue; needs rare CURLOPT_STREAM_DEPENDS + reset/cleanup)
[bullseye] - curl <not-affected> (Vulnerable code introduced in 7.88.0; bullseye ships 7.74.0)
https://curl.se/docs/CVE-2026-10536.html
Introduced with: https://github.com/curl/curl/commit/71b7e0161032927cdfb4e75ea40f65b8898b3956 (curl-7_88_0)
Fixed by: https://github.com/curl/curl/commit/bfbff7852f050232edd3e5ca5c6bf2021c340f5a (rc-8_21_0-1, curl-8_21_0)

Search for package or bug name: Reporting problems