{"id":"CVE-2026-11310","summary":"X.509 trust-chain bypass in wolfSSL_X509_verify_cert() via untrusted intermediate anchoring","details":"X.509 trust-chain bypass in the OpenSSL compatibility certificate verifier (wolfSSL_X509_verify_cert()). This affects only builds with --enable-opensslextra (OPENSSL_EXTRA) and whose application validates certificates by calling X509_verify_cert() with caller-supplied untrusted intermediate certificates; for those users it is critical, otherwise the library is unaffected. In particular, native wolfSSL TLS/DTLS usage is not impacted. wolfSSL's X509_verify_cert() temporarily loads each caller-supplied untrusted intermediate into the certificate manager but failed to drop them before the trusted-store check, so an untrusted intermediate could anchor the path itself. An attacker can present a chain that never reaches a configured trust anchor and have it accepted, resulting in acceptance of an attacker-controlled certificate. This is certificate verification independent of TLS (e.g. S/MIME/CMS, code/firmware signing, JWT/JWS x5c), is not specific to any key type or algorithm, and a single untrusted intermediate suffices. The default wolfSSL TLS handshake (WOLFSSL_VERIFY_PEER) is not affected; only TLS applications doing manual or deferred peer verification through this API are, which also requires --enable-sessioncerts.","modified":"2026-07-16T03:48:15.173220750Z","published":"2026-06-25T19:38:19.099Z","database_specific":{"cna_assigner":"wolfSSL","cwe_ids":["CWE-295"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/11xxx/CVE-2026-11310.json"},"references":[{"type":"WEB","url":"https://www.wolfssl.com/docs/security-vulnerabilities/"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/11xxx/CVE-2026-11310.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-11310"},{"type":"FIX","url":"https://github.com/wolfSSL/wolfssl/pull/10674"},{"type":"PACKAGE","url":"https://github.com/wolfSSL/wolfssl"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/wolfssl/wolfssl","events":[{"introduced":"59f4fa568615396fbf381b073b220d1e8d61e4c2"},{"fixed":"ac01707f552c611fbd135cc723b2682b3e7f80f2"}],"database_specific":{"source":["AFFECTED_FIELD","CPE_RANGE"],"cpe":"cpe:2.3:a:wolfssl:wolfssl:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"5.8.4"},{"last_affected":"5.9.1"},{"fixed":"5.9.2"}]}}],"versions":["v5.9.1-stable","v5.9.0-stable","v5.8.4-stable","wolfEntropy2d"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-11310.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N"}]}