GitHub访问速记
原始地址:https://wp.me/pbhQMi-22
最后更新于
原始地址:https://wp.me/pbhQMi-22
最后更新于
不知道我的消息够不够灵通,在昨晚我了解到GitHub Pages疑似遭到中间人攻击。我打开自己的浏览器先访问了GitHub,发现一切正常,然后再打开Pages,就遇到了以下问题:
在这里,我想先说明一下,很多人说HTTPS没用,这都能被挡住。事实上,这就是HTTPS的作用与魅力:它能阻止不安全的连接。如果没有这项机制,你可能甚至不会察觉到网络连接被劫持了。
当我检查证书的时候,我发现了这个证书跟GitHub官方的确丝毫没有联系,因此没有什么浏览器会选择信任它。
这个证书是一个自签证书,给主机“server”签发。这看起来只是一个给局域网或是内网使用的证书,却不知道为什么流到了互联网,而且还是被用于劫持一个大网站!
很多人都查看了CSR信息,发现了该证书请求邮箱是一个QQ邮箱,而他的昵称为“心即灵山”,这个QQ想必很多人也有尝试接触过。
我个人认为这个证书更像是一个替罪羔羊,并不能指示任何一个幕后主使者,而我也不支持任何骚扰这个人的行为。于是我进一步检测这个问题:
我通过NSLookUp查询GitHub多个网站的地址,并将IP进行搜索,发现是官方IP无误,排除DNS污染等常用GFW操作的可能;
Pages一直都没有强制HTTPS,因此在稍晚的时候,多数人通过HTTP即可访问几乎所有Pages(在通过关键词审查的前提下),因此我合理猜测80端口和443端口被分开路由了,或者是……?
由于HTTP是明文传输,我合理猜测HTTP也有可能被中间人攻击,只是用户无法察觉。
因为DH trl,根本不懂什么网络技术,上述猜想根本不会去验证,呜呜呜。
今天早上我登入知乎查看了一下GitHub的主题(Luv Letter的回答),然后发现了一些结论,同时也解决了我的一些疑惑:
这个情况的确有且仅有在国内发生;
大家普遍同意那个不明证书(里面提到的QQ号)和幕后主使没有太大关联(就是“替罪羔羊”);
DNS相关部分运作正常,根据网友的进一步检测(我太弱了,呜呜呜),证实HTTP是正常的(没有中间人攻击),而443端口的流量则被转发到不同的路由;
攻击模式确认就是中间人攻击(MITM)无误。
昨晚我还刻意测试了一下GitHub官网,在那个时候它还能被访问。但是今天早上我起床后再试了一下——
Surprise!相同的手法,相同的结果,相同的阴谋!
没有人想要被网络搞暧昧。
截止到发布前,GitHub的各项服务已经能在中国大陆大部分地区正常访问,少数地区仍存在偶尔的劫持问题,长期禁止GitHub的地区不在本文的讨论范围内。