Description
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 RPK was actually negotiated for that peer. The check now defaults the expected type to X.509 (per RFC 7250/8446) when no type was negotiated, comparing against the received server certificate type on the client and the selected client certificate type on the server, and rejects any mismatch, including an un-negotiated raw public key, with UNSUPPORTED_CERTIFICATE. Only affects builds with Raw Public Key support (HAVE_RPK) enabled - disabled by default in a standalone build, but included in --enable-all.
Published: 2026-06-25
Score: 8.2 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw allows a raw public key, which carries no certificate chain, to be accepted as an X.509 certificate during a TLS handshake. Because the parsing function does not perform any trust verification when the key type is not negotiated, an attacker can present a forged key and make the client or server believe it is a trusted peer. This is a CWE‑295 weakness—improper verification of cryptographic parameters—which can enable impersonation of a legitimate server or client and lead to man‑in‑the‑middle attacks and unauthorized access to encrypted channels.

Affected Systems

wolfSSL wolfSSL configurations that enable Raw Public Key support (HAVE_RPK) are affected. The vulnerability does not exist in standalone builds where this feature is disabled by default, but it is present in builds that compile with the all‑in‑one option or explicitly enable the feature.

Risk and Exploitability

The CVSS score of 8.2 indicates a high severity vulnerability. The EPSS score is currently not available, so the likelihood of exploitation cannot be quantified, and the issue is not listed in CISA’s KEV catalog. The likely attack vector is a network‑based TLS connection where an attacker can influence the key exchange. If RPK support is enabled and the client or server accepts a raw key that was not properly negotiated, the lack of chain validation can be exploited to establish a false secure channel. The fix involves rejecting un‑negotiated raw keys with an UNSUPPORTED_CERTIFICATE error, thereby restoring proper certificate validation.

Generated by OpenCVE AI on June 25, 2026 at 22:06 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update to the latest wolfSSL release that includes the fix referenced in the security advisory.
  • If Raw Public Key support is not required, build wolfSSL with the RPK feature disabled to eliminate the attack surface.
  • Ensure that TLS configurations enforce certificate validation for all peers, preventing acceptance of keys that do not form a valid certification chain.

Generated by OpenCVE AI on June 25, 2026 at 22:06 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 26 Jun 2026 01:30:00 +0000

Type Values Removed Values Added
First Time appeared Wolfssl
Wolfssl wolfssl
Vendors & Products Wolfssl
Wolfssl wolfssl

Thu, 25 Jun 2026 20:00:00 +0000

Type Values Removed Values Added
Description 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 RPK was actually negotiated for that peer. The check now defaults the expected type to X.509 (per RFC 7250/8446) when no type was negotiated, comparing against the received server certificate type on the client and the selected client certificate type on the server, and rejects any mismatch, including an un-negotiated raw public key, with UNSUPPORTED_CERTIFICATE. Only affects builds with Raw Public Key support (HAVE_RPK) enabled - disabled by default in a standalone build, but included in --enable-all.
Title Un-negotiated Raw Public Key (RFC 7250) accepted in place of X.509, bypassing chain validation
Weaknesses CWE-295
References
Metrics cvssV4_0

{'score': 8.2, 'vector': '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'}


cve-icon MITRE

Status: PUBLISHED

Assigner: wolfSSL

Published:

Updated: 2026-06-25T19:31:55.861Z

Reserved: 2026-06-17T22:10:55.453Z

Link: CVE-2026-55960

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-06-26T01:15:04Z

Weaknesses
  • CWE-295

    Improper Certificate Validation