不得不承认,2345是个垃圾站。如果没有今天这个情况的出现,或许我还愿意承认这个站点,但现在,我非常愤恨。
登录自己的博客花了很久,主要原因就是发现在连接时候,居然多了个forward和proxy,因为不明白原因,所以google了一下,找到了这篇文章 :又被ISP劫持了,原来和我有同样问题的人在。
因为我没有仔细研究,也没精力来研究。我连登录都花了将近半小时。。。。所以就COPY上面说的那个链接的内容了。
----------start---------------
最近上网时遇到过几次访问域名跳转到http://221.231.148.195/forward.html?url=XXXXXXXX
然后就没反应的情况,多次发生后不由得让人怀疑。今天查理一下221.231.148.195
这 个IP地址是南京电信的。我访问的是一个英文博客,不知道是哪国的但肯定不是中国的。一开始以为DNS被劫持了,所以手动查询DNS,用 WireShark查看没有伪造的数据包。通过国外的线路查询得到的结果是一样的,检查返回的IP确实是对方网站的。Ping对方的IP不通,通过国外线 路可以Ping通,看来劫持是在网络层。
使用WireShark记录HTTP会话的内容,发现第一次访问时返回内容如下。
- HTTP/1.1 302 Object moved
- Location: http://221.231.148.195/proxy.html?e=xxxxxxxxxxxxxxxxxxxxxxxxxx
- Content-Length: 20
- Content-Type: text/html
- Connection: close
- Expires: 0
- Cache-control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
- <body> ... </body>
浏览器自动请求跳转地址再次返回另一个跳转。
- HTTP/1.1 302 Moved Temporarily
- Server: nginx/0.7.65
- Date: Thu, 12 Aug 2010 00:58:42 GMT
- Content-Type: text/html
- Content-Length: 161
- Connection: close
- Location: http://221.231.148.195/forward.html?url=原来请求的URL
- <html>
- <head><title>302 Found</title></head>
- <body bgcolor="white">
- <center><h1>302 Found</h1></center>
- <hr><center>nginx/0.7.65</center>
- </body>
- </html>
但是在我的浏览器里这一次跳转没能再返回任何东西,如果能的话会是以下内容
- <html>
- <head>
- <script type="text/javascript" src="/js/jquery.min.js"></script>
- <script type="text/javascript" src="/js/jquery.cookie.js"></script>
- <script type="text/javascript" src="/js/jquery.query.js"></script>
- <script type="text/javascript">
- $(function(){
- var value=$.cookie('_GB_ADV_STATE');
- if(value==undefined){
- $.cookie('_GB_ADV_STATE',"1",{expires:1});
- window.location.href="/index.htm?3007";
- }
- else{
- window.location.href=$.query_reg("url");
- }
- });
- </script>
- </head>
- <body>
- </body>
- </html>
可以看到如果没有_GB_ADV_STATE
这个Cookie的设置Cookie并且会跳转到2345网址导航,如果有这个Cookie的就再跳转到原来要访问的地址。Cookie的有效期设置是一天。 另外在我的Cookie里发现了cnzz_eid的东西,2345网址导航里也嵌入了访问统计的脚本,怀疑2345网址导航在利用这种劫持手段骗取独立访问数。
让我们大家一起谴责这种行为
- 对方的服务器默认TTL用的是64,而劫持服务器返回的包到达我这里是2xx所以肯定不是原服务器的。TCP的建立时返回的
SYN ACK
包的TTL是5x,但是HTTP响应的第一个包是2xx。 - 从代码判断,劫持设备只劫持短期内的第一次访问。不然会死循环。
- 为什么这两天出问题了,一直死循环跳不到要去的页面了,难道劫持设备出错了?数据包显示在第二次访问时还是被劫持了。所以死循环了。
---OVER--
我没有找到上面的COOKIE,或许消失了(最后稍微正常了,果然发现了这个cookie)。或许有其他情况,反正我是在发现打开网站要很长时间后,我用firebug的net功能查看的,发现多了一个foward.html和proxy.html的记录。才想到用google搜索类似问题的。唉。什么时候有个清静的网络 ?你要做站你就做,你愿意花钱也没啥事,你不能拿普通站长的站来开心吧。我不能代表大多数人,我只能代表我自己谴责一下类似事件的发生。TMD,给我滚