dns劫持 dns污染 http劫持

DNS劫持     DNS( Domain Name System)是“域名系统”
通过劫持了DNS服务器,通过某些手段取得某域名的解析记录控制权,进而修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址,从而实现窃取资料或者破坏原有正常服务的目的。DNS劫持通过篡改DNS服务器上的数据返回给用户一个错误的查询结果来实现的。
DNS劫持症状:在某些地区的用户在成功连接宽带后,首次打开任何页面都指向ISP提供的“电信互联星空”、“网通黄页广告”等内容页面。还有就是曾经出现过用户访问Google域名的时候出现了百度的网站。这些都属于DNS劫持。
当输入google.com这个网址的时候,看到的网站却是百度的首页。


http劫持
在用户的客户端与其要访问的服务器经过网络协议协调后,二者之间建立了一条专用的数据通道,用户端程序在系统中开放指定网络端口用于接收数据报文,服务器端将全部数据按指定网络协议规则进行分解打包,形成连续数据报文。
用户端接收到全部报文后,按照协议标准来解包组合获得完整的网络数据。其中传输过程中的每一个数据包都有特定的标签,表示其来源、携带的数据属性以及要到何处,所有的数据包经过网络路径中ISP的路由器传输接力后,最终到达目的地,也就是客户端。
HTTP劫持是在使用者与其目的网络服务所建立的专用数据通道中,监视特定数据信息,提示当满足设定的条件时,就会在正常的数据流中插入精心设计的网络数据报文,目的是让用户端程序解释“错误”的数据,并以弹出新窗口的形式在使用者界面展示宣传性广告或者直接显示某网站的内容。


DNS污染:
指的是有人通过恶意伪造身份、利用漏洞等方式,向用户或者其他DNS服务器提供虚假的DNS记录。由于DNS记录存在一个生存期(TTL),在生存期内,DNS保存在缓存中,除非经过了大于一个TTL的时间,或者经手工刷新DNS缓存,虚假的记录会一直存在下去,并且如果污染了DNS服务器,这种污染还具有传染性。DNS污染具有暂时性,过了TTL周期,如果不进行再污染,污染就会消失。
 
DNS记录污染同劫持的不同之处,在于污染是对本来正确的DNS查询结果进行篡改,而劫持是DNS服务器自己把记录改成错误的内容。对于GFW来说,DNS劫持用于国内服务器,而对于国外服务器GFW无法更改其内容,故采用DNS污染方式篡改用户收到的信息。
 GFW的DNS污染过程,是当你向国外DNS服务器查询DNS记录时候,这些流量走到国外出口处即会遭到GFW的关键字审查,如果上了黑名单,GFW会立即向你返回一个虚假的DNS记录。由于默认的DNS查询方式是UDP,加上DNS查询结果只认最快返回的结果,所以你一定是先收到了GFW给你返回的虚假DNS记录;就算100ms后你收到了真正的来自国外DNS的回复,那也会被你的系统无视掉。如果GFW想彻底污染一个域名,那么不只是普通用户,连国内所有的DNS服务器也会收到虚假的DNS纪录导致全国性的DNS污染。




区别:
DNS劫持倾向于持续性,访问被劫持的网站时,会不停的出现其恶意广告。
HTTP劫持,这种劫持也是最为麻烦,其常见的现象为针对大流量网站的加小尾巴行为,如百度,hao123导航,360导航,百度知道,各大电商网站(淘宝,天猫,当当等)
HTTP的劫持出现的频率多变,针对不同的ip也会不同(断网之后再连接,也许劫持就暂时消失),一定程度会造成错误的假象,用户可能会忽视该问题,由于其劫持过程非常快,只是经过某个IP后就快速的跳转,用户如果不注意地址栏的变化,根本不会注意到该问题的出现。


解决方法:
1.向工信部投诉
2.DNS劫持判断,更改DNS,改成如114DNS,阿里DNS,onedns等,然后访问同样的网页,之后没出现类似的问题,即可判定为DNS劫持,DNS的解决不困难,手动换DNS,或者是投诉
3.HTTP的劫持,判定就困难多了,首先需要排除干扰,如hosts是否干净,是否有恶意软件,恶意插件,系统是否中病毒等(还有盗版系统),但是如果有iphone或者是ipad(不越狱),这就比较容易排除干扰项。首先需要注意的是各类的国产软件的也会造成后面的小尾巴,用户很容易就错误判断为运营商劫持
4.尽量使用HTTPS协议访问
5.考虑在边界设备针对TTL为252且为TCP协议的包做DROP处理,切记不能REJECT。
6.防止DNS污染的方法目前来说就是使用TCP协议代替UDP来进行DNS查询,因为TCP协议是有连接的协议需要双方握手成功才能通讯,从而避免GFW这种简单的DNS污染方式。目前GFW对于TCP方式的DNS查询其实已有阻断能力,但未大规模部署,目前貌似只有dl.dropbox.com会遭遇TCP阻断


业务上的:
1.DNS forword 劫持:
        运营商跨省之间的出口做劫持,省与省之间的流量结算问题
        跨运营商的劫持,运营商之间的流量结算问题,不夸运营商,给予客户相同的需求
2.http劫持
        出口网元,转发到url时,在响应返回200ok时,回到缓存url,返回320,网页和原网页一样,插入了广告之类的

你可能感兴趣的:(linux基础)