SSL/TLS Certificate Hostname Mismatch
SSL/TLS 证书主机名不匹配
描述
当 SSL/TLS 证书中指定的域名与其保护的服务器的实际主机名不匹配时,就会发生主机名不匹配。这种不匹配会导致浏览器中出现安全警告,并可能使连接暴露于潜在的漏洞,包括中间人 (MitM) 攻击。
当浏览器或客户端连接到网站时,它会检查域名是否与证书中的通用名称 (CN) 或任何主题备用名称 (SAN) 字段匹配。如果主机名和证书之间存在不匹配,浏览器会发出诸如“您的连接不是私密连接”之类的安全警告,这可能会阻止用户继续操作并损害用户信任。如果忽略这些警告,用户将面临连接到恶意网站的风险。
主机名不匹配的一个关键安全风险是 MitM 攻击的潜在可能性。在这种情况下,攻击者可以为不同的域提供有效的证书,制造安全连接的错觉,同时拦截或篡改通信。当用户忽略安全警告并在存在不匹配的情况下继续访问网站时,此类攻击尤其成问题。
主机名不匹配也可能是由于通配符证书配置不当或未在证书中包含相关的子域而引起的。例如,如果将 *.example.com 的通配符证书用于通配符未涵盖的子域(例如 sub.example.org),则会触发不匹配和安全警告。
现实世界的影响: 考虑一个使用为不同域名颁发的证书的企业内部网。尝试访问该网站的员工会在其浏览器中遇到安全警告,这可能会妨碍生产力。随着时间的推移,反复暴露于这些警告可能会导致用户对这些警报变得麻木,从而增加未来发生安全漏洞的风险。
建议
解决主机名不匹配问题:
- 使用正确的域名:
- 确保为证书将用于的确切域名颁发证书。
-
如果同时使用裸域和 www 子域,请将两者都包含在内。
-
利用主题备用名称 (SAN):
- 使用 SAN 在单个证书中包含所有相关的域名和子域。
-
这对于可在多个域名下访问的服务特别有用。
-
正确使用通配符证书:
- 如果使用通配符证书,请确保正确使用它们并且仅将其用于适当的子域。
-
注意通配符证书的安全隐患,并明智地使用它们。
-
定期审计:
- 定期审计您的 SSL/TLS 证书,以确保它们与其使用的主机名相匹配。
-
这在更改域或迁移服务后尤为重要。
-
实施强有力的域验证:
-
使用域验证 (DV) 或更高级别的证书来确保正确验证域所有权。
-
更新 DNS 记录:
-
确保 DNS 记录是最新的并且正确指向适当的服务器。
-
证书管理工具:
- 使用可以检测并发出主机名不匹配警报的证书管理工具。
链接
标准
- SOC2_CONTROLS:
- CC_6_7
- CC_7_1
- CCPA:
- CCPA_1798_150
- GDPR:
- ART_32
- HIPAA_CONTROLS:
- SECURITY252
- SECURITY212
- SECURITY213
- PCI_STANDARDS:
- REQ_4_1
- REQ_6_2