|
降低证书授权机构被入侵带来的风险DigiNotar公司的案例在未来还会发生。因为全球有上百家CA,找一个安全防护措施比较薄弱的分支机构还是很容易的,而且黑客都有锲而不舍的精神。而就算这样的攻击事件再次发生,也不意味着你或者你的企业就一定会受到波及。 前段时间,荷兰的一家名为DigiNotar 的证书授权机构被黑客入侵,成为了轰动一时的大新闻。这个事件之所以轰动,是因为它成为了现实中引发严重安全问题的典型事件,CA机构被入侵,所有的网民都可能被波及。而在DigiNotar之前几个月,另一家认证机构Comodo也遭到了入侵,生成了部分伪造的证书。在本文中,我会简要的介绍一下整件事,以及证书是如何工作的,作为IT管理者你该如何做才能确保你的企业和客户在类似情况下不受到波及。 首先你大概知道SSL连接过程是需要证书参与的。而这样的证书不应该是自己颁发给自己的,否则没人会相信这样的证书。自己签发的证书除了内部测试之类的用途外,基本没有可供实际使用的价值。如果一个企业的IT管理员需要建立一个安全的网站,首先需要建立一个被称为证书签发请求(CSR)的文件,里面包含了网站运行的相关信息,负责人和相关企业的信息和联系方式等内容。之后,管理员将这个请求发送给公共认可的证书颁发机构(CA)。 这个 CA机构,或者一般来说其下属的分支机构,会根据企业提交的请求,使用自己的私有密钥签署一份证书,经过验证后企业就有权拥有某个域名了。反过来,这些CA机构自己的证书则是由更高级的CA机构颁发的,这些证书都是被各大网站认可的。这就是所谓的证书等级。 图 A
由此问题就产生了。在我们每个人的浏览器中都储存了上百个受信的CA,每个CA都可以给任意网站颁发证书。这意味着,如果其中某个CA被黑客入侵,并将该CA的私有密钥公布,那么所有黑客都可以利用这个密钥为任何网站制作许可证,浏览器会将这些网站认定为合法有效。更糟糕的是,黑客可以利用这个密钥制作用于任何目的的证书,包括电子邮件签名,加密的VPN连接等。 但是得到了证书后该怎么攻击呢?黑客要想利用自己制作的证书,需要拦截网络数据,并将他们自己的伪造证书嵌入其中,也就是进行Man-in-the-Middle (MitM)中间人攻击。DigiNotar的案例中,黑客就是这样做的。伊朗政府的所有境外网络数据流都要通过代理服务器,而通过制造伪造的证书,黑客可以进入任何一个伊朗网民的Gmail账户,银行账户,或任何一个加密连接,因为黑客拥有受信的密钥,并可以为任何网站制作证书签发请求CSR。 针对这种威胁的实际解决方案很复杂,比如广泛使用在线安全认证协议(OSCP)或使用可信网络,同时这些方案都需要对网络设计进行较大的改动。目前为止,浏览器厂商的主要解决方案就是在事发后尽快推出针对某个CA的安全补丁。比如DigiNotar被攻击后,所有主流浏览器都进行了升级,在浏览器中保存的CA列表被更新,具体来说就是将被攻击的CA从受信的CA列表中去除。通过这个动作,那些由DigiNotar 签发证书的网站将不再被浏览器认作是合法可靠的网站。但这并不是最佳的解决方案,因为从CA被攻陷到浏览器发布相应补丁,中间历时可能有数个月。 减轻威胁 另一方面,我们有方法可以降低这种威胁对我们的影响。首先,假如你的公司所处的网络使用环境相对封闭,也就是员工们访问的网站都是比较特定的几个网站,比如美国的普通公司员工很少会访问位于中国或香港台湾的网站,那么就不需要让员工的浏览器信任来自中国或者香港台湾的CA所颁发的证书。作为管理员,你可以通过以下界面手动删除部分不常用的CA。 图 B
但是这种方法并不能完全避免此类攻击事件。所以浏览器才会有所谓的不良网址警报功能这样的扩展插件,确保网站的证书是正确的,并且网页中不存在恶意代码。比如FireFox的CertPatrol 扩展。当用户访问安全网站时,该扩展插件会记录下该网站的证书指纹。当用户下次再访问该站点时,扩展插件会对比前后两次的证书指纹。如果两者不一致,用户会看到警告信息。比如某个网站的证书还有六个月才过期,但是却突然更换了证书,这就很可疑了。又比如,如果你以前访问过的网站的证书是VeriSign签名的,但是现在重新访问时发现其证书是挪威某家不知名的CA签发的,那么就更可疑了。 Chrome 开发人员也开发出了用于Chrome 浏览器的扩展插件。Google下属的各个网站均采用某几个受信CA的签名证书,而Chrome也知道这些CA。比如某个伪装成Gmail信箱的网站使用了某个CA证书,但该CA与Chrome中记录的Gmail正常使用的CA不同,那么Chrome不允许用户访问该站点。因此,如果企业在办公环境下经常使用Google Apps,那么最好换成Chrome浏览器比较安全。 最后需要强调的是,此类安全问题并不是普通的可以通过补丁完全修复的问题。而要实施攻击,黑客也必须做出相当的努力,比如通过恶意软件入侵用户电脑,绕过防火墙保护,或者改变用户使用的DNS。这些方式的攻击都需要用户提前做好防范措施,比如企业可以在DNS服务器中为业务常用的网站设置静态IP地址,比如合作伙伴公司的网址,网络支付系统的网址等,这样做可以防止钓鱼网站利用伪造的CA证书欺骗浏览器和用户。 责编:孔维维 微信扫一扫实时了解行业动态 微信扫一扫分享本文给好友 著作权声明:畅享网文章著作权分属畅享网、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。 |
最新专题 |
|