首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Chrome 66将导致国内网站大面积无法正常访问,谨慎更新

阅读全文预计耗时7分钟

笔者作为一个业余的开发者以及Chrome(谷歌浏览器)的忠实用户一直在使用Chrome的Dev(开发者)分支版本。这个分支是专供开发者和一些喜欢尝试新鲜功能的用户使用的。

最近Chrome也是新更新了Chrome 66版本,但是在更新这个版本之后笔者发现很多国内的知名网站都出现了无法访问的情况,甚至连微信公众号的后台都打不开了。

随后笔者发现这个情况是由HTTPS证书错误造成的,有的网页本身的HTTPS证书是可用的,但是其内链的资源(包括CSS、JS)等使用的证书发生了错误导致网页无法正常加载,而有的网页则是本身HTTPS证书就存在问题,例如网易考拉海购、战网等。

经过笔者的一番调查发现这些在更新后突然打不开的网站都有一个共性,他们都使用了来自GeoTrust的HTTPS证书。也就是说在Chrome 66中GeoTrust的证书被列为了不信任,导致Chrome无法正常访问使用了GeoTrust证书的这些网站。

至于为什么会出现这个问题,就要追溯到去年。

去年三月根据Google的调查,全球最大的CA赛门铁克错误地签发了超过三万多张SSL证书,这些证书都是未经同意擅自签发的,而且这些证书中有一些是给一些不存在的域名签发的,还有一部分是Google的域名,这样的证书存在巨大的安全隐患,可能被恶意利用做一些黑客操作。

Google作为一个大厂,也作为世界上目前最主流的浏览器Chrome的开发商,决定正面硬怼赛门铁克。在去年7月Google决定在自家的产品中将赛门铁克的SSL证书列为不信任,并在后期全面不信任来自赛门铁克的SSL证书。

由于在Google眼里赛门铁克在对已签发证书的监管和对签发证书时的审核是存在问题的,所以Google决定分三步对赛门铁克错误签发证书的行为进行惩罚,其中第二步就是在Chrome 66中对来自赛门铁克的证书进行安全报错。

事实证明这一功能确实实装在了Chrome 66中,有的网站我们可以通过错误页面上的“继续访问”正常打开,但是有的网站由于内链静态资源使用了会报安全错误的证书导致网站整体不能正常访问或显示。

GeoTrust、Thawte、RapidSSL都受到了此次Chrome改动的影响,所以这些CA签发的证书也会引起安全错误。

根据这篇文章的说法,Google会在今年下半年发布的Chrome 70中完全不信任来自赛门铁克的证书,届时通过Chrome浏览器所有使用赛门铁克证书的网站都将无法正常访问。

如果你使用的Chrome和笔者一样是Chrome的Dev分支最新版本(即Chrome 66),为了能够正常访问国内的这些网站,笔者建议你将版本降级到Chrome 65(旧版Dev或最新的Beta分支版本)。

由于Chrome本质上是绿色软件,解压就能使用,所以理论上Chrome是允许多版本共存的,但是由于Chrome的安装器没有UI,其本身的安装逻辑不允许非Canary通道版本多版本共存,所以想要达到多版本共存需要进行以下操作:

首先我们先下载好旧版Chrome的安装包,执行安装之后不要急着打开Chrome,我们先使用资源管理器打开Chrome的安装目录,默认是C:\Users\[用户名]\AppData\Local\Google\Chrome\Application

在这个目录下我们找到chrome.exe,将这个文件重命名为其他名字,例如"new_chrome.exe"。

之后我们找到旧版Chrome的安装包,右键单击,将这个安装包解压缩。目前大家常用的压缩软件都可以解压这个安装包,在这里笔者推荐使用7-zip和WinRAR这两款压缩软件。

解压之后我们能得到一个名为“chrome.7z”的文件,将其解压到一个文件夹内,在文件夹中有一个名为“Chrome-bin”的文件夹,在其中我们可以找到"Chrome.exe"。

我们将这个Chrome.exe复制到之前的Chrome安装目录,打开之后Chrome就是旧版的Chrome了,而新版的Chrome则可以使用new_chrome.exe启动。

当然你直接通过解压缩+复制的方法把chrome.7z解压缩出来的全部内容复制到安装目录或是硬盘的任意位置也是可以成功运行Chrome的。

需要注意的是锁定在任务栏上的Chrome快捷方式即使你更改了Chrome可执行文件的名字,它仍然也会启动新版的Chrome。但是当你启动旧Chrome的时候仍然占用的是任务栏上的这一格,这可能是Win10的一个Bug或是一个特别的特性。

对于这个问题我们只需要先解除Chrome的任务栏锁定,之后运行旧版Chrome,再将其锁定到任务栏,之后我们再通过任务栏启动Chrome的时候启动的就是旧版Chrome了。

在Chrome 65中使用GeoTrust等SSL证书的网站仍然可以正常访问。

根据笔者的实测这次的改动只在Chrome中存在,火狐并没有跟随谷歌一起禁用掉赛门铁克系的SSL证书。在最新版的Firefox Devloper Edition中相关网站仍然可以正常访问。

如果国内的这些网站不更换正在使用的GeoTrust等CA的SSL证书,那么这将意味着在未来我们的Chrome将停留在Chrome 65一段时间。

Google这一次虽然是打着安全的旗号在做这个事情,但是实际上Google本身不信任赛门铁克证书的原因更多的可能是因为赛门铁克擅自签发了Google旗下一些域名的HTTPS证书,这些证书可能会威胁到Google的信息安全或是某些方面的利益。

Google毕竟不作恶,但是其本质还是一家商业企业,但是没办法,以Chrome在浏览器市场的占有率,Google就是这么有话语权。至于这件事是不是Google在作恶,就是仁者见仁智者见智了。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180222G103AB00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券