{"id":"CVE-2026-82208","state":"PUBLISHED","title":"wolfSSL CA-cache hit overrides callback","description":"With the wolfSSL backend, when CA caching is enabled and an\n`CURLOPT_SSL_CTX_FUNCTION` callback replaces the trust store, libcurl can\nsilently reinstall the cached store after the callback returns. A certificate\ntrusted by the cached store but rejected by the callback-selected store is\nthen incorrectly accepted.","publishedAt":"2026-09-06T17:49:16.014Z","updatedAt":"2026-09-15T06:03:14.795Z","severity":{"score":7.5,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","source":"CISA-ADP"},"assigner":"curl","products":["curl curl"],"affected":[{"vendor":"curl","product":"curl","defaultStatus":"unaffected","versions":[{"version":"8.9.1","status":"affected","lessThan":"8.14.2","versionType":"semver"},{"version":"8.15.0","status":"affected","lessThan":"8.16.1","versionType":"semver"},{"version":"8.17.0","status":"affected","lessThan":"8.20.1","versionType":"semver"},{"version":"8.21.0","status":"affected","lessThan":"8.22.0","versionType":"semver"}]},{"vendor":"curl","product":"curl","defaultStatus":"unaffected","versions":[{"version":"0f2876b2c33f6784a27b6f7345bd8cd95b46352a","status":"affected","lessThan":"ed0338befd1d865a8ea1fbaa90013a096dedd07a","versionType":"git"}],"repo":"https://github.com/curl/curl.git"},{"vendor":"curl","product":"curl","defaultStatus":"unaffected","versions":[{"version":"8.21.0","status":"affected"},{"version":"8.20.0","status":"affected"},{"version":"8.19.0","status":"affected"},{"version":"8.18.0","status":"affected"},{"version":"8.17.0","status":"affected"},{"version":"8.16.0","status":"affected"},{"version":"8.15.0","status":"affected"},{"version":"8.14.1","status":"affected"},{"version":"8.14.0","status":"affected"},{"version":"8.13.0","status":"affected"},{"version":"8.12.1","status":"affected"},{"version":"8.12.0","status":"affected"},{"version":"8.11.1","status":"affected"},{"version":"8.11.0","status":"affected"},{"version":"8.10.1","status":"affected"},{"version":"8.10.0","status":"affected"},{"version":"8.9.1","status":"affected"}]}],"references":["https://curl.se/docs/CVE-2026-82208.json","https://curl.se/docs/CVE-2026-82208.html","https://hackerone.com/reports/3973090"],"weaknesses":["CWE-295"],"ingestedAt":"2026-10-29T20:13:15.269Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/82xxx/CVE-2026-82208.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-82208","state":"PUBLISHED","datePublished":"2026-09-06T17:49:16.014Z","dateUpdated":"2026-09-15T06:03:14.795Z","assignerShortName":"curl","assignerOrgId":"2499f714-1537-4658-8207-48ae4bb9eae9","dateReserved":"2026-08-28T08:25:31.400Z"},"containers":{"cna":{"title":"wolfSSL CA-cache hit overrides callback","descriptions":[{"lang":"en","value":"With the wolfSSL backend, when CA caching is enabled and an\n`CURLOPT_SSL_CTX_FUNCTION` callback replaces the trust store, libcurl can\nsilently reinstall the cached store after the callback returns. A certificate\ntrusted by the cached store but rejected by the callback-selected store is\nthen incorrectly accepted."}],"affected":[{"vendor":"curl","product":"curl","defaultStatus":"unaffected","versions":[{"version":"8.9.1","status":"affected","lessThan":"8.14.2","versionType":"semver"},{"version":"8.15.0","status":"affected","lessThan":"8.16.1","versionType":"semver"},{"version":"8.17.0","status":"affected","lessThan":"8.20.1","versionType":"semver"},{"version":"8.21.0","status":"affected","lessThan":"8.22.0","versionType":"semver"}]},{"vendor":"curl","product":"curl","defaultStatus":"unaffected","versions":[{"version":"0f2876b2c33f6784a27b6f7345bd8cd95b46352a","status":"affected","lessThan":"ed0338befd1d865a8ea1fbaa90013a096dedd07a","versionType":"git"}],"repo":"https://github.com/curl/curl.git"},{"vendor":"curl","product":"curl","defaultStatus":"unaffected","versions":[{"version":"8.21.0","status":"affected"},{"version":"8.20.0","status":"affected"},{"version":"8.19.0","status":"affected"},{"version":"8.18.0","status":"affected"},{"version":"8.17.0","status":"affected"},{"version":"8.16.0","status":"affected"},{"version":"8.15.0","status":"affected"},{"version":"8.14.1","status":"affected"},{"version":"8.14.0","status":"affected"},{"version":"8.13.0","status":"affected"},{"version":"8.12.1","status":"affected"},{"version":"8.12.0","status":"affected"},{"version":"8.11.1","status":"affected"},{"version":"8.11.0","status":"affected"},{"version":"8.10.1","status":"affected"},{"version":"8.10.0","status":"affected"},{"version":"8.9.1","status":"affected"}]}],"references":[{"url":"https://curl.se/docs/CVE-2026-82208.json"},{"url":"https://curl.se/docs/CVE-2026-82208.html"},{"url":"https://hackerone.com/reports/3973090"}],"problemTypes":[{"descriptions":[{"cweId":"CWE-295","lang":"en","description":"Improper Certificate Validation","type":"CWE"}]}],"providerMetadata":{"shortName":"curl","orgId":"2499f714-1537-4658-8207-48ae4bb9eae9","dateUpdated":"2026-09-15T06:03:14.795Z"},"x_osv":{"schema_version":"1.5.0","id":"CURL-CVE-2026-82208","aliases":["CVE-2026-82208"],"summary":"wolfSSL CA-cache hit overrides callback","modified":"2026-09-07T10:34:51.00Z","database_specific":{"package":"curl","affects":"lib","URL":"https://curl.se/docs/CVE-2026-82208.json","www":"https://curl.se/docs/CVE-2026-82208.html","issue":"https://hackerone.com/reports/3973090","CWE":{"id":"CWE-295","desc":"Improper Certificate Validation"},"last_affected":"8.21.0","severity":"Low"},"published":"2026-09-02T08:00:00.00Z","affected":[{"ranges":[{"type":"SEMVER","events":[{"introduced":"8.9.1"},{"fixed":"8.14.2"},{"introduced":"8.15.0"},{"fixed":"8.16.1"},{"introduced":"8.17.0"},{"fixed":"8.20.1"},{"introduced":"8.21.0"},{"fixed":"8.22.0"}]},{"type":"GIT","repo":"https://github.com/curl/curl.git","events":[{"introduced":"0f2876b2c33f6784a27b6f7345bd8cd95b46352a"},{"fixed":"ed0338befd1d865a8ea1fbaa90013a096dedd07a"}]}],"versions":["8.21.0","8.20.0","8.19.0","8.18.0","8.17.0","8.16.0","8.15.0","8.14.1","8.14.0","8.13.0","8.12.1","8.12.0","8.11.1","8.11.0","8.10.1","8.10.0","8.9.1"]}],"credits":[{"name":"Stanislav Fort (Aisle Research)","type":"finder"},{"name":"Stefan Eissing","type":"remediation developer"}],"details":"With the wolfSSL backend, when CA caching is enabled and an\n`CURLOPT_SSL_CTX_FUNCTION` callback replaces the trust store, libcurl can\nsilently reinstall the cached store after the callback returns. A certificate\ntrusted by the cached store but rejected by the callback-selected store is\nthen incorrectly accepted."},"credits":[{"lang":"en","value":"Stanislav Fort (Aisle Research)","type":"finder"},{"lang":"en","value":"Stefan Eissing","type":"remediation developer"}],"x_generator":{"engine":"cvelib 1.8.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":7.5,"attackVector":"NETWORK","baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","integrityImpact":"NONE","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"NONE","privilegesRequired":"NONE","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"timestamp":"2026-09-08T18:46:24.528833Z","id":"CVE-2026-82208","options":[{"Exploitation":"poc"},{"Automatable":"yes"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-295","type":"CWE","lang":"en","description":"CWE-295 Improper Certificate Validation"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-08T18:46:41.865Z"}}]}}}