当前位置: 首页 > 图文教程 > 网络安全 > 安全基础 > 谁控制了我们的浏览器

安全基础
IE浏览器防黑十大秘籍,黑客也没招
网络工程师讲解系统安全漏洞的形成和防治
清除导致XP系统反复重启的新网银木马
识破QQ欺骗网络地址的几种方法汇总
安全基础知识 细说暴库的原理与方法
排除无线突然中断故障实例
强搜天线 搜出WiFi世界的安全漏洞
网管应用技巧 内网安全十大策略说明
如何修改局域网内部打印机的IP地址
如何找出IIS中隐藏的网站
EFS加密技术的概念分析及一次解密经过
提高Windows XP系统安全性要关闭的10种服务
PHPBB 2.0.22 MOD版最新注入漏洞
修复Windows系统忘记密码的9个高招
用SockOnline软件轻松突破端口限制
安全基础知识 最强0到33600端口详解
执行文件方式加密FLASH文件的解密方法
网吧被入侵后的应对解决方法
网页“黑手”如何攻击你的Windows系统
不要让别人读了你的信 谈私密数据保护

安全基础 中的 谁控制了我们的浏览器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 35 ::
收藏到网摘: n/a

 本文遵从GPL协议,欢迎转载。

1、现象是什么?

大约从今年年初开始,很多人就发现,在浏览一些网站的时候,地址栏的url后面会被
莫名其妙地加上“?curtime=xxxxxxxxxx”(x为数字),并且弹出广告窗口。很多人
以为这是网站自己弹出的广告,也就没有在意。

我是属于很在意的那些人之一。

2、这是怎么回事?

经过测试和分析,我们发现,上述现象与使用何种浏览器无关(我们测试了各种流行
的http客户端),与使用何种操作系统也无关(linux用户也有相关报告)。我对出现
该现象的IE浏览器进程进行了跟踪调试,没有发现任何异常。可以断定,并不是系统
被安装了adware或者spyware。

那么是不是那些网站自己做的呢?后来发现,访问我们自己管理的网站时也出现了这
种情况,排除了这个可能。

那么剩下唯一的可能就是:有人在某个或某几个关键网络节点上安装了inject设备,
劫持了我们的HTTP会话——我实在是不愿相信这个答案,这个无耻、龌龊的答案。

伟大的谢洛克·福尔摩斯说过:当其他可能都被排除之后,剩下的,即使再怎么不可
思议,也一定是答案。

为了验证这个想法,我选择了一个曾经出现过上述现象的网站附近网段的某个IP。直
接访问这个IP的HTTP服务,正常情况下是没有页面的,应该返回404错误。我写了一个
脚本,不断访问这个IP,同时记录进出的数据包。在访问进行了120次的时候,结束请
求,查看数据。120次请求中,118次返回的都是正常的404错误:

HTTP/1.1 404 Object Not Found
Server: Microsoft-IIS/5.0
Date: Mon, 19 Jul 2004 12:57:37 GMT
Connection: close
Content-Type: text/html
Content-Length: 111

<html><head><title>Site Not Found</title></head>
<body>No web site is configured at this address.</body></html>

但是有两次,返回了这个:

HTTP/1.1 200 OK
Content-type: text/html

<html>
<meta http-equiv='Pragma' content='no-cache'>
<meta http-equiv='Refresh' content='0;URL=?curtime=1091231851'>
<script>
window.open('http://211.147.5.121/DXT06-005.htm', '', 'width=400,height=330');
</script>
<head>
<title></title>
</head>
<body>
</body>
</html>

更进一步分析数据包,可知劫持流程如下:

A、在某个骨干路由器的边上,躺着一台旁路的设备,监听所有流过的HTTP会话。这个
设备按照某种规律,对于某些HTTP请求进行特殊处理。

B、当一个不幸的HTTP请求流过,这个设备根据该请求的seq和ack,把早已准备好的数
据作为回应包,发送给客户端。这个过程是非常快的,我们的HTTP请求发出之后,仅
过了0.008秒,就收到了上面的回应。而任何正常的服务器都不可能在这么短的时间内
做出回应。

C、因为seq和ack已经被伪造的回应用掉了,所以,真正的服务器端数据过来的时候,
会被当作错误的报文而不被接受。

D、浏览器会根据<meta http-equiv='Refresh' content='0;URL=?curtime=1091231851'>
这一行,重新对你要访问的URL进行请求,这一次,得到了请求的真正页面,并且调用
window.open函数打开广告窗口。

在google中以“php?curtime”、“htm?curtime”、“asp?curtime”为关键字搜索,
出现的基本上是国内网站,这表明,问题出在国内。用于inject的设备插在国内的某
个或某几个大节点上。

真相大白。我们被愚弄了,全中国的网民都成了某些人的赚钱工具。

3、现在怎么办?

在坏家伙被捉出来之前,我们要想不受这个玩意的骚扰,可以考虑下面的方法:

A、请各单位的网络管理员,在网络的边界设备上,完全封锁211.147.5.121。
B、在你自己的个人防火墙上,完全封锁211.147.5.121。
C、如果你的浏览器是FireFox、Opera、GreenBrowser、或者MyIE,可以把
“http://211.147.5.121/*”丢到弹出窗口过滤列表中去。

绝不只是广告那么简单,这涉及到我们的选择,我们的自由,这比垃圾邮件更加肮脏
和无耻。今天是广告,明天就可能在你下载软件的时候给你加个adware或者加个病毒
进去,谁知道呢?我们的HTTP通信完全控制在别人手里。