“挖矿”教育专栏

如何检测挖矿木马

日期:2022-02-12 来源: 作者:

一、挖矿木马行为特征

挖矿木马显著的行为特征就是极大的占用CPU及GPU资源主要包括:

1.高CPU和GPU使用率

2.响应速度慢

3.崩溃或频繁重新启动

4.系统过热

5.异常网络活动(例如连接挖矿相关的网站或IP地址)。

其次是在网络流量中,挖矿木马通信过程采用专门的通信协议,因此存在一定的网络通信特征。

二、检测方法

1.网络侧检测

在网络侧检测可分为通信内容检测和矿池地址域名请求(DNS请求历史记录)检测。

挖矿木马感染主机和矿池的通信过程使用的通信协议是最常用的stratum协议,该协议内容为JSON数据格式。stratum协议的JSON数据格式存在多个固定的特征字段,在检测通信内容时,可根据这些特征设置告警规则,并应用与suricata、snort和其他通信检测软件或设备。

通信特征字符串:id、method、jsonrpc、params、result、login、pass、agent、job_id、seed_hash、blob、target、rigid。

方法示例:使用wireshark抓包并分析TCP通信内容。

1644666127892054446.png

矿池主要有公开矿池和私有矿池,对应域名也就有公开的矿池地址和私有的矿池地址。其中部分公有的矿池地址如下表所示:

币种 矿池地址
比特币 mine3.btcguild.com:8332pit.deepbit.net:8332
门罗币 xmr-us-east1.nanopool.org:14444pool.supportxmr.com:7777pool.supportxmr.com:5555pool.minexmr.com:5555

私有矿池地址一般有域名+端口或IP地址+端口的形式,域名可能也和公有的矿池地址一样存在一些特殊字符串,如:pool、xmr、mine等。在检测过程中都可结合威胁情报和对应通信内容进行综合判定。

如采用使用威胁情报(VirusTotal等)进行关联查询,综合域名、对应IP、关联样本进行判定矿池地址威胁性。示例中域名虽然在VT上显示无检测结果,可进一步分析关联。

1644666176470012226.png

进一步排查IP地址,关联样本,最终发现多个Linux平台的挖矿木马脚本。

3.png

2.主机侧检测

挖矿木马的主机侧检测主要依据的就是对应进程CPU使用率长时间居高不下,部分挖矿木马采用多方式隐藏进程,且具备多种持久化驻留方式。

针对不具备隐藏进程功能的挖矿木马检测场景:

Windows:使用任务管理器查看;

Linux:使用命令top -c查看。

4.png

针对具备隐藏进程功能的挖矿木马检测场景(即系统CPU使用率高,但未发现存在CPU使用率高的进程):

Windows:使用ProcessExplorer、ProcessHacker、PcHunter等软件查看系统所有进程及其进程关系,依据CPU使用率筛选可疑进程,进一步在主机上排查该可疑进程的网络连接,计算可疑进程对应文件hash,通过公开的威胁情报(Virustotal等)进行查询,综合判定结果。

Linux系统挖矿木马进程隐藏方式存在多种方式:

(1)篡改预加载的配置(/etc/ld.so.preload),写入恶意so文件路径,加载恶意的so文件,使得ls、top、ps等命令在查询可疑进程时执行结果被挖矿木马的动态链接库屏蔽,无法获得挖矿木马进程相关的信息。

通过以下命令恢复相关命令的正常执行:

> /etc/ld.so.preload && rm -rf恶意so文件路径

5.png

(2)通过其他手段修改Linux系统常用命令

a.针对这种隐藏方式,可以查看系统版本(uname -a),将其他相同版本的Linux系统的top命令文件重名了,导入该受害系统中,使用新的文件名命令进行排查。

b.安装busybox程序,使用内置的Linux常用命令(top、ps、ls等)对系统进行排查。

安装方法:

下载busybox: wget https://busybox.net/downloads/binaries

/1.28.1-defconfig-multiarch/busybox-x86_64

赋予执行权限:chmod +x busybox-x86-64

执行:./busybox-x86-64常用命令(即正常情况下的相关命令:top -c、ps -ef、ls -al等)。

除以上排查方法外,还可采用自动化脚本排查,脚本排查思路主要源于挖矿木马为了竞争CPU资源而在相关脚本中设置查找并删除其他挖矿木马的代码。收集整理其中的查找挖矿木马的代码,形成一定功能的挖矿木马进程排查脚本。此种方式的脚本排查误报率高,需要结合人工分析判定。

下一篇:什么是挖矿木马