Skip to content
OpenAdvisories

Package · Debian

wolfssl

151 known vulnerabilities.

150 results · Feed

  • Low 2.3

    Heap use-after-free on read during bidirectional (D)TLS shutdown

    In all builds that make use of (D)TLS, including default builds, there is a series of conditional states during the TLS shutdown which could lead to a heap-use-after free. If an application ended up getting a partial wolfSSL_read() which is sometimes caused b…

  • High 8.3

    OCSP stapling v2 multi accepts non-CA chain certificates as issuers

    In wolfSSL versions 5.7.2 through 5.9.2 there is a client-side implementation flaw in RFC 6961, multiple OCSP response stapling, which can lead to certificate forgery. When a wolfSSL client enables OCSP stapling with the HAVE_CERTIFICATE_STATUS_REQUEST_V2 fea…

  • Medium 6.3

    NameConstraints not enforced across unconstrained intermediate CA

    wolfSSL versions 5.9.2 and earlier contain a flaw in the X.509 certificate validation logic where it fails to properly enforce NameConstraints extensions when there is an unconstrained CA tier between a name-constrained intermediate CA and the leaf certificat…

  • Medium 6.3

    Subject CN name-constraint check bypassed when non-DNS SAN present

    A certificate with no dNSName SAN but another SAN type present (e.g. registeredID or iPAddress) bypassed the Subject CN dNSName name-constraint check. The CN-as-DNS fallback was gated on cert->subjectCN != NULL && cert->altNames == NULL && !cert->isCA instead…

  • Medium 6.3

    Failed X509_verify_cert leaves unverified CA in shared CertManager

    A failed X509_verify_cert call permanently plants an unverified attacker CA in the shared CertManager, bypassing certificate validation in every type-blind sibling consumer (native TLS, OCSP, CRL, direct CM verify). This affects version 5.8.4 through 5.9.2 of…

  • High 8.3

    Client accepts unsolicited RawPublicKey server certificate type

    When using RPK (Raw Public Key), the client side of a TLS 1.2, 1.3 and DTLS 1.2 connection could accept an unsolicited server_cert_type=RawPublicKey which allowed a malicious or misbehaving server to bypass authentication. RPK is off by default and only enabl…

  • High 8.3

    Trusted peer certificate match ignores public key, allowing forged CA clones

    MatchTrustedPeer ignores the public key used, leading to forged CA clones passing verification. Affected builds are any that enable the macro WOLFSSL_TRUST_PEER_CERT and load CA certificates with wolfSSL_CTX_trust_peer_cert() or wolfSSL_trust_peer_cert(). The…

  • Medium 6.3

    (D)TLS 1.2 client accepts early ChangeCipherSpec before ClientKeyExchange

    A (D)TLS 1.2 client can accept a ChangeCipherSpec message before it has sent its ClientKeyExchange. No master secret has been derived at that point, so the client installs read keys derived from a known (deterministic) key and checks the server's Finished aga…

  • Low 2.3

    CRL check skipped when OCSP enabled and certificate has no OCSP URL

    When an application enables both OCSP and CRL revocation checking on one WOLFSSL_CTX or certificate manager, wolfSSL skips the CRL check for any peer certificate that carries no Authority Information Access OCSP URL, and accepts a certificate the loaded CRL l…

  • Low 2.3

    Signature failure masked by date error under WOLFSSL_SMALL_CERT_VERIFY

    Under WOLFSSL_SMALL_CERT_VERIFY, ProcessPeerCertParse() runs the certificate signature check separately from the parse to keep peak memory down, then merges the two results, but it merged the signature result back only when the parse returned 0, so any parse …

  • Low 2.3

    Client session cache reference poisoning allows resumption with wrong server

    Without NO_SESSION_CACHE_REF, wolfSSL_get_session() does not return a session object but a ClientSession reference of the form {row, index, hash(sessionID)} into the process-global SessionCache, and ClientSessionToSession() validates it against that hash alon…

  • Medium 5.9

    PKCS7_verify signer confusion allows forged signatures to be accepted

    PKCS7_verify signer confusion allows forged signatures, where the signer associated with a signature is not correctly bound, permitting a forged signature to be accepted.

  • Medium 5.7

    iPAddress name constraints not enforced when WOLFSSL_IP_ALT_NAME is undefined

    iPAddress name constraints bypass when WOLFSSL_IP_ALT_NAME is not defined. IP address name constraints are not enforced in that configuration, allowing a certificate to bypass an issuing CA's IP address constraints.

  • Medium 5.9

    HMAC-BLAKE2 final discards message when key length exceeds block size

    wc_Blake2bHmacFinal and wc_Blake2sHmacFinal discard the message when the key length exceeds the block size, producing a MAC that is independent of the input. When the supplied key is longer than the BLAKE2 block size the key-hashing branch reinitialized the r…

  • Medium 6.3

    OCSP CertID serial-number length-confusion in wolfSSL_OCSP_resp_find_status

    OCSP CertID serial-number length-confusion in wolfSSL_OCSP_resp_find_status allows a same-issuer SingleResponse whose serial is a prefix of the target serial to be reported as the revocation status of a different certificate. The lookup compared serial-number…

  • Medium 6.0

    Missing SNI/ALPN binding on stateful (session-ID) TLS session resumption

    Missing SNI/ALPN binding on stateful (session-ID) resumption, which previously skipped the binding check performed for ticket-based resumption. A cached session could be resumed under a different SNI/ALPN than originally negotiated and, where client-authentic…

  • Medium 6.0

    TLS 1.3 post-handshake authentication: server accepts Finished without client Certificate/CertificateVerify

    TLS 1.3 post-handshake authentication (PHA) issue where a server could accept a client's Finished message without the client having sent a Certificate and CertificateVerify. The post-handshake-auth exemption that allows an empty/absent peer certificate was on…

  • Low 2.1

    Encrypt-then-MAC could fall back to MAC-then-Encrypt when HAVE_ENCRYPT_THEN_MAC is configured

    When HAVE_ENCRYPT_THEN_MAC is configured, the implementation could fall back to MAC-then-Encrypt rather than enforcing Encrypt-then-MAC.

  • Low 2.0

    Out-of-bounds write in SetSuitesHashSigAlgo on oversized signature algorithms list

    Out-of-bounds write in SetSuitesHashSigAlgo when processing an oversized signature algorithms list, allowing a write past the bounds of the destination buffer.

  • Medium 6.0

    PKCS#12 MAC verification uses attacker-controlled comparison length

    PKCS#12 MAC verification uses an attacker-controlled comparison length, weakening the integrity check on the MAC and allowing a mismatched MAC to be accepted. The PKCS#12 verify path compared the locally computed HMAC against the MAC parsed from the PKCS#12 s…

  • Medium 6.3
    CVE-2026-6330 Public exploit

    ML-KEM ARM64 NEON ciphertext comparison only compares half of the input

    The ML-KEM ARM64 NEON ciphertext comparison only compares half of the input, breaking the Fujisaki-Okamoto transform's implicit rejection and weakening IND-CCA2 security on that code path. The constant-time comparison effectively ignored part of the re-encryp…

  • Low 2.1

    HMAC zero-length tag forgery in EVP_DigestVerifyFinal

    HMAC zero-length tag forgery in EVP_DigestVerifyFinal, where a zero-length tag could be accepted as valid during HMAC verification. In the OpenSSL-compatibility HMAC verify path the supplied signature length was only checked as not exceeding the MAC length, s…

  • Low 2.3

    Continued acceptance of SHA-1/MD5 digests in certificate processing

    Certificate policy and RFC 8446 compliance concerns regarding the continued acceptance of SHA-1/MD5 in certificate processing.

  • Low 1.0

    CRL critical extension bypass in ParseCRL_Extensions

    A CRL critical extension bypass exists in ParseCRL_Extensions where critical extensions are not properly enforced, allowing a crafted CRL with an unhandled critical extension to be accepted. This only affects builds with CRL support enabled and where a crafte…

  • Low 1.0

    Integer underflow in wc_PKCS7_DecryptOri handling crafted Other Recipient Info

    Integer underflow in wc_PKCS7_DecryptOri when handling crafted Other Recipient Info, leading to incorrect length handling during decryption.

  • High 8.8

    DTLS 1.3 ACK serialization heap buffer overflow via integer truncation

    A heap buffer overflow could occur in the DTLS 1.3 ACK serialization path before the connecting peer is authenticated. The buffer overflow was due to an integer truncation when computing the length of the ACK record-number list, causing an undersized buffer t…

  • Low 1.0

    PKCS#7 decode ignores caller output buffer size, writing past buffer bounds

    The PKCS#7 decode path ignores the caller-supplied output buffer size (outputSz), allowing decoded content to be written past the bounds of the provided buffer. This affects wolfSSL 5.9.0 and earlier and was fixed in the 5.9.1 release.

  • Medium 6.0

    X.509 name constraint bypass via Subject CN treated as a DNS name

    X.509 name constraint bypass via the Subject Common Name when treated as a DNS-type name. A certificate whose Subject CN violates an issuing CA's DNS name constraints could be accepted.

  • Low 2.3

    Use-after-free in PQC hybrid key-share handling

    Use-after-free in PQC hybrid key-share handling. This is an incomplete-fix follow-up to CVE-2026-5460 (released in 5.9.1): a malicious TLS 1.3 server sending a truncated PQC hybrid KeyShare can still trigger the error cleanup path to operate on freed memory.

  • High 8.3

    ML-KEM-1024 x64 AVX2 incomplete cipher text comparison enables IND-CCA2 break and static private-key recovery

    wolfSSL's AVX2-optimized ML-KEM implementation (mlkem_cmp_avx2) compares only 1536 of the 1568 ciphertext bytes during the Fujisaki-Okamoto re-encryption check in ML-KEM-1024 decapsulation. Ciphertexts that differ from the expected re-encryption solely in byt…

  • Low 2.3

    X25519 x86_64 assembly final reduction leaves non-canonical field element

    The X25519 x86_64 assembly implementation fails to clear the most significant bit during the final modular reduction, so the computed result may not be fully reduced modulo the field prime 2^255 - 19. This can leave the field element in a non-canonical form, …

  • Medium 6.3

    Wildcard DNS SAN bypasses CA name-constraint checks

    Certificates with wildcard DNS SANs (e.g. *.example.com) bypassed CA name-constraint checks. A certificate with a wildcard DNS SAN that should be rejected by the issuing CA's permitted/excluded DNS name constraints could be accepted.

  • High 8.7

    X.509 trust-chain bypass in wolfSSL_X509_verify_cert() via untrusted intermediate anchoring

    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…

  • Medium 6.3

    Out-of-bounds heap read in SM2/SM3 certificate Subject Key Identifier computation

    Out-of-bounds heap read during SM2/SM3 certificate signature verification. When parsing a certificate with an SM3wSM2 signature, the Subject Key Identifier computation reads the trailing 65 bytes of the public key without checking that the key is at least tha…

  • High 8.3

    Renesas TSIP TLS 1.3 transcript buffer out-of-bounds write in tsip_StoreMessage

    Out-of-bounds write in the Renesas TSIP TLS 1.3 transcript buffer. In tsip_StoreMessage() the capacity check guarding the fixed message bag (MSGBAG_SIZE) sets an error code but fails to return, so execution falls through to an XMEMCPY that writes past the end…

  • High 8.2

    Un-negotiated Raw Public Key (RFC 7250) accepted in place of X.509, bypassing chain validation

    Un-negotiated Raw Public Key (RFC 7250) accepted in place of an X.509 certificate, bypassing chain validation. A raw public key has no chain, so ParseCertRelative() accepts it without performing any trust verification; it must therefore only be accepted when …

  • Medium 6.3

    Chain intermediate CA:TRUE without keyCertSign accepted as a signing CA (temporary CA exemption)

    Chain intermediate CA:TRUE without keyCertSign accepted as a signing CA. Intermediate CA certificates are required to have the keyCertSign key usage when a Key Usage extension is present, but chain-supplied temporary CAs (WOLFSSL_TEMP_CA) added while building…

  • High 8.2

    X.509 trust-chain bypass via path-depth exhaustion in wolfSSL_X509_verify_cert()

    X.509 trust-chain bypass (path-depth exhaustion) in the OpenSSL compatibility certificate verifier (wolfSSL_X509_verify_cert()). This affects only builds with --enable-opensslextra whose application calls X509_verify_cert() with caller-supplied untrusted inte…

  • Low 2.0

    AES-GCM streaming APIs do not reject >64 GiB cumulative single messages, enabling counter wrap and keystream reuse

    AES-GCM encryption/decryption with extremely large cumulative single message sizes (>64 GiB) were not properly rejected by the streaming APIs, allowing counter wrap, keystream reuse, and consequent plaintext recovery.

  • High 8.2

    wolfSSL_PKCS7_verify() reports success for degenerate (certs-only) PKCS#7 with no signer

    wolfSSL_PKCS7_verify() returning success for a degenerate (certs-only) PKCS#7 object that contains no signer. Such an object has empty signerInfos, so the underlying signed-data verification succeeds without authenticating any content. The compatibility-layer…