Description
FreeRDP before 3.29.0 (affected versions <= 3.28.0) contains multiple TLS certificate identity validation weaknesses in tls_verify_certificate(), tls_match_hostname(), and x509_utils_get_dns_names(). Because FreeRDP performs custom Common Name and DNS SAN string matching instead of using OpenSSL's length-aware identity validation APIs, it (1) truncates DNS SAN values at embedded NUL bytes (accepting e.g. 'victim.example\0.attacker.example' as 'victim.example'), (2) accepts a matching Common Name even when non-matching DNS SAN entries are present, and (3) accepts IP-literal targets via DNS/CN matching without comparing iPAddress SANs. Under a trusted or misissued certificate chain, an attacker positioned to present such a certificate can bypass server identity verification, weakening TLS server authentication.
Published: 2026-08-01
Score: 9.3 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

FreeRDP before version 3.29.0 contains a TLS certificate identity validation bypass that allows an attacker to present a trusted or misissued certificate and subvert the client’s server authentication. The flaw arises from custom handling of Common Name and DNS Subject Alternative Name matching that truncates values at embedded NUL bytes, accepts a matching Common Name even when non‑matching SAN entries exist, or accepts IP‑literal targets without verifying iPAddress SANs. As a result, a man‑in‑the‑middle can impersonate a legitimate RDP server, potentially leading to credential theft or remote code execution on the target host.

Affected Systems

FreeRDP (all releases up to and including 3.28.0) are affected. Any deployment using these versions and establishing TLS connections to a Remote Desktop server is at risk.

Risk and Exploitability

The vulnerability scores a CVSS of 9.3, indicating high complexity and a complete impact on confidentiality, integrity, and availability. The EPSS score is 0.0029 (< 1%), indicating a low probability of exploitation, and the issue is not listed in the CISA KEV catalog. The likely attack vector requires an attacker capable of influencing the TLS certificate presented to the client, such as by forging a certificate through a compromised CA, exploiting a misconfigured server, or manipulating the certificate chain. Once the forged certificate is accepted, the attacker can intercept traffic, impersonate the server, or inject malicious commands.

Generated by OpenCVE AI on August 4, 2026 at 22:12 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade FreeRDP to version 3.29.0 or later, which removes the custom certificate validation code.
  • If an immediate upgrade is not possible, replace the custom TLS validation logic in the client with OpenSSL’s length‑aware identity verification APIs or apply the security patch referenced in the advisories.
  • Ensure that all RDP servers use properly issued certificates that contain no embedded NUL bytes and that SAN entries match the expected hostnames or IP addresses; configure strict SAN validation on the server side to prevent future exploitation.

Generated by OpenCVE AI on August 4, 2026 at 22:12 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 05 Aug 2026 03:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Mon, 03 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-222
References
Metrics threat_severity

None

threat_severity

Moderate


Sat, 01 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
Description FreeRDP before 3.29.0 (affected versions <= 3.28.0) contains multiple TLS certificate identity validation weaknesses in tls_verify_certificate(), tls_match_hostname(), and x509_utils_get_dns_names(). Because FreeRDP performs custom Common Name and DNS SAN string matching instead of using OpenSSL's length-aware identity validation APIs, it (1) truncates DNS SAN values at embedded NUL bytes (accepting e.g. 'victim.example\0.attacker.example' as 'victim.example'), (2) accepts a matching Common Name even when non-matching DNS SAN entries are present, and (3) accepts IP-literal targets via DNS/CN matching without comparing iPAddress SANs. Under a trusted or misissued certificate chain, an attacker positioned to present such a certificate can bypass server identity verification, weakening TLS server authentication.
Title FreeRDP before 3.29.0 TLS Certificate Identity Validation Bypass
First Time appeared Freerdp
Freerdp freerdp
Weaknesses CWE-295
CPEs cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:*
Vendors & Products Freerdp
Freerdp freerdp
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-05T03:56:18.042Z

Reserved: 2026-07-26T12:22:34.139Z

Link: CVE-2026-66402

cve-icon Vulnrichment

Updated: 2026-08-03T18:30:19.938Z

cve-icon NVD

Status : Received

Published: 2026-08-01T13:16:57.487

Modified: 2026-08-05T05:17:09.177

Link: CVE-2026-66402

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-01T12:22:17Z

Links: CVE-2026-66402 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-04T22:15:03Z

Weaknesses
  • CWE-222

    Truncation of Security-relevant Information

  • CWE-295

    Improper Certificate Validation