Description
wolfSSL_X509_verify_cert in the OpenSSL compatibility layer accepts a certificate chain in which the leaf's signature is not checked, if the attacker supplies an untrusted intermediate with Basic Constraints `CA:FALSE` that is legitimately signed by a trusted root. An attacker who obtains any leaf certificate from a trusted CA (e.g. a free DV cert from Let's Encrypt) can forge a certificate for any subject name with any public key and arbitrary signature bytes, and the function returns `WOLFSSL_SUCCESS` / `X509_V_OK`. The native wolfSSL TLS handshake path (`ProcessPeerCerts`) is not susceptible and the issue is limited to applications using the OpenSSL compatibility API directly, which would include integrations of wolfSSL into nginx and haproxy.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| wolfSSL | wolfSSL | ≤ 5.9.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 13 | wolfssl | No fix yet | — |
| Debian 12 | wolfssl | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | wolfssl | No fix yet | — |
| Ubuntu 26.04 LTS | wolfssl | No fix yet | — |
| Ubuntu 25.10 | wolfssl | No fix yet | — |
| Ubuntu 24.04 LTS | wolfssl | No fix yet | — |
| Ubuntu 22.04 LTS | wolfssl | No fix yet | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 20.04 LTS | wolfssl | No fix yet | — |
| Ubuntu 18.04 LTS | wolfssl | No fix yet | — |
| Ubuntu 16.04 LTS | wolfssl | No fix yet | — |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | wolfssl | 5.9.1-r0 | — |
| Alpine v3.23 | wolfssl | 5.9.1-r0 | — |