CVE-2026-66402: FreeRDP before 3.29.0 TLS Certificate Identity Validation Bypass
FreeRDP before 3.29.0 (affected versions <= 3.28.0) contains multiple TLS certificate identity validation weaknesses in tlsverifycertificate(), tlsmatchhostname(), and x509utilsgetdnsnames(). 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.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
FreeRDPto a version that resolves this vulnerability.Fixed in 3.29.0
Event History
Frequently Asked Questions
What is the severity of CVE-2026-66402?
CVE-2026-66402 has a critical severity rating of 9.3.
How do I fix CVE-2026-66402?
To fix CVE-2026-66402, upgrade FreeRDP to version 3.29.0 or later.
What are the risks associated with CVE-2026-66402?
CVE-2026-66402 can lead to TLS certificate identity validation bypass, allowing potential man-in-the-middle attacks.
Which versions of FreeRDP are affected by CVE-2026-66402?
FreeRDP versions up to and including 3.28.0 are affected by CVE-2026-66402.
What functions are impacted by CVE-2026-66402?
CVE-2026-66402 affects the functions tls_verify_certificate(), tls_match_hostname(), and x509_utils_get_dns_names() in FreeRDP.