Total Pageviews

Wednesday, 12 July 2017

火狐准备完全取消对沃通、Startcom 和 CNNIC 的信任

“本星期 Google 宣布完全取消对沃通和 StartCom 的信任。现在火狐也跟进,准备完全取消对沃通, Startcom 和 CNNIC 的信任。火狐,Google 和苹果已经不信任沃通, Startcom 和 CNNIC 新颁发的证书,但是已经颁发的证书目前已白名单的形式信任。当 Google 和火狐完全取消沃通, Startcom 和 CNNIC 证书后,所有使用这些证书的网站都会报错,无法访问。Google 和火狐都督促使用以上证书的网站,“立即” 更换证书。”

    编程随想:老流氓 CNNIC 的接班人——聊聊“沃通/WoSign”的那些破事儿

      前一篇博文通告了“评论区的新功能——发帖不刷页面”。该功能上线后,发现了几个严重 Bug,大约在9月3日都已经解决了。

      在此,向那些帮忙测试帮忙反馈问题的热心读者,表示衷心感谢 :) 俺这个博客走到今天,离不开许许多多热心读者的支持。

      自从上线了这个功能,俺处理博文评论(尤其是评论很多的博文),效率至少提升了一个数量级。效率提升之后,俺最大的一个感慨是:早就该实现这个功能了 :(

      另外,

      为了实现此次的新功能,俺已经对 Blogspot 的评论区界面作了很多改动。所以俺考虑,干脆把 Blogspot 的评论区界面全部替换为俺自己的代码。如果这个能搞定,今后就无需在 Blogspot 评论系统的代码中进行修修补补了。初步计划在“十一假期”来搞这个改造。

      下面言归正传。

      最近两周,看到了很多关于沃通的丑闻,再加上也有热心读者建议俺聊聊此事。今天特来发一篇抹黑沃通的博文 :)

    ★“沃通”是个啥玩意儿?

      “沃通”,洋名叫做“WoSign”。简而言之,是咱们天朝的一家数字证书颁发机构。(“数字证书颁发机构”,洋文简称“CA”。为了打字省力,本文以下部分用 CA 来称呼“数字证书颁发机构”)

      为了让大伙儿更加了解这家 CA 的底细,俺稍微说一下该机构的背景。

      目前的 CEO 叫做王高华,经过某些网友的人肉搜索,此人曾经担任过【深圳市信息网络中心总工程师】。看样子是从体制内出来滴。

      “沃通”是由“王高华、张千夫、某个奇虎360全资子公司”三方一起合资成立。这三方,据说是“奇虎360”占大头。这个“奇虎360”,也就是出品“360安全卫士/360杀毒”那家公司。它的老板周鸿祎,那可是流氓中的战斗机。当年就是靠做流氓软件(臭名昭著的“3721上网助手”)而发家的。大伙儿可别小瞧了他。

    ★“CA 的重要性”以及“不靠谱 CA 的危险性”

      (对 CA 及证书不太了解的同学,建议先看教程《数字证书及 CA 的扫盲介绍》)

      想必大伙儿都听说过 HTTPS 协议(也就是“加密的 HTTP”协议)。如果你正在看俺博客的页面,你只需要瞄一眼浏览器地址栏,这篇博文的网址就是以 https:// 开头滴。

      HTTPS 的加密,需要依赖于 CA 证书;而 CA 证书就是由 CA 颁发滴。

      说到这儿,头脑清楚滴读者就已经意识到 CA 有多么重要了。

      通俗地说,如果某个 CA 不靠谱,那么该 CA 颁发的证书也就不靠谱;如果某个网站使用了这个不靠谱的证书来部署网站的 HTTPS 加密传输,那么这个加密传输也跟着不靠谱了。当 HTTPS 的传输不靠谱,就意味着——加密流量有可能被【偷窥】甚至有可能被【篡改】。

      (如果你想对 HTTPS 协议有更多的了解,可以看俺的另一个教程《扫盲 HTTPS 和 SSL/TLS 协议》)

    ★为啥说“沃通是非常【不】靠谱的 CA”?

      刚才介绍完背景,可能已经有人感觉到沃通是有问题滴。但是俺不能凭空污人清白,下面咱们要来摆事实,讲道理——介绍一下近期曝光的【沃通丑闻】。

      话说有个英国程序员 Gervase Markham,他无意中发现了沃通的一些严重问题,并在Mozilla 的安全讨论组进行曝光(帖子链接在“这里”)。

      他至少提到了三个与沃通有关的严重问题:

      问题1

      沃通 CA 允许证书申请者选择任意端口进行验证,违反了限制端口和路径使用的规定;

      编程随想点评:这点说明沃通的“合规性”不够,相比后面两个,这已经是小问题了。

      问题2

      证书申请者如果能证明控制了某个子域名,那么就能获得根域名的证书;

      已经研究人员利用沃通的这个失误,获得了一张沃通签发的【GitHub 网站主域名的证书】。由于此事很严重,连新浪都报道了(链接在“这里”)

      编程随想点评:一个号称全国最大的 CA,竟然犯如此低级的错误,你觉得这家 CA 能靠谱吗?

      问题3

      被沃通并购的 StartCom(也是一家 CA),被发现允许对证书的签署日期进行【倒填】。关于这个“倒填日期”的问题,俺稍微解释一下:

      由于如今的运算能力越来越强,SHA1 散列算法的可靠性越来越不够了。一些主流的浏览器,如果发现2016元旦之后签署的 CA 证书,依然采用 SHA1,会给出警告。

      沃通的问题在于,它为了帮证书申请人规避浏览器警告,故意把签署日期伪造成2015年底。

      编程随想点评:CA 象征着【权威认证】机构。如果一家 CA 去玩这种伪造日期的花样,它还有啥节操可言?

      问题4

      除了英国程序员曝光的那3个问题,再来说一下其他人曝光的问题——

      沃通在2015年4月9日到4月14日之间,签发了392个【相同序列号】的证书。

      编程随想点评:证书的序列号要确保唯一性。沃通竟然在短短5天之内,签发了几百个相同序列号的证书,足见其内部管理有严重问题。

      其它问题

      以上列举的4件事情,仅仅是已经曝光的丑闻的一部分。甚至可能是冰山一角。Mozilla 在其官网列出了沃通目前已经曝光的丑闻(链接在“这里”)。

    ★“沃通”与“StartCom”的关系

      前面聊沃通的家丑,提到了 StartCom,下面俺来介绍一下两者的关系。先看几篇报道:

    《沃通被指秘密收购了StartCom @ solidot》

    《沃通(WoSign)被指秘密收购以色列CA:StartCom @ cnBeta》

    《韓國資安研究員踢爆:以色列StartSSL憑證主機竟在奇虎360中國機房 @ iThome》

      沃通作为商业机构,并购其它 CA,本来无可厚非的。但是这几篇报道中都提到了一个定语——【秘密】收购。

      并购国外知名的 CA,本来是很风光的事情,沃通为啥要藏着掖着?这不禁让俺想起了抗日影片中的经典台词——悄悄滴进村,打枪滴不要。

      沃通是天朝的 CA,其客户主要在国内;而 StartCom 是全球有名的 CA,客户遍布全世界。俺不禁邪恶地猜想:或许沃通想利用 StartCom 来干一些不为人知的勾当。如果真是这样的话,那曾经知名的 StartCom,就跟“沃通”一样,彻底不可信了。

    ★“沃通”的其它破事儿

      聊完“沃通与 StartCom 的关系”,再顺便提一下“沃通”的另一个破事儿——采用“连哄带吓”的招数,诱骗用户放弃国外 CA(Let’s Encrypt)颁发的证书,改用沃通的证书。

      下面是某网友曝光的邮件截屏。

    850524590_13610016077738170135-902x1024

      顺便说一下:

      被沃通诋毁的【Let’s Encrypt】,恰恰是一个比较靠谱的 CA,而且它【不是】商业机构,而是以【公益】的方式普及 CA 证书。向它提供赞助的包括:电子前哨基金会/EFF,Mozilla 基金会,Linux 基金会,思科,Akamai……

      关于它的更多介绍可以参见维基百科“这里”。

    ★据说 Mozilla 准备采取行动了

      (Mozilla 也就是开发火狐浏览器的非盈利组织)

      由于沃通的家丑外扬,已经有很多热心网友要求 Mozilla 组织对沃通采取行动。所谓的“采取行动”,也就是把 Firefox 中默认内置的“沃通根证书”去掉。

      假如这么干了之后,那么 Firefox 默认情况下就不再信任“沃通的根证书”,同时也不再信任“由沃通根证书签发的下级证书”。考虑到 Firefox 的市场份额,这对沃通将是一个打击。而且 Google 的 Chrome 也可能会跟进。

    ★大伙儿的应对策略

      虽说 Mozilla 已经开始警告沃通,但是大伙儿也不可太乐观。

      6年前(2010),俺曾经发文狠批老流氓 CNNIC,并号召大伙儿删除它的根证书。那之后又过了5年(2015),Mozilla 的 Firefox、Google 的 Android、还有苹果的 Mac OS,才终于把 CNNIC 根证书从信任列表中除掉了(由于被几大厂商拉黑,如今 CNNIC 官网也【不用】自己的证书,改用国外的证书,很讽刺吧)

      如果 Mozilla、Google、微软这些浏览器厂商或操作系统厂商迟迟不采取行动,那么大伙儿就要靠自己动手了。

      做法很简单——把不靠谱的 CA 证书禁用。具体的操作细节,可以参考俺6年前(2010)的博文《CNNIC 证书的危害及各种清除方法》。当年那篇讲的是如何删除 CNNIC 证书,你只需要依葫芦画瓢就行了。

      需要提醒一下:

      你不光要禁用“沃通的所有证书”,还要禁用“StartCom 的所有证书”——前面说了,StartCom 已经被沃通并购。

      由于沃通的根证书在国内用的比较多,当你禁用了沃通证书之后,访问某些国内网站,浏览器会给出证书警告。如果你嫌每次警告太麻烦,并且你确定该网站是可信的,你只需把当前网站的证书加入可信状态就可以了(沃通根证书依然保持禁用状态)

No comments:

Post a Comment

Note: only a member of this blog may post a comment.