话说“六间房”
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zoukejian.blog.51cto.com/131276/60233 |
一.问题出现
那天,客服 MM 告诉我说,有北京的网友反映,在登录我们网站的时候,弹出大量的六间房广告窗口,浏览器马上就停止响应,崩溃了。开始,我不以为然,认为也就是这些个别的用户电脑“中镖”了吧。所以就告诉客服 MM 说,告诉那些投诉的网友,说是他们的电脑中毒了,杀杀毒也就 OK 了。下午,客服 MM 又来“骚扰”了,说是先前反映情况的北京网友按照我们的指点,用了最新的杀毒软件,但是没有查到病毒,而且杀毒后“涛声依旧”。并且,广州和深圳也有网友反映同样的情况。我开始意识到问题的严重性了。可是,由于当天维护任务比较多,我就拖了拖,准备第二天再来处理。第二天早上上班后,我打开邮箱,一封客服主管的邮件出现在眼前:内容大概是到今天凌晨为止,已有数十网友反映了六间房弹窗问题,请求技术及时解决。我心里恶狠狠地骂了一句“TMD,你个该死的六间房”,开始干活了。
二.问题跟进
我想还是先上问题用户的电脑上去实地“侦查”一下吧。于是就叫客服 MM 提供他们的 QQ 号码,可是他们说现在还没有人提供,不过可以联系他们请求他们提供 QQ 号码。看来暂时没戏了。
那就先上网看看吧。于是我先 google 了一下,发现跟“六间房弹窗”有关的“绯闻”还真不少,看来六间房这次又大出风头了。随便进入了一条跟我们的情况相似的网页,那是一个论坛的帖子,楼主的分析是,并非六间房在捣鬼,实际上是某个拉流量的网站在作怪,而六间房不过是背了黑锅而已,并且提出了解决方案:在机器的 hosts 文件里面,把那个拉流量的网站的域名解析为 127.0.0.1,问题就解决了。后面的跟贴,有人说这样搞定了,有人说这样没有用。不管那么多,先把这种解决方案记下来再说吧。
继续看 google 搜出的结果。突然,360 出现在我的眼前。“难道这个问题跟木马恶意软件之内的东西也‘有一腿’”,我暗自问了一句。进去一看,原来是 360 的论坛,楼主说“六间房弹窗”实际上是由于一种十分厉害的木马在作怪,好像叫什么“隐身僵死木马”,名字挺恐怖。而且,还贴出了汇编语言写的清除代码,笔者当年也认真学过汇编语言,可是看不懂,看来自己对 windows 下的汇编技术还太差劲了。我打开了该页面上的一个链接,出现的是 360 对“隐身僵死木马”的相关描述,和他们开发出来的专杀工具。同样地,先把解决方案记录下来。
解决方案找到了两种,接下来,就应该上出问题的用户的电脑上去“实验实验”了。再次 call 客服 MM, 这次他们提供了几个 QQ 号码给我,其中有一个是北京分公司一个同事的。我决定先从熟人下手。联系上了她,登录上了她的电脑,请她打开弹窗的页面。一时间,N各个窗口弹了出来,浏览器动不了了。我马上使用了第一种解决方案,修改系统的 hosts 文件,关闭浏览器,清除缓存文件,再访问弹窗页面,shit, “涛声依旧”啊。心里有几丝失望。再试试另外一种方案,下载 360 的专杀工具。不幸,360 专杀工具提示并没有发现“传说中”的“隐身僵死木马”。这下玩完儿了。
三.问题解决
局势一下子陷入了僵局,客服那边叫得越来越厉害了,因为反映弹出问题的用户越来越多了。
怎么办?
怎么办?
怎么办?
看来,只有使用最后的杀手锏了,抓取数据包来分析。
我在北京同事的电脑上装了 ethereal,再打开先前总是弹窗的页面,奇怪了,这次不弹窗了,关闭浏览器再试,还是不弹窗,重启电脑再试,还是不弹窗,“这不是摆明了要‘调戏’我吗”,我苦笑不已。
北方的不行,我看看有没有南方用户的 QQ 号码(跟南方的用户做远程协助,效果比北方的好多了,南北分家,带给人的就是不方便)。嗯,不错,有一个深圳的小伙子的 QQ 号码,而且他也恰好在线。寒暄几句后,登录上了他的电脑。这次,我打算换一个抓包工具,毕竟是分析 HTTP 数据流,还是用专门分析 HTTP 数据流的工具,我用了 httpwatch。这次,抓取到了出现弹窗时的数据样本。经过分析,发现是在用户访问我们的某些网页的时候,被注入了恶意 js 造成的,而这些 js 的作用,就是反复打开六间房的广告窗口。再分析,发现该用户访问到的是大连的某个CDN 节点。接下来,我修改了自己电脑的 hosts 文件,把 public.xxxx.com 定位到该节点,再访问我们的 public.xxxxx.com, 眼前的窗口跳个不停,浏览器停止响应。Oh yeah,问题的根源找到了。原来就是这个 CDN 节点出了问题。我给我们的 CDN 厂商打电话,告诉他们情况,他们的反应,好像一点都不觉得惊奇,似乎见怪不怪了。他们的解释是,他们也不知道是怎么回事,这样的问题,经常发生在他们的大型网站客户身上。第二天,他们关闭了大连的 CDN 节点,一切恢复正常。
四.事后感悟
回首整个过程,我感慨良多。
不要轻易相信网上解决方案。人家的解决方案并不是错误的,但是可能并不适合解决你所碰到的问题,虽然表面上看起来,他们解决的是同样的问题。
做技术的人,就要以技术说话,以数据说话,根据数据做分析,根据分析结果定解决方案。
中国的互联网,怎么就那么乱呢? 本文出自 “邹可见” 博客,请务必保留此出处http://zoukejian.blog.51cto.com/131276/60233 本文出自 51CTO.COM技术博客 |



zkjian517
博客统计信息
热门文章
最新评论
友情链接

