什么时候是 SSL 证书 'valid' - altnames

When is an SSL certificate 'valid' - altnames

我一直在使用在线 SSL 检查器来检查多个站点的证书有效性。

我注意到的一件事是许多网站都有通配符证书 - 特别是那些托管在常见网站托管网站上的网站,例如 goDaddy:*.onlinestore.godaddy.com

但是这些网站有自定义域,因此在验证 SSL 证书时我会看到主机名与证书中列出的别名不匹配的错误。

但所有主流浏览器(已测试 chrome、FF、IE 和 Safari)仍显示该站点是安全的。浏览器不关心证书中没有列出域名,这不是安全漏洞吗?

示例https://www.sslshopper.com/ssl-checker.html#hostname=www.cinnamonmotif.com

如果您查看浏览器解析的证书,您会发现它不同于 sslshopper.com 解析的证书。

当您进入现代浏览器时,客户端会发送 TLS 服务器名称指示扩展,网站会注意到它应该提供 cinnamonmotif.com 证书。

SslShopper 看到 *.onlinestore.godaddy.com,这是来自 Go Daddy Secure Certificate Authority - G2 的证书 0x6068c7475ab4ee2a

对于 SNI,提供的证书是 cinnamonmotif.com,来自 Go Daddy Secure Certificate Authority - G2 的证书 0x3e0240d9425e8120

浏览器看到不同的证书,主机名匹配,这就是浏览器说这是合法连接的原因。

如果域上安装了通配符证书,浏览器仅检查证书有效性和通配符规则。只要此规则为真,证书 ID 就受信任并且不会出现警告。