文 献 综 述
1.背景意义:
HTTPS依赖于数百个证书颁发机构组成的公钥基础设施,并验证网站的身份,以及颁发数字证书。为了确保浏览器和支持HTTPS的网站的兼容性及安全性,IETF和CA/Browser论坛等标准组织,制定了管理CA提供数字证书的策略。在公钥基础设施中,数字证书保存着能用来验证网站的身份信息,而且其中包含的公钥为信息和数据的安全传输提供了保障。所以数字证书中的问题,诸如:数字证书的签发是否符合统一的规范[2]、HTTPS证书生态系统的分析成为了研究中的焦点[3]。
数字证书的颁发必须有一个统一的标准,一些论坛以及标准组织[4]已经成立,并出版了相关的RFC 5280文档[5],以及基线标准文档 [4]。如果大部分能够签发数字证书的认证机构按照标准签发统一的结构一致的数字证书,浏览器之间也能够保证良好的兼容性以及安全性。但不幸的是,并不是所有的证书认证机构都能遵守已经出版的标准文档。
所以在上述的前提下,我选择了研究跟踪数字证书的错误分发情况,即研究当前的证书认证机构是否能够按照标准颁发数字证书,并将Zlint证书检测软件重构,在新开发的证书软件中添加更多的检测规则,并尽量规避Zlint软件中设计不合理的规则。由于在互联网环境中对证书颁发机构、证书颁发流程一再的妥协和疏忽,导致在使用证书时需要更多的审查。比如:需要公开记录已知证书、分析CA行为、建立技术标准等等。所以为了能够保证互联网的安全性和可靠性,通过对互联网中的数字证书的安全问题进行分析,对已经签发的数字证书中的错误进行统计,能够一定程度上预防一些安全事故的发生,同时对数字证书的安全问题研究能够找出一些令人担忧问题的原因,从而给相关标准制定组织提供一些可靠的线索。
2.国内外研究现状:
随着互联网的发展,研究网络中安全证书课题的团队越来越多,研究的方向也有很多。并且根据行业的需要,也产生了相应的证书RFC文档[5]以及基线标准[4]。以下结合了行业中最新研究成果,对相关问题的研究现状进行了总结:
近些年来针对全球公钥基础结构(PKI)的一系列攻击揭示了证书颁发机构(CA)系统的弱点。作为回应,CA/Browser Forum[4],这个由认证机构和浏览器供应商组成的联盟,于2011年发布了一套适用于所有在网上使用的证书的要求。为了能够评估要求和标准的实际遵守情况, Antoine Delignat-Lavaud和Martacute;ın Abadi等人的团队对从网络爬虫收集的大量证书进行测试,从而来统计描述全球认证机构的实践状况[10]。证书颁发机构(CA)在颁发证书会经常性的制造重复性的错误。为了量化这些错误,Deepak Kumar和Zhengping Wang等人的团队发布了Zlint[11],Zlint这个软件能够单独测试CA/Browser Forum的基线要求以及RFC 5280所规定的策略。此团队在浏览器可信的证书上运行Zlint,系统的分析了CA在2012年到2017年间构建证书的状况,发现自2012年以来,数字证书的错误已经大幅减少。到2017年,只有0.02%的证书仍然存在错误。但这主要是因为少数大型机构持续颁发正确的证书,使得小型证书机构颁发的不符合标准的证书所占比例减少。还有的错误证书的颁发与其他类型的管理不善有关。
由于HTTPS能够一定程度上保证信息传输的安全性,所以有很多网站已经逐步使用HTTPS来代替HTTP进行网站服务,HTTPS服务中有一个良好的功能就是能够对用户进行错误告警,但是各种非攻击情况每月都能够引发数以万计的虚假浏览器警告,从而影响了用户体验,阻碍了HTTPS的广泛采用,并破坏了对浏览器警告的信任。Mustafa Emre Acer和Emily Stark团队调查了造成HTTPS中错误警告的根本原因[7],目的是解决良性错误,该团队在手动审核了超过2000个错误报告后,开发了自动规则来对错误警告进行分类,发现超过一半的错误是由客户端网络问题造成的。在进行传输的过程中,浏览器还能够报告TLS错误,但是浏览器无法区分错误是源自攻击还是无害的错误配置,于是浏览器将其留给用户来决定是否为可以忽略的错误。但由于真正源自攻击造成的告警数量较少,用户很快习惯了“误报”,当真正的攻击来临时,用户就不会关注那些真正的、有危害的错误警告。为了研究这一过程,Devdatta Akhawe和Bernhard Amann的团队对常见的TLS警告进行了大规模的测量研究[1]。使用位于不同地点的一组被动网络监视器,分析了大约300000名用户的告警情况,来形成如何减少TLS错误的方案。此团队比较新颖的就是使用了内部浏览器代码而不是通用的TLS通用库进行分析,从而能够提供更准确和更具代表性的结果。
由于CA推动的协议以及中间人攻击的风险,在过去的五年中,TLS、HTTPS和Web PKI都添加了不少新的安全功能,比如证书透明度用来使CA系统可审计、HSTS和HPKP标头来强化域的HTTPS状态等多种安全功能。针对这些安全功能,Johanna Amann和Oliver Gasser等人的团队研究了当前这些安全功能的部署现状[8],对三大洲的大型大学网络的互联网上行链路上被动测量以及对覆盖了193M域的主动互联网扫描后,发现虽然新安全功能的部署已经普遍,但只有SCSV(49M域)和CT(7M域)已经获得了足够的部署动力来提高HTTPS的整体安全性。但具有更高复杂性的功能几乎不会部署且经常不正确,该团队针对此分析结果提出了针对部署这些新技术的改进步骤,并找到了在部署中具有显著相关性的技术。
