Skip to main content

wolfSSL CVE-2026-11999

| EUVDEUVD-2026-39496 HIGH
Improper Certificate Validation (CWE-295)
2026-06-25 wolfSSL GHSA-wrw6-8jh4-qvcx
8.2
CVSS 4.0 · Vendor: wolfSSL
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify app using opensslextra X509_verify_cert()
  2. Delivery
    Build chain of >100 untrusted intermediates
  3. Exploit
    Present chain to verifier
  4. Execution
    Path depth exhausted before trust anchor
  5. Persist
    Attacker certificate accepted as trusted
  6. Impact
    Impersonate peer / bypass authentication

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V12 - Secure Communication Certificate validation
Exploitation Conditions

Exploitation requires all of the following concrete prerequisites: the wolfSSL build must be compiled with --enable-opensslextra (the OpenSSL compatibility layer), the application must call X509_verify_cert()/wolfSSL_X509_verify_cert() for manual or deferred verification rather than relying on the native TLS handshake, the application must pass caller-supplied untrusted intermediate certificates into that verification, and the attacker must supply a certificate chain deeper than the verifier's maximum path depth (default 100) that never reaches a configured trust anchor. Limiting factors that reduce real-world risk: native wolfSSL TLS/DTLS and the default WOLFSSL_VERIFY_PEER handshake are explicitly not affected, so the standard TLS use case is safe; the bug only manifests in the non-default opensslextra manual-verification deployment mode; and the attacker must control or inject an oversized intermediate chain. Per CVSS PR:N/UI:N, no authentication or user interaction is required once an application is in the affected configuration.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N) scores 8.2 (High): network-reachable, no privileges, no user interaction, but with an explicit Attack Requirement (AT:P) and impact limited to integrity (VI:H) - there is no direct confidentiality or availability impact in the base metrics. The AT:P flag and the description align well: exploitation is gated behind a specific, non-default usage pattern (opensslextra compat build + manual/deferred verification via X509_verify_cert() with caller-supplied untrusted intermediates + an attacker chain deeper than 100), which meaningfully narrows the affected population versus the raw 8.2 score. No EPSS score was provided in the input, it is not in CISA KEV, and no POC was supplied, so this is not currently evidence of active or widespread exploitation. The realistic priority is high for the specific subset of deployments matching the affected configuration (where it is vendor-described as critical) and low for everyone else, including all native-TLS users. Note one conflict to verify: base metrics set VC:N, yet a successful certificate-acceptance bypass can enable downstream MITM that does affect confidentiality of the protected channel - the base score scopes only the direct integrity impact, so secondary confidentiality risk should be assessed in context.

Exploit ScenarioDerived

An attacker who can present a certificate chain to a vulnerable application (for example a malicious TLS server or a service feeding certificates into an app that defers verification) crafts a chain of more than 100 untrusted intermediates terminating in an attacker-controlled leaf and no legitimate trust anchor. The application calls X509_verify_cert() with these caller-supplied intermediates, path building exhausts its depth budget before reaching any trusted root, and the function returns success, causing the attacker certificate to be accepted as trusted. No public exploit is identified at time of analysis, and per the CVSS vector the attack is network-reachable with no authentication but carries a specific attack requirement (the non-default compat-API usage).

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 25, 2026

Certificate trust-chain bypass in wolfSSL allows attackers to have an attacker-controlled certificate accepted as valid, but only in builds compiled with --enable-opensslextra where the application calls the OpenSSL-compatibility X509_verify_cert() with caller-supplied untrusted intermediates. The verifier returned success based on the last verified link instead of confirming the chain reaches a configured trust anchor, so a chain deeper than the maximum path depth (default 100) is accepted without ever validating against a trusted root. There is no public exploit identified at time of analysis and it is not listed in CISA KEV; native wolfSSL TLS/DTLS and the default WOLFSSL_VERIFY_PEER handshake are unaffected.

RemediationAI

Patch available per vendor advisory; the upstream fix is available as wolfSSL PR https://github.com/wolfSSL/wolfssl/pull/10674, but a tagged patched release version is not independently confirmed in the supplied data, so monitor https://www.wolfssl.com/docs/security-vulnerabilities/ for the official fixed release and upgrade to it. As a compensating control where you cannot immediately patch, applications can avoid the vulnerable path entirely by relying on native wolfSSL TLS verification (default WOLFSSL_VERIFY_PEER) instead of manual X509_verify_cert() with caller-supplied untrusted intermediates - this removes exposure but requires refactoring how the application performs certificate validation. If the compatibility API must be used, validate that the resulting chain actually terminates at a configured trust anchor rather than trusting the API return value alone, and reject chains that approach or exceed the maximum path depth (default 100), accepting that legitimate deep chains would also be rejected. Builds that do not require the OpenSSL compatibility layer can be rebuilt without --enable-opensslextra to eliminate the affected code path, at the cost of losing OpenSSL-compatibility API support.

Affected VersionsENISA

wolfSSL 5.7.4 ≤5.9.1

Affected Packages

euvd wolfssl no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

wolfSSL is a lightweight, embedded/IoT-focused TLS library that ships an optional OpenSSL compatibility layer (enabled via --enable-opensslextra) exposing OpenSSL-style APIs such as X509_verify_cert() (internally wolfSSL_X509_verify_cert()). The flaw is a classic CWE-295 (Improper Certificate Validation) root cause: X.509 path building is supposed to terminate only when it reaches a configured trust anchor, but this code path treated successful verification of the most recent link as overall success. When a caller supplies untrusted intermediates and the chain exceeds the verifier's maximum path depth (default 100), path building exhausts its depth budget while still traversing untrusted intermediates and accepts the chain even though no trust anchor was reached. The affected component is identified by cpe:2.3:a:wolfssl:wolfssl:*:*:*:*:*:*:*:*, and the upstream fix is in wolfSSL PR #10674, which adds untrusted-anchor regression certificates and a test (test_X509_verify_cert_untrusted_inter) confirming a chain is accepted only when it terminates at a trusted anchor.

Know when OpenSSL gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (wolfSSL) PRIMARY 8.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.9 MEDIUM

AC:H reflects the required non-default opensslextra manual-verification path plus a >100-deep crafted chain; PR:N/UI:N as no auth or interaction is needed; impact is integrity-only (I:H), no confidentiality or availability.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (wolfSSL).

CVSS VectorVendor: wolfSSL

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

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 intermediates; for those users it is critical, otherwise the library is unaffected. Native wolfSSL TLS/DTLS usage is not impacted. X509_verify_cert() returned success based only on the last verified link rather than on reaching a trust anchor: when the supplied chain is deeper than the verifier's maximum path depth (default 100), path building runs out of depth while still walking untrusted intermediates and the chain is accepted even though it never reaches a configured trust anchor, allowing acceptance of an attacker-controlled certificate. The default TLS handshake (WOLFSSL_VERIFY_PEER) is not affected; only applications doing manual or deferred verification through this API are.

Executive ViewAI

Why It Matters

CVE-2026-11999 in wolfSSL enables attackers to bypass certificate validation in specific configurations-no public exploit identified at time of analysis. The vulnerability affects only applications built with --enable-opensslextra that pass untrusted intermediate certificates to verification functions; standard wolfSSL TLS deployments are unaffected. Organizations using wolfSSL's OpenSSL-compatibility layer must apply available patches to prevent certificate trust bypass and potential man-in-the-middle attacks.

Business Impact: High
Compensating Controls

Apply vendor patch. For systems where patching is delayed: disable --enable-opensslextra at build time if not required for application compatibility; enforce network-level certificate validation at security gateways; implement monitoring for suspicious certificate chain usage patterns.

Threat Intelligence Overview

EPSS Score
0.2%
Top 91% exploitable
Prevalence
Medium
widely used embedded/IoT TLS library, but affected compat-mode usage is narrow
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment MSRC GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

41
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2014-0160 HIGH POC
7.5 Apr 07

The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe

CVE-2021-3711 CRITICAL POC
9.8 Aug 24

In order to decrypt SM2 encrypted data an application is expected to call the API function EVP_PKEY_decrypt(). Rated cri

CVE-2014-0195 MEDIUM POC
6.8 Jun 05

The dtls1_reassemble_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2016-0800 MEDIUM POC
5.9 Mar 01

The SSLv2 protocol, as used in OpenSSL before 1.0.1s and 1.0.2 before 1.0.2g and other products, requires a server to se

CVE-2015-0204 MEDIUM POC
4.3 Jan 09

The ssl3_get_key_exchange function in s3_clnt.c in OpenSSL before 0.9.8zd, 1.0.0 before 1.0.0p, and 1.0.1 before 1.0.1k

CVE-2022-2068 HIGH
7.3 Jun 21

In addition to the c_rehash shell command injection identified in CVE-2022-1292, further circumstances where the c_rehas

CVE-2015-4000 LOW POC
3.7 May 21

The TLS protocol 1.2 and earlier, when a DHE_EXPORT ciphersuite is enabled on a server but not on a client, does not pro

CVE-2014-3566 LOW POC
3.4 Oct 15

The SSL protocol 3.0, as used in OpenSSL through 1.0.1i and other products, uses nondeterministic CBC padding, which mak

CVE-2016-2107 MEDIUM POC
5.9 May 05

The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a

CVE-2015-1793 MEDIUM POC
6.5 Jul 09

The X509_verify_cert function in crypto/x509/x509_vfy.c in OpenSSL 1.0.1n, 1.0.1o, 1.0.2b, and 1.0.2c does not properly

CVE-2022-3602 HIGH
7.5 Nov 01

A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Rated hig

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy