设为首页 头部信息

确保数字证书透明度 识破伪造SSL证书

2016-09-13 11:41:23 来源:互联网

确保数字证书透明度 识破伪造SSL证书

飞速发展的互联网时代,站长们会通过安装SSL证书来进行认证网站身份、流量加密,避免“钓鱼网站”和信息泄露。那么,你如何知晓并且确认指向你域名的SSL证书的真实性?SSL证书是否有被发行给其他人,甚至是被攻击者所利用呢?

Certificate Transparency(证书透明,简称CT)就是为了解决这些问题而诞生的。CT可以直译为证书透明度,是由 Google 公司主导,并由国际互联网工程任务组(The Internet Engineering Task Force,简称 IETF)标准化后为 RFC 6962。CT的目标是提供一个开放的审计和监控系统,可以让任何域名所有者或者 CA ,确定证书是否被错误签发或者被恶意使用,从而提高 HTTPS网站的安全性。

 

 CT整套系统由三部分组成:  1)Certificate Logs(证书日志)、2)Certificate Monitors(证书监控)、3)Certificate Auditors(证书审计)。 简单说来,证书所有者或者CA都可以主动向Certificate Logs服务器提交证书,所有证书记录都会接受审计和监控。支持CT的浏览器会根据Certificate Logs中的证书状态,作出不同的反应。CT 不是要替换现有的 CA 设施,而是做为补充,使之更透明、更实时、更安全。 

上个月,英国的Mozilla程序员Gervase Markham,在Mozilla的安全政策邮件内曾提到国内深圳某CA机构在没有审核域名归属的情况下,就为某申请者颁发了一张SSL证书,并且,这样的情况从2015年7月就开始了。

Markham在邮件内称,2015年6月,有申请者发现国内某知名CA机构的免费证书服务存在问题,只要申请者证明他们拥有子域名,该CA机构就会给他们颁发根域的证书。这名申请者本来是想要申请一张 med.ucf.edu 的证书,不小心写成了, www.ucf.edu ,结果该CA机构居然同意了,并且颁发了一张根域名的证书给这名申请者。

为了进一步测试,研究人员用同样的方法针对Github的根域名实施了欺骗,众所周知,GitHub是可以支持用户创建自己的{username}.github.io子域名的。因此,当申请者证明自己有子域控制权后,该CA机构同样分发了GitHub根域名的证书。

研究人员在测试后曾向该CA机构报告了这个情况,并以GitHub为例,但该CA机构只是吊销了GitHub的证书。之所以只吊销了一个证书,可能是因为该CA机构没有能力再去一个一个追踪所有误发的根证书。

查看各家CA机构就CT问题所采取的动向,我们竟意外的发现,其实该CA机构在今年的7月就已经公开声明且宣布旗下所有的SSL数字证书都已实现证书透明(网页链接:http://blog.sina.com.cn/s/blog_8db6019e0102wd8t.html)。我们不清楚Mozilla程序员发现的这类情况是否还会发生,但至少确保数字证书透明度、识破伪造SSL证书是每个CA机构的职责所在。如果该CA机构连SSL数字证书的透明与否都无法保证,谁又能保证它将不会是第二个DigiNotar?