一、背景
随着虚拟货币市场的疯狂炒作,挖矿已经成为一种额外的经济来源,越来越多的人参与其中。从2019年安全态势来看,攻击者将企业、政府和教育行业作为挖矿的主要目标,通过弱口令爆破、社会工程和钓鱼等方式对计算机进行攻击,利用他人计算机CPU和GPU的计算能力挖取虚拟货币获利,导致计算资源被耗尽严重影响本地服务正常使用。
二、事件概述
今日,在单位测试环境中发现一个挖矿木马样本。经溯源分析,该挖矿病毒具有蠕虫属性,攻击者利用后门去控制失陷的计算机作为“肉机”,从3个固定的Web服务器来获取攻击的目标IP和所使用的爆破字典,之后通过不断感染其他主机形成僵尸网络。挖矿攻击过程如下图2-1所示:
图2-1挖矿木马攻击流程
三、载荷投递
通过分析发现,此次攻击是一次有组织的攻击,攻击手段复杂多样,利用循环嵌套的方法在第三方网站隐藏真正存放恶意软件IP地址,目前只针对Linux物理机进行攻击,如果检测为蜜罐或者路由器则自动退出。攻击者通过ssh弱口令爆破取得系统权限后,利用ftp从其C&C服务器下载Shell脚本,为后续投递攻击载荷做准备。但是失陷计算机目录未发现“.ssh3”文件,分析人员怀疑攻击者在执行完脚本之后做了自身删除操作。图3-1所示为攻击者通过ftp下载命令。
图3-1 攻击者通过ftp下载恶意Shell
图3-2是在失陷计算机发现的tddwrt7s.sh脚本,猜测该脚本是通过ftp下发,目前下发地址控制台已失效,无法进行验证。
图3-2 通过wget和curl下载恶意软件
攻击者利用wget和curl指令从七个不同的URL下载恶意软件,这些URL下载的数据包中包含了与dota.tar.gz压缩包中同样的文件,如图3-3所示。利用这些URL,脚本随机选择其中一个URL,就可以下载有效载荷解压缩并执行。登陆被感染服务器,安全分析人员发现在X13-unix.tar.gz压缩包中包含了完整的挖矿组件,解压后的dota/.rsync目录中含有大量的恶意代码。攻击者为了掩盖痕迹,将恶意代码文件伪装成了系统指令,下文对恶意代码文件用表示。
图3-3 攻击者下发的大量的相同的数据包
挖矿组件分为a、b、c三个子目录和、和脚本,主目录的脚本主要对本地系统进行清理、初始化挖矿环境并启动恶意程序;文件夹a是挖矿组件,用于查杀其他矿机、定时任务和启动挖矿程序;文件夹b中包含了用于植入攻击者的后门组件和一些Shell启动脚本;文件夹c中包含的爆破程序和脚本将失陷计算机作为肉机去感染其他弱口令机器。
四、初步感染
既然已经通过ssh爆破获得本地权限,那么后续则通过一系列脚本初始化本地系统、执行挖矿、安装后门和执行爆破。结合之前目录分析,使用脚本初始化/var/tmp目录,并启动主脚本;脚本执行过程如下:
1) 清除自身挖矿进程;
2) 执行挖矿程序;
3) 本地植入后门;
4) 启动爆破工具感染其他主机形成僵尸网;
5) 设置定时任务自启;
1) 清除自身挖矿进程;
2) 执行挖矿程序;
3) 本地植入后门;
4) 启动爆破工具感染其他主机形成僵尸网;
5) 设置定时任务自启;
目标主机启动之后命令会自动执行。
图4-1init定时任务脚本
启动挖矿操作详细流程如下:
攻击者为了在挖矿计算期间独占CPU资源,通过kill杀死其他矿机并进行删除,部分代码内容如图4-2所示。
图4-2init0清理其他矿机程序