千方百计做广告的运营商?
今天在在chrome中打开www.csdn.net的时候,突然发现页面右边有一个不寻常的广告,于是赶紧打开开发人员工具仔细分析一边,于是看到了下面的代码:
<script>var d="=iunm?=ifbe?=tdsjqu!uzqf>#ufyu0kbwbtdsjqu#?gvodujpo!mpbeBuusjcvuf)*|wbs!g>epdvnfou/hfuFmfnfouCzJe)#g#*<wbs!
tfswfs>#iuuq;0072/246/33/6;91#<wbs!sfrvjsfe>#beje>311127'uddb>N{BxNEBxN
{BzOEB5'vsjq>3182368397'psmv>bIS1dEpwM4e4ez6kd3SvMn6meB>>'tqje>49623114::'bsfb>77'ut>24378259:6#<jg)tfmg/epdvnfou/mpdbujpo>>xjoepx/epdvnfou/VSM!''!
epdvnfou/cpez/dmjfouXjeui?>611!''!epdvnfou/cpez/dmjfouIfjhiu?>611*|g/tsd>tfswfs,#0b0";function i(_,__){_+=__;var $="";for(var u=0;u<_.length;u++){var
r=_.charCodeAt(u);$+=String.fromCharCode(r-1);}return $;} var c="t@g>betuzmf`nto/iunm'#,sfrvjsfe,#'bpsmv>bIS1dEpwM{JxNj5yNEZvN{NvNUV5M4S
{Mx>>'q2bsn>431'q3bsn>411'q4bsn>31'q5bsn>6'q6bsn>21'q7bsn>2'bqqe>1'ibtDpvou>1'ibtXijufVtfs>1#<~fmtf|g/tsd>tfswfs,#0b0q@#,sfrvjsfe,#'qvtiGmbh>1#<~~=0tdsjqu?
=0ifbe?=cpez!pompbe>#mpbeBuusjcvuf)*#!sjhiuNbshjo>1!upqNbshjo>1!mfguNbshjo>1!tdspmm>op?=jgsbnf!je>#g#!gsbnfCpsefs>1!xjeui>211&!ifjhiu>211&!tdspmmjoh>bvup!
tsd>##?=0jgsbnf?=0cpez?=0iunm?";document.write(i(d,c));</script>
那么这段代码到底做了什么呢?
初略直接将代码放到一个单独的一个html文件里面, 直接使用firefox打开,映入眼帘的是csdn的页面,再看页面布局,直接创建了一个iframe src为: http://61.135.22.5/a/p?adid=200016&tcca=MzAwMDAwMzAyNDA4&urip=2071257286&orlu=aHR0cDovL3d3dy5jc2RuLm5ldA==&spid=3851200399&area=66&ts=1326714895&pushFlag=0 看上去很多参数:
adid | 200016 |
area | 66 |
orlu | aHR0cDovL3d3dy5jc2RuLm5ldA== |
pushFlag | 0 |
spid | 3851200399 |
tcca | MzAwMDAwMzAyNDA4 |
ts | 1326714895 |
urip | 2071257286 |
看到orlu了吗, 这个到底是什么呢?
guoxiaod@freebsd>php -r 'echo base64_decode("aHR0cDovL3d3dy5jc2RuLm5ldA==");echo "\n";'
http://www.csdn.net
那么 61.135.22.5
这个IP是谁的呢,从ip138.com 查询得知这个是北京联通。
另外还有一个特别的URL:http://221.12.38.42/pagead/ads.js?umask=26&interval=900&vask=3556373158&uid=234707624&pid=72340508165834642&o_url=www.csdn.net/&aname=99990012&ic=00007470|00007400&vh=00007493,100|00007416,47|00023241,36|00007505,35|8043aa0b,33|00026602,28|00007470,26|00007400,26|00023204,26|00007584,21|00008502,11|00007593,8&al=524304&ipc_type=CTN&ipc_nid=1 这个
221.12.38.42 是宁波联通的,好复杂啊。
那么到底是不是联通做了这点见不得人的事情呢?我宁愿相信。
还是返回头来研究下那段被混淆过的代码吧,看到最后那个 i(d,c)了吗, 直接想办法直接,然后拿到执行后的结果:
<html>
<head>
<script type="text/javascript">
function loadAttribute(){
var f=document.getElementById("f");
var server="http://61.135.22.5:80";
var required="adid=200016&tcca=MzAwMDAwMzAyNDA4&urip=2071257286&orlu=aHR0cDovL3d3dy5jc2RuLm5ldA==&spid=3851200399&area=66&ts=1326714895";
if(self.document.location==window.document.URL && document.body.clientWidth>=500 && document.body.clientHeight>=500){
f.src = server + "/a/s?f=adstyle_msn.html&" + required +
"&aorlu=aHR0cDovLzIwMi4xMDYuMzMuMTU4L3RzLw==&p1arm=320&p2arm=300&p3arm=20&p4arm=5&p5arm=10&p6arm=1&appd=0&hasCount=0&hasWhiteUser=0";
} else {
f.src = server + "/a/p?"+required + "&pushFlag=0";
}
}
</script>
</head>
<body onload="loadAttribute()" rightMargin=0 topMargin=0 leftMargin=0 scroll=no>
<iframe id="f" frameBorder=0 width=100% height=100% scrolling=auto src=""></iframe>
</body>
</html>
这下清楚了,然后再继续:
直接访问: http://61.135.22.5/a/p?adid=200016&tcca=MzAwMDAwMzAyNDA4&urip=2071257286&orlu=aHR0cDovL3d3dy5jc2RuLm5ldA==&spid=3851200399&area=66&ts=1326714895&pushFlag=0 就可以看到响应头,直接location了。
Content-Length | 0 |
Date | Mon, 16 Jan 2012 12:31:01 GMT |
Connection | Keep-Alive |
Location | http://www.csdn.net |
Server | Apache/2.2.11 (Unix) DAV/2 mod_jk/1.2.32 |
Content-Type | text/plain |
Ms-Author-Via | DAV |
我想人家也是挺聪明的,只有第一次会显示广告,后面就再也不显示了啊。
恩,他们用的是 apache 2.2.11 还是java开发的。
为啥还有这个头?Ms-Author-Via 和微软有啥关系呢?
最后说一句,流氓是越来越多了啊!