最近这段时间,CNNIC 不甘寂寞,又在 CA 领域,搞了点小动作。今天先来说一下,CNNIC又“坑蒙拐骗”了哪些主?
这件事情再次显示,互联网证书颁发机制公开透明的必要性。
谷歌英文博客原文:Maintaining digital certificate security
Mozilla英文博客原文:Revoking Trust in one CNNIC Intermediate Certificate
参考资料:中国互联网络信息中心(China Internet Network Information Center,缩写为CNNIC),是经中华人民共和国国务院主管部门批准,于1997年6月3日成立的互联网管理和服务机构。中国互联网络信息中心成立伊始,由中国科学院主管;2014年末,改由中央网络安全和信息化领导小组办公室、国家互联网信息办公室主管。
可能某些IT圈外的同学会问,Mozilla是嘛玩意?简单地说,“Mozilla 和 Firefox 的关系”就好比“微软和 Windows 的关系”。因此,Firefox 自带哪些 CA 根证书,是由 Mozilla 组织决定滴。
话说2009年初那会儿,CNNIC 里面的某个员工(liu_yan@cinic.cn)到 Mozilla 网站提交了一个申请:要求将 CNNIC 加入 Mozilla 的 CA 列表。此申请经过几个月的讨论。到了2009年底,审批获得通过。至此,CNNIC 正式成为 Mozilla 的 CA 之一(请看“Mozilla官方的CA列表”)。懂洋文的同学,请自行到“这里”看详细的申请过程。
因此,从 Firefox 的3.6版本开始,其内置的诸多根证书中,将会包含 CNNIC 提供的根证书。
说实在的,俺不清楚 CNNIC 是如何忽悠微软,让微软把它也加入到 Windows 内置的 CA 列表中的。不过这已经不重要了。现在,老流氓已经把它脏兮兮的触角,伸到了微软那儿。列位看官如若不信,可以去看“微软的CA列表”。
今后,如果你安装了微软新的操作系统,多半其已经包含了 CNNIC 的根证书;即便你一直使用老版本的 Windows,也可能在自动升级了某个Windows补丁之后,把CNNIC的根证书带到你的电脑中。
除了 Mozilla 和微软,还有一个组织也被 CNNIC 牵连了,那就是 Entrust ——国外一家比较老牌的 CA。正是由于该 CA 比较老牌,因此 Windows 系统(至少包括 Win2000 之后的版本)中以及 Firefox 中,都已经内置了它的根证书。
老流氓大概是花了些银子,于是该CA提供的根证书就信任了CNNIC制作的某个SSL证书。
到了2010年下半年,Entrust 大概也意识到 CNNIC 的名声太臭,就解除了跟 CNNIC 的信任关系。所以,如今【新的】Entrust 证书,已经不再信任 CNNIC 的 SSL 证书了。如果你的浏览器是新版本或者 Windows 系统更新过新的补丁,其内置的 Entrust 证书应该是安全的,不用清理了。如果你吃不准Windows系统或浏览器内置的Entrust证书是否安全,请根据本文后续章节“★如何确认门户已经清理干净”介绍的方法判断。
用浏览器访问一下 https://www.cnnic.cn 记得用 HTTPS 协议哦,如果浏览器没有报告证书有问题,那么你很有可能受到CA证书的中间人攻击了
那电脑中有了 CNNIC 的证书,会出现啥鸟事捏?俺大概说一下。
中间人攻击的风险,是最危险的,也是最经常被提及滴。
CA 证书对于 https 协议的重要性(可以防止攻击者伪造虚假网站)。既然 CNNIC 已经成为合法的 CA,那它就能堂而皇之地制作并发布CA证书。然后捏,再配合GFW进行DNS的域名污染。那GFW就可以轻松搞定任何网站的HTTPS加密传输。
可能有些小朋友心里会犯嘀咕:GFW 会有这么坏吗?GFW 和 CNNIC 一起进行中间人攻击(一个负责在 DNS 上做手脚、另一个负责伪造 CA 证书),简直是天生一对、黄金搭档!
另外一个大伙儿不太关注的风险,是关于 ActiveX 控件的问题。前几年,很多恶意软件(包括流氓软件、木马)都是通过 IE 控件的技术,安装到大伙儿的电脑上。后来微软加强了对 ActiveX 控件的验证:在 IE 的默认设置下,对于【没有】数字签名的 ActiveX 控件,默认是拒绝安装滴;而对于有数字签名的控件,则会给出提示。
因此,老流氓 CNNIC 可以很轻松地给自己的 ActiveX 控件制作数字证书。然后把控件放到网上。某些粗心的电脑用户看到IE跳出的安装控件提示,多半没细看,直接就点了“确定”按钮。
其实网上关于如何去掉证书的操作指南,多如牛毛,所以俺就简单说一下。
有些浏览器(IE、Chrome、Safari)使用的是操作系统的证书体系。这种情况下,你需要把 CNNIC 证书从操作系统的证书体系中去掉。还有些浏览器(比如Firefox、Opera)是自己带了一套证书体系。你只要在其配置界面,把不要的证书去除即可。下面分不同的浏览器,不同的操作系统,分别介绍。
对于使用 Windows 下的 IE 或 Chrome 或 Safari 浏览器,则需要执行如下步骤:
注:上述操作仅对当前用户生效。如果你的 Windows 系统中有多个常用的用户帐号,要对每一个用户进行上述设置。
对于使用 Mac OS X下的 Safari 或 Chrome 浏览器,则需要执行如下步骤:
请到“实用工具”=>“钥匙串访问”=>“系统根证书”=>“证书”,找到 CNNIC 的证书并双击,改为“永不信任”。
注:如果你的界面是洋文,其操作方式也八九不离十。俺就不再啰嗦了。
对于 Debian 或 Ubuntu 系统,以管理员权限进行如下操作:
方法1:
运行命令:dpkg-reconfigure ca-certificates 会出现一个图形界面,把CNNIC证书不选,并确认。
方法2:
编辑 /etc/ca-certificates.conf 文件,把 CNNIC 证书对应的行删除或注释掉。然后用命令 update-ca-certificates 使之生效。
注:对于其它 Linux 发行版本,也有类似操作,俺就不再啰嗦了。
不论是在哪个操作系统下,只要你用的是 Firefox 浏览器(它的证书体系独立于操作系统的),则需要执行如下步骤:
注:如果某个证书是 Firefox 自带的,则删除之后,下次再打开该对话框,此证书还在。不过不要紧,它的所有“信任设置”,都已经被清空了。
不论是在哪个操作系统下,只要你用的是 Opera 浏览器(它的证书体系独立于操作系统的),则需要执行如下步骤:
为了保险起见,在完成上述的清除工作之后,你需要用浏览器访问一下 https://www.cnnic.cn 记得用 HTTPS 协议哦。
如果你的浏览器报告该网站的证书有问题,那恭喜你,你的门户清理干净了
如果该网站的页面顺利打开,那你就要重新检查一下,看上述操作是否出了差错。
有些国内网站已经开始使用 CNNIC 的证书,目前已经知道的有163邮箱(真鄙视网易)。但是甭担心。去除证书后,浏览器在访问上述网站时,会给出一个证书的安全警告。你只需添加一个安全例外即可。
另外列举一些相关的资料给大伙儿参考:
最最最严重安全警告 此文是 AutoProxy 的作者 WCM 亲自写的。09年就已经在网上广为流传。
CNNIC 我不信任你——从受信任的根证书里赶走 CNNIC 这篇文章也被多处转贴
noCNNIC 已经有热心网友搞了一个自动清除工具,俺还没空去试验。
您可能也喜欢: |
xss攻击入门 |
[安全科普]SQL注入与XSS攻击 |
跨浏览器基础事件,浏览器检测,判断浏览器的名称、版本号、操作系统 |
危险:存在恶意软件! |
MyEnTunnel使用私钥证书登录 |
无觅 |