你可能不知道你已经被运营商劫持了
大家想必一定遇到过这种小助(guang )手( gao ):
这个是移动,当然联通和电信也绝对不会放过你,而且网页中间也能加
还有PC端
其实,你看到的这些广告都是中途被别人暗地里加的,这个别人就是中国特色的合法的黑客-运营商
运营商劫持主要分两种:
一种叫DNS劫持,DNS劫持简单粗暴,会把你重新定位到其它网站,比如比如假设你想访问中国银行,正常的DNS 解析IP应该是中国银行的IP地址(假设是10.1.2.3),但是中间者修改这个DNS解析结果,返回用户一个非中国网银行的IP(假设是10.2.3.4),那么用户就会和这个非中国银行的网站建立连接并产生网络传输。钓鱼网站就是这么干的,钓鱼网站是一个仿冒网站,当你输入用户名、密码它会记住你网上银行的用户名、密码,并用于非法的勾当。你本来想存钱,但钱存到了贼的手里,因为这个违法性实在太大,所以监管会比较严,现在已经不多见了。
DNS劫持的主要预防方法是使用固定的DNS地址,比如8.8.8.8 114.114.114.114,比较简单
另外一种就是HTTP劫持了,一旦运营商发现你的是HTTP请求,就会在里面插入广告,你本来想买块巧克力,运营商确在里面放一坨屎 ,由于国内监管困难,所以我们经常会看到那么多辣眼睛的网站:大波与大腿齐飞,屎尿共低俗一色。 恶心的让人想吐,而且不仅是成人,小朋友的网站也无法避免,我们的下一代就在充斥着色情暴力的环境中成长。
他们是怎么干的呢?我们用一幅图来表示
图中小明本来想上coding.com网站的,经过运营商的时候发现小明发起了一个HTTP请求,大家知道HTTP请求是在网络中是明文传输,而且必须经过运营商,于是运营商就能往里买塞任何东西了。常见的塞JS代码,我们经常看到屏幕上方或者下方的广告就是这样的了;另外一种是它把正常网页的内容全部塞到一个iframe里面,这样广告屏蔽软件就无效了,一旦屏蔽会导致全站都被屏蔽,整个网站都不能活了。不仅给你插广告,而且插的你毫无办法,你胆敢屏蔽我么?难道你不想上网了!
以下是腾讯的某个网站的检测报告:
总体1500万pv的业务,一天竟然有200万的劫持上报,7.5个用户中,就接近有1个用户出现被劫持的情况。
可见,各种运营商(尤其是移动联通)的心是有多黑!胆子是有多大!
如何避免
1 无法避免,由于是运营商层次的劫持,并不是网站开发者放的,就比如你要回家,必须经过小区的大门,在大门就给你泼一身屎。所以,终端用户无法采取技术手段屏蔽。只有一个法子,投诉,注意哦,你投诉的不是你访问的网站,而是你的网络提供者,是当地的移动、联通电信。
技术手段也能起到一定的效果,但必须在自己的电脑上架设一个代理服务器....我们是一个神奇的国度,被抢劫只能自己想办法...具体方法在月光博客中有介绍,大家可以自行搜索下。但实在实在是不推荐,凭啥我访问正常的网站还要来架设代理服务器?难道人人都必须会写代码吗?
2 对于企业用户而言,其实也完全不必感到愤怒,因为不止是你的小网站,包括BAT, QQ都无法逃脱运营商的魔掌
防(zhēn)狼(cāo)术(dài)
对于网站来说,如果是从Baidu等搜索引擎来的,默认会被Baidu转码,然后给你赤裸裸的贴上广告,如果你的网站不想被剥去外衣、往赤裸的身体上贴广告,加上入下代码即可
HTTPS
HTTPS在应用层又加了SSL协议,会对数据进行加密,当然加密也是有代价的,不同于TCP/IP的三次握手,它需要七次握手,而且加上加密解密等因素,整个系统的性能大概会下降1/10,这样就能基本避免运营商劫持了,毕竟它运营商也会核算成本的,不会像gfw一样有100多层过滤 :)
加代码
如果没法使用HTTPS,就必须在网页中手动加入代码过滤了。具体的思路是网页在浏览器中加载完毕后用JavaScript代码检查所有的外链是否属于白名单,限于篇幅就不写在这里了。大家可以参考这个连接:
http://www.cnblogs.com/kenkof...