美文网首页信息安全网络安全实验室
某品牌路由器广告劫持代码分析

某品牌路由器广告劫持代码分析

作者: 土豆豆一只 | 来源:发表于2018-06-25 22:05 被阅读36次

    0x00 前言

    连着十来天没发技术文章了,讲真,真的不是我不写,月初被学校拜托写一个网站,写了7天才写完,加上修补漏洞,结果由于种种原因,网站无法部署,目测是白写了,超伤心( ╥﹏╥... ),委屈,都怪我没维护好服务器,让服务器遭到那么严重的攻击,给辣么多同学带来了麻烦,自我检讨ing... (省略1000字)

    好像跑题了喵,好啦,接下来进入正题。

    0x01 从Web查看异常

    这两天团队的成员在访问一些页面的时候,发现一些页面有些异常,用同一个设备和浏览器在不同网络环境中访问同一个页面,在浏览器的广告拦截处显示的数字不一样,哎?什么情况?

    其他的网络环境中
    莫名的多了一个广告拦截

    这个细节成功引起了我的兴趣,好了,开始分析。我在此使用的是浏览器广告拦截插件是adblock (这算不算是广告,有没有广告费?),打开插件内置的“Show all requests”功能,看到如下图

    多出了一个拦截
    我看见了一个奇怪的请求,没错,正常访问的时候没有这段请求,审查网页源代码的时候找到了多了的一个js引用 其他网络环境下 多了一个script引用 啊嘞嘞,这个引用的是什么呢?好奇,打开看一下。 密密麻麻的代码

    呃,最讨厌压缩的代码了,格式化一下(附上代码连接

    格式化的代码
    刚拿到代码时有点兴奋,直接就往下看代码,看了大概1000来行,感觉有些像我以前写过的一部分代码,而那个功能的作用就是“帆布指纹识别”。好,从头看了一下。。。。。。 “fingerprintjs2”?! 喷血

    呃,其实我第一眼就看到了这个,嗯,没错,就是这样,这个正是一款知名的开源设备指纹采集插件,也就是俗称的“帆布指纹识别”,即便使用Tor洋葱浏览器,也并不能完全排除被追踪的可能性,虽然这个识别率按照网上的一些测试结果达到了94%,但这个也是一个很可怕的事情。不过,你以为某品牌路由器就给你了这一个“惊喜”吗?不,你错了。这个指纹识别的代码不过才有1000余行,而这个引入的文件总行数为4000余行(这里我使用了代码格式化,不同的代码格式化方式会使行数有些不同,但是这里我依旧可以认为这个代码里面至少还有一部分功能),我们开始向下继续审计代码。

    大概在1900行附近,发现一句js引用调用函数 发现一个疑似js文件引用
    发现这句话不是执行语句,目测像个配置参数,全文搜索一下, 另一处相同的js函数
    先不管那么多的网址,先看看这个js里面有什么东西。 js内容
    真的是干净整洁,全文就两个网址,但是这标题,赤裸裸的标题党? 打开链接看看

    其实我只是想看看这个链接里面是什么(很单纯的呢,绝对没有抱有什么期望呢),但是我们在电脑的浏览器上并没有看到类似的广告,证明这个广告应该是存在一定的规则,并不是什么时候都有。换成手机版访问一个页面再试试。


    拒绝执行那个广告的js语句
    执行js之后
    果然不出所料,这里面会检测是否为手机端访问,之后再把广告写到页面上,大きな変態!

    Web端分析到此为止,你以为这就完了吗?不,这怎么可能结束,接下来,我们再来翻腾一下固件里面的问题。

    0x02 固件?

    pass

    0x04 结束语

    固件都没分析完,结束个毛球

    (未完待续)

    相关文章

      网友评论

      本文标题:某品牌路由器广告劫持代码分析

      本文链接:https://www.haomeiwen.com/subject/elyuyftx.html