{"api_version":"1","generated_at":"2026-10-20T22:34:27+00:00","cve":"CVE-2026-87863","urls":{"html":"https://cve.report/CVE-2026-87863","api":"https://cve.report/api/cve/CVE-2026-87863.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-87863","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-87863"},"summary":{"title":"HSTS response erases persisted entries","description":"An authenticated HTTPS origin can supply an HSTS `max-age` value that the\nparser accepts, but time serialization later fails to process. On 64-bit\nsystems, extreme max-age values compute an absolute expiry within standard\ntime integer limits that exceeds calendar time structure bounds. During cache\nsaves, the original HSTS file is truncated before writing a temporary\nreplacement; when serialization fails, the temporary file is deleted, leaving\nan empty or partial cache. Because the save error is silently ignored during\ncleanup, curl exits successfully despite the data loss.","state":"PUBLISHED","assigner":"curl","published_at":"2026-10-20 21:17:20","updated_at":"2026-10-20 21:17:20"},"problem_types":["CWE-201 Information Exposure Through Sent Data"],"metrics":[],"references":[{"url":"https://curl.se/docs/CVE-2026-87863.json","name":"https://curl.se/docs/CVE-2026-87863.json","refsource":"2499f714-1537-4658-8207-48ae4bb9eae9","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://curl.se/docs/CVE-2026-87863.html","name":"https://curl.se/docs/CVE-2026-87863.html","refsource":"2499f714-1537-4658-8207-48ae4bb9eae9","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://hackerone.com/reports/3972373","name":"https://hackerone.com/reports/3972373","refsource":"2499f714-1537-4658-8207-48ae4bb9eae9","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-87863","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-87863","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.22.0 8.22.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.21.0 8.21.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.20.0 8.20.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.19.0 8.19.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.18.0 8.18.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.17.0 8.17.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.16.0 8.16.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.15.0 8.15.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.14.1 8.14.1 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.14.0 8.14.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.13.0 8.13.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.12.1 8.12.1 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.12.0 8.12.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.11.1 8.11.1 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.11.0 8.11.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.10.1 8.10.1 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.10.0 8.10.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.9.1 8.9.1 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.9.0 8.9.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.8.0 8.8.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.7.1 8.7.1 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.7.0 8.7.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.6.0 8.6.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.5.0 8.5.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.4.0 8.4.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.3.0 8.3.0 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.2.1 8.2.1 semver","platforms":[]},{"source":"CNA","vendor":"curl","product":"curl","version":"affected 8.2.0 8.2.0 semver","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[{"source":"CNA","value":"Stanislav Fort (Aisle Research)","lang":"en"},{"source":"CNA","value":"Daniel Stenberg","lang":"en"}],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"curl","vendor":"curl","versions":[{"lessThanOrEqual":"8.22.0","status":"affected","version":"8.22.0","versionType":"semver"},{"lessThanOrEqual":"8.21.0","status":"affected","version":"8.21.0","versionType":"semver"},{"lessThanOrEqual":"8.20.0","status":"affected","version":"8.20.0","versionType":"semver"},{"lessThanOrEqual":"8.19.0","status":"affected","version":"8.19.0","versionType":"semver"},{"lessThanOrEqual":"8.18.0","status":"affected","version":"8.18.0","versionType":"semver"},{"lessThanOrEqual":"8.17.0","status":"affected","version":"8.17.0","versionType":"semver"},{"lessThanOrEqual":"8.16.0","status":"affected","version":"8.16.0","versionType":"semver"},{"lessThanOrEqual":"8.15.0","status":"affected","version":"8.15.0","versionType":"semver"},{"lessThanOrEqual":"8.14.1","status":"affected","version":"8.14.1","versionType":"semver"},{"lessThanOrEqual":"8.14.0","status":"affected","version":"8.14.0","versionType":"semver"},{"lessThanOrEqual":"8.13.0","status":"affected","version":"8.13.0","versionType":"semver"},{"lessThanOrEqual":"8.12.1","status":"affected","version":"8.12.1","versionType":"semver"},{"lessThanOrEqual":"8.12.0","status":"affected","version":"8.12.0","versionType":"semver"},{"lessThanOrEqual":"8.11.1","status":"affected","version":"8.11.1","versionType":"semver"},{"lessThanOrEqual":"8.11.0","status":"affected","version":"8.11.0","versionType":"semver"},{"lessThanOrEqual":"8.10.1","status":"affected","version":"8.10.1","versionType":"semver"},{"lessThanOrEqual":"8.10.0","status":"affected","version":"8.10.0","versionType":"semver"},{"lessThanOrEqual":"8.9.1","status":"affected","version":"8.9.1","versionType":"semver"},{"lessThanOrEqual":"8.9.0","status":"affected","version":"8.9.0","versionType":"semver"},{"lessThanOrEqual":"8.8.0","status":"affected","version":"8.8.0","versionType":"semver"},{"lessThanOrEqual":"8.7.1","status":"affected","version":"8.7.1","versionType":"semver"},{"lessThanOrEqual":"8.7.0","status":"affected","version":"8.7.0","versionType":"semver"},{"lessThanOrEqual":"8.6.0","status":"affected","version":"8.6.0","versionType":"semver"},{"lessThanOrEqual":"8.5.0","status":"affected","version":"8.5.0","versionType":"semver"},{"lessThanOrEqual":"8.4.0","status":"affected","version":"8.4.0","versionType":"semver"},{"lessThanOrEqual":"8.3.0","status":"affected","version":"8.3.0","versionType":"semver"},{"lessThanOrEqual":"8.2.1","status":"affected","version":"8.2.1","versionType":"semver"},{"lessThanOrEqual":"8.2.0","status":"affected","version":"8.2.0","versionType":"semver"}]}],"credits":[{"lang":"en","type":"finder","value":"Stanislav Fort (Aisle Research)"},{"lang":"en","type":"remediation developer","value":"Daniel Stenberg"}],"descriptions":[{"lang":"en","value":"An authenticated HTTPS origin can supply an HSTS `max-age` value that the\nparser accepts, but time serialization later fails to process. On 64-bit\nsystems, extreme max-age values compute an absolute expiry within standard\ntime integer limits that exceeds calendar time structure bounds. During cache\nsaves, the original HSTS file is truncated before writing a temporary\nreplacement; when serialization fails, the temporary file is deleted, leaving\nan empty or partial cache. Because the save error is silently ignored during\ncleanup, curl exits successfully despite the data loss."}],"problemTypes":[{"descriptions":[{"description":"CWE-201 Information Exposure Through Sent Data","lang":"en"}]}],"providerMetadata":{"dateUpdated":"2026-10-20T20:13:22.379Z","orgId":"2499f714-1537-4658-8207-48ae4bb9eae9","shortName":"curl"},"references":[{"name":"json","url":"https://curl.se/docs/CVE-2026-87863.json"},{"name":"www","url":"https://curl.se/docs/CVE-2026-87863.html"},{"name":"issue","url":"https://hackerone.com/reports/3972373"}],"title":"HSTS response erases persisted entries"}},"cveMetadata":{"assignerOrgId":"2499f714-1537-4658-8207-48ae4bb9eae9","assignerShortName":"curl","cveId":"CVE-2026-87863","datePublished":"2026-10-20T20:13:22.379Z","dateReserved":"2026-09-09T13:17:38.076Z","dateUpdated":"2026-10-20T20:13:22.379Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-20 21:17:20","lastModifiedDate":"2026-10-20 21:17:20","problem_types":["CWE-201 Information Exposure Through Sent Data"],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"87863","Ordinal":"1","Title":"HSTS response erases persisted entries","CVE":"CVE-2026-87863","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"87863","Ordinal":"1","NoteData":"An authenticated HTTPS origin can supply an HSTS `max-age` value that the\nparser accepts, but time serialization later fails to process. On 64-bit\nsystems, extreme max-age values compute an absolute expiry within standard\ntime integer limits that exceeds calendar time structure bounds. During cache\nsaves, the original HSTS file is truncated before writing a temporary\nreplacement; when serialization fails, the temporary file is deleted, leaving\nan empty or partial cache. Because the save error is silently ignored during\ncleanup, curl exits successfully despite the data loss.","Type":"Description","Title":"HSTS response erases persisted entries"}]}}}