CVE-2020-15104: TLS Validation Vulnerability in Envoy
In Envoy before versions 1.12.6, 1.13.4, 1.14.4, and 1.15.0 when validating TLS certificates, Envoy would incorrectly allow a wildcard DNS Subject Alternative Name apply to multiple subdomains. For example, with a SAN of .example.com, Envoy would incorrectly allow nested.subdomain.example.com, when it should only allow subdomain.example.com. This defect applies to both validating a client TLS certificate in mTLS, and validating a server TLS certificate for upstream connections. This vulnerability is only applicable to situations where an untrusted entity can obtain a signed wildcard TLS certificate for a domain of which you only intend to trust a subdomain of. For example, if you intend to trust api.mysubdomain.example.com, and an untrusted actor can obtain a signed TLS certificate for .example.com or .com. Configurations are vulnerable if they use verifysubjectaltname in any Envoy version, or if they use matchsubjectaltnames in version 1.14 or later. This issue has been fixed in Envoy versions 1.12.6, 1.13.4, 1.14.4, 1.15.0.
Affected Software
Event History
Frequently Asked Questions
What is CVE-2020-15104?
CVE-2020-15104 is a vulnerability in Envoy that allows a wildcard DNS Subject Alternative Name to apply to multiple subdomains.
Which versions of Envoy are affected by CVE-2020-15104?
Versions 1.12.6, 1.13.4, 1.14.4, and 1.15.0 of Envoy are affected by CVE-2020-15104.
How does CVE-2020-15104 impact TLS certificate validation in Envoy?
CVE-2020-15104 allows a wildcard DNS Subject Alternative Name to be incorrectly applied to multiple subdomains during TLS certificate validation in Envoy.
What is the severity of CVE-2020-15104?
CVE-2020-15104 has a severity rating of medium, with a CVSS score of 5.4.
How can I fix CVE-2020-15104?
To fix CVE-2020-15104, update Envoy to versions 1.12.6, 1.13.4, 1.14.4, or 1.15.0.