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.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| FreeRDP | FreeRDP | < 3.29.0 |
References
- https://github.com/FreeRDP/FreeRDP/commit/b9533f07f98c25ed01c5f543b4d0ce73e120f5fdPatch
- https://github.com/FreeRDP/FreeRDP/security/advisories/GHSA-43hh-p3vw-hfx3Vendor Advisory, Exploit, Mitigation
- https://www.vulncheck.com/advisories/freerdp-before-tls-certificate-identity-validation-bypassPatch, Third Party Advisory
Timeline
- Published
- Aug 1, 2026
- Last modified
- Oct 2, 2026
- NVD status
- Analyzed