据说某些地区现在投诉工信部都拿不到公网IP了,据说某些地区打电话给电信也无法解决被劫持的问题。还有很多据说,但是我始终相信这些据说都是真实存在的,因为我现在正遭受着这种痛苦= =
前几天发了一篇文章说的是我的站点域名不知道为什么会莫名其妙的DNS会被解析到我另外一台VPSIP上。就在今天这种情况又出现了两次。。。然后我忍无可忍了,决定抓包一探究竟,结果还是没找到原因,但是让我“歪打正着”?知道现在电信玩劫持是有多么疯狂= =所以,先写一下有关电信劫持的各种手段和防护方法吧。。。
本来抓包打算用burpsuite的,结果发现电脑之前重装了系统这玩意不知道是没来得及下载还是忘记丢哪里了,所以就只能随便在网上先下个抓包的工具凑合一下了。主要是当时时间紧迫,我的博客DNS解析正错乱着呢,我怕找到burpsuite后就恢复正常了,那抓包也没意义了不是= =
话不多说,先看第一张图:
当时我看到这张图的时候,脑壳是青痛的,这nmlgb是要有多疯狂?劫持的请求数竟然比正常站点响应的请求多了不知道多少倍。。。
劫持的js如下:
http://222.186.61.95:9988/main.js?info_aid=180&info_sp=4201&info_spid=sohu&info_uid=YwZVLWZ0GS8WQlMoFwVvLxR7Ul9qcGlYZwYhXBIFE19jcVJbZAQZWWRzUA==&info_sda_man=Y3FSW2QEGVlkc1A=&info_src=0
话不多说,卡巴斯基新建一个规则,封之~
这样的话,本机电脑就访问不了这个扎心的地址了:
虽然这种方法依然不能杜绝运营商把代码插到网站页面里面,但是好歹可以让插进来的代码失效,也就是本来这段代码插进来要给你展示广告的,但是现在你把这个地址禁止访问了,所以广告自然也就不能显示出来了。
让我们再来看一看现在电信是怎么“伪”劫持HTTPS的。
所谓“伪”劫持就是,当某个网站启用了SSL,但是网站并没有开启HSTS(现在大部分站点也不会开这个)。此时电信运营商可以在301跳转的时候进行劫持。
就一般用户而言,比如你要打开京东,我相信一个普通网民他不会专业到去在浏览器里面这样输入京东的域名:
https://jd.com、https://www.jd.com
多数普通网民都只会这样输入:
jd.com、www.jd.com
这点毋庸置疑吧,然后又因为HSTS在当前互联网大环境并不流行,百分之90的站点通常都只会将http请求301重定向到https。此时就给了运营商机会,可谓无孔不入。就是这么短短的0.几秒301时间,运营商足够给你插一个框架进来,就比如这样:
上面这张图说明了什么?请注意凡是内核为chromium的浏览器,一个像京东这样的网页正常加载后右键应该是这样子的:
但很明显,第一张图我们右键后chromium会告诉我们这其实根本就不是原来京东的页面,这只是电信运营商给你展示的一个框架页面,在这个框架内运营商想给你插什么代码就插什么代码。
但京东明明访问的时候是强制跳转HTTPS的啊?运营商是怎么做到的?就是我之前所说的,301跳转的时候就已经给你劫持了!给你造成了一个假象而已!
还有一个很明显的特征,某些被劫持后的页面,不能正常显示网页标题,就比如这样:
当然京东的SSL证书肯定也是不会显示的,因为你压根就没访问到京东的HTTPS页面。
看到这里,我想看官们就基本明白了吧~
写在最后:
虽然并没有解决我的网站DNS解析错误的问题,但是现在貌似我有一点头绪了,我那台毛子机器的主机名设置成了lala.im,而主机商有RDNS,可能是我的本地电信DNS傻逼了还是怎么了,有时候会错误的将毛子的RDNS当成解析IP。。。
加油
大佬,可以写一个这个磁力链接搭建的教程嘛https://github.com/wenguonideshou/zsky
可以搞个黑名单,大家都可以用
这估计搞不了,每个地区的劫持地址都不一样,还有这个地址电信那边的人会经常变动。。。
https anywhere 我chorme裝了這樣一個插件,還不錯
好的,有空我也试试。