寸土必争!把CNNIC的假证书扫地出门

来源:http://www.librehat.info/04/wipe-out_cnnic-ca/

为什么要将CNNIC扫地出门,事情真的有这么严重?

网上传输的任何信息都有可能被恶意截获。尽管如此,我们仍然在网上保存着很多重要的资料,比如私人邮件、银行交易。这是因为,有一个叫着 SSL/TLS/HTTPS 的东西在保障我们的信息安全,它将我们和网站服务器的通信加密起来。

如果网站觉得它的用户资料很敏感,打算使用 SSL/TLS/HTTPS 加密,必须先向有 CA (Certificate Authority) 权限的公司/组织申请一个证书。有 CA 权限的公司/组织都是经过全球审核,值得信赖的。

发生了什么事

最近,CNNIC——对,就是那个臭名昭著的利用系统漏洞发布流氓软件的、就是那个使劲忽悠 CN 域名又突然停止域名解析的 CNNIC (中国互联网络信息中心),它——偷偷地获得了 CA 权限!在所有中文用户被隐瞒的情况下!

意味着什么

意味着 CNNIC 可以随意造一个假的证书给任何网站,替换网站真正的证书,从而盗取我们的任何资料!

这就是传说中的 SSL MITM 攻击。以前这个攻击不重要是因为攻击的证书是假的,浏览器会告诉我们真相;现在,因为 CNNIC 有了 CA 权限,浏览器对它的证书完全信任,不会给我们任何警告,即使是造假的证书!

你信任 CNNIC (中国互联网络信息中心) 吗?你相信它有了权限,会安守本分,不会偷偷地干坏事吗?
我对此有3个疑问:

  1. 某 party 对 GMail 兴趣浓厚,GFW 苦练 SSL 内功多年,无大进展。如今有了 CA,若 GFW 令下,CNNIC 敢不从否?
  2. CNNIC 当年利用所谓官方头衔,制流氓软件祸害网民。如今有了 CA,如何相信它不会故伎重演?
  3. 为了得到指定网站的合法证书,其它流氓公司抛出钱权交易,面对诱惑,CNNIC 是否有足够的职业操守?

影响范围

基本上所有浏览器的所有用户均受影响!

目前的解决方案:

Linux平台下删除CNNIC证书:

关于Linux的CA证书管理软件;http://code.google.com/p/chromium/wiki/LinuxCertManagement ,各大发行版可以快速的安装这个CA证书管理软件:

Ubuntu:

sudo apt-get install libnss3-tools

Fedora:

su -c "yum install nss-tools"

Gentoo:

su -c "echo 'dev-libs/nss utils' >> /etc/portage/package.use && emerge dev-libs/nss"

OpenSUSE:

sudo zypper install mozilla-nss-tools

安装完成后,在终端下运行这条命令可以显示部分证书:

(在Gentoo下,要将下面的几条命令中的certutil命令改为nsscertutil)

certutil -d sql:$HOME/.pki/nssdb-L

一般情况下会出现与CNNIC有关的条目,这个时候执行下面这条命令删除CNNIC证书:

certutil -d sql:$HOME/.pki/nssdb-D -n "CNNIC ROOT"

其中的CNNIC ROOT视列出的名字而定。

如果没有显示CNNIC有关的条目的话,我是这样让其显形的:

Chromium浏览器设置页面->高级选项->管理证书,点击授权中心,找到CNNIC,选择CNNIC ROOT,点击修改,将所有的勾都取消掉(即不信任该中心的证书),再次按照上面的方法,这个时候应该会列出CNNIC的证书了,删除掉CNNIC ROOT吧!重启Chromium浏览器,打开http://www.enum.cn/en/看是不是显示不安全链接了,如果还是安全的链接说明删除失败了。

Firefox火狐狸浏览器的设置方法(来源):

  • 菜单栏:工具/编辑->首选项->高级->加密->查看证书->证书机构(Authorites)
  • 这是一个很长的列表,按照字母顺序,你应该能找到一个叫着 “CNNIC ROOT” 的记录,就是这个东西,告诉 Firefox,我们不信任它!
  • 选中 CNNIC ROOT,点击下面的“编辑”按钮,弹出一个框,应该有3个选项,把所有选项的勾都去掉!保存。
  • 还没有完,狡兔有三窟。
  • 接着往下找,有一个叫着 Entrust.net 的组,这个组里应该有一个 “CNNIC SSL” (如果没有,访问一下 这个网站 就有了)
  • 别急着下手,这回情况不一样,这个证书是 Entrust 签名的。我们信任 Entrust,Entrust 说它信任 CNNIC,所以我们就被迫信任 CNNIC SSL 了。找到 “Entrust.net Secure Server Certification Authority” 这一条,同上面一样,把3个选项的勾都去掉,保存(提示:取消了对 Entrust 的信任以后,可能会没法打开它签名的某些正常网站。至于哪个网站用了它的签名,随便试了一下,没找到例子)。
  • 最后,让我们验证一下。重启 Firefox,打开 这个 和 这个 网站,如果Firefox 对这两个网站都给出了安全警告,而非正常浏览,恭喜,您已经摆脱了 CNNIC CA 的安全威胁!

Windows下删除CNNIC证书的方法(详细

  1. https://dl.dropbox.com/u/1356279/proxys/CNNIC.7z 下载CNNIC的证书
  2. 运行 certmgr.msc ,展开” 不受信任的证书 (Untrusted Certificates) “,右键单击其下” 证书 (Certificates) “项,在” 所有任务 (All Tasks) “子菜单下单击” 导入 (Import) … “将CNNIC的证书导入到不信任的证书机构。
  3. 受信任的证书颁发机构,然后,cnnic root双击,然后,详细信息,然后 编辑属性, 最后下狠手,停用这个证书的所有目的!
  4. Windows平台的Chrome/Chromium/Firefox可以参考Linux平台下的禁用方法。
  5. 可以参考这篇文章:http://blog.lzzxt.com/394

Mac OS X下删除CNNIC证书的方法(`需`’翻`’墙`)


—————————————————————————————————————————

需要翻墙利器? 请安装Wuala,查找和添加gfwblog为好友,就可高速下载翻墙软件,或访问http://tinyurl.com/gfwblog直接下载。

推特用户请点击这里免翻墙上推特

请点击这里下载翻墙软件

更多翻墙方法请发电邮(最好用Gmail)到:fanqiang70ma@gmail.com

请阅读和关注中国数字时代、翻墙技术博客GFW BLOG(免翻墙)

请使用Google Reader订阅中国数字时代中文版http://chinadigitaltimes.net/chinese/feed),阅读最有价值的中文信息;以及GFW BLOG(功夫网与翻墙)http://feeds2.feedburner.com/chinagfwblog,获取最新翻墙工具和翻墙技巧信息。


发表评论