背景
最近几天发现在用 chrome 的时候遇到很诡异的问题,打开网页后,点击网页任意地方都会被重定向到其他页面,然后手动返回原网页又能正常使用。但是时间一长网页就会经常卡顿,是那种非正常的卡顿。chrome、safari、firefox 都有这毛病,但是唯独 canary 没有。怀疑极有可能是有什么恶意脚本在作怪,因为canary属于小众浏览器就放过了。趁着快周末有时间,决心亲自动手找出毒瘤。
步骤
随便打开一个网页,发现在其 body 最后有这段代码:
在这里网页被嵌入了一个宽度 100%、高度 100%、不可见的带 href 的 frame,难怪点击任意地方都会被重定向,为了满足好奇心,去看了下被转到哪了:
恩,是淘宝某店铺的页面…
现在需要找出这段代码是怎么被插进网页的。顺藤摸瓜,找到一堆相关的 js 脚本,其中看到这个:
或许这就解释了为啥其他浏览器都中招,唯独 canary 没事了吧。
接着往下走,发现了一大堆的 js,它们环环相扣,链式地下载彼此,下图里的绝大多数都是最后恶意下载的脚本:
分析了半天,最终发现这堆脚本的鼻祖起源于这行代码:
这个 secure.surfbuyermac.com
也不知道是什么玩意,搞不懂是怎么插到页面里的,起初怀疑是浏览器的恶意插件导致的,于是停掉所有chrome、safari的插件,结果发现问题依旧存在。接着怀疑可能是电脑本身的恶意脚本导致的,于是调起
Spotlight
:
去 Applications
瞧一眼,果然有这么个东西:
为了确认是不是它,再去终端看看有没有在自启动:
行吧,果然是你,kill 掉相关进程后,再打开网页,舒服了~: