CVE-2026-87863

NameCVE-2026-87863
DescriptionAn authenticated HTTPS origin can supply an HSTS `max-age` value that the parser accepts, but time serialization later fails to process. On 64-bit systems, extreme max-age values compute an absolute expiry within standard time integer limits that exceeds calendar time structure bounds. During cache saves, the original HSTS file is truncated before writing a temporary replacement; when serialization fails, the temporary file is deleted, leaving an empty or partial cache. Because the save error is silently ignored during cleanup, curl exits successfully despite the data loss.
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)bookworm7.88.1-10+deb12u15fixed
bookworm (security)7.88.1-10+deb12u5fixed
trixie8.14.1-2+deb13u5vulnerable
trixie (security)8.14.1-2+deb13u7vulnerable
forky8.22.0-1vulnerable
sid8.23.0-1fixed

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

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
curlsourcebookworm(not affected)
curlsource(unstable)8.23.0~rc1-1

Notes

[trixie] - curl <no-dsa> (Minor issue)
[bookworm] - curl <not-affected> (Vulnerable code not present)
https://curl.se/docs/CVE-2026-87863.html
Introduced with: https://github.com/curl/curl/commit/0c667188e0c6cda615a036b8a2b4125f2c404dde (curl-8_2_0)
Fixed by: https://github.com/curl/curl/commit/08d50a791b3197a3d0a4fc2f778e243f5501c67e (rc-8_23_0-1)

Search for package or bug name: Reporting problems