本文主要是介绍铁通近期劫持百度统计插播广告的案例。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
以往的运营商利用会话劫持技术插播广告,一般都是在客户端浏览器GET一个页面的时候,返回一个200或302代码,给客户端推送一段iframe代码(或者劫持到有iframe的页面上),框架里面嵌套客户要访问的网站,外面插一个广告banner。
这种劫持技术早在2006年就特么有啦,特点是被劫持后浏览器标题栏显示的是url而不是目标页面title中的内容,很容易辨别。
有关部门吃人饭不干人事,这种东西至今依然有,呵呵。(我猜你们都知道所谓“secure”互联网,secure的是什么东西)
近期上网发现,好多网站会蹦出一个右下角广告小窗或者banner,而且只在铁通的网络下有这个情况。
很显然是被劫持插了广告,但是抓包分析,所有到目标网站的GET请求都有正确地回复,没有出现上文所述的情况。
后来对比分析了一下网页的源代码,分别用IE的查看源文件功能和开发人员工具,二者获得的源代码有点区别,凭空多出来一段显示广告内容的代码。
好吧,估计是哪个JS被劫持了。因为太多的站点有这个情况了,所以很容易就想到统计代码。
仔细一翻出问题网站的源码,都用了百度统计。
百度统计,就是这么一段代码(某网站的,没去掉后面的参数直接贴了):
<script type="text/javascript">(function() {//baiduvar _bdhmProtocol = (("https:" == document.location.protocol) ? " https://" : " http://");document.write(unescape("%3Cscript src='" + _bdhmProtocol + "hm.baidu.com/h.js<del>%3F64888181e35ddf2b40b22a8a36c7932a</del>' type='text/javascript'%3E%3C/script%3E"));})();</script>
在内网IIS上新建个页面,就写这一段代码,浏览器访问一下。好嘛,也出广告了。
针对这个抓了一下包,看看,果然是给302劫持走了。
访问一下219.238.159.182这个地址,得到下面这一堆烂代码……
翻译一下,就是:
document.write(unescape('<script>
document.write("</div>");
function MM_showHideLayers() {var i,p,v,obj,args=MM_showHideLayers.arguments;for (i=0; i<(args.length-2); i+=3)with (document) if (getElementById && ((obj=getElementById(args[i]))!=null)) { v=args[i+2];if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }obj.visibility=v; }
}
</script>
<div style="position:fixed; right:0; bottom:0;z-index:9999">
<div style="width:400px; height:310px; position:absolute; right:0; bottom:0; display:block;" id="ooDiv">
<div style="height:20px; text-align:right; line-height:20px; font-size:12px"><a href="#" id="close" style=" color:#000; text-decoration:none;" οnclick="MM_showHideLayers('ooDiv','','hide')"><img src='http://219.238.159.182/images/close.jpg'></a></div>
<embed src="http://egouimg1.qutu.com/hd/2014/2014_double11/meizhuang.swf" width="400" height="300"></embed>
<iframe src="http://219.238.159.181/pop3.html" border=0 width=0 height=0></iframe>
</div>
</div>
<script>document.write("<div>");</script>
'))
嗯,好了,帖子也写完了。
那么,问题来了:
-流氓广告技术到底哪国强?
-贵国。
解决此问题的方法,打开你电脑上的hosts文件,添加这样一行:
127.0.0.1 hm.baidu.com
这篇关于铁通近期劫持百度统计插播广告的案例。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!