活跃的hoze挖矿木马分析
时间 : 2023年02月28日 来源: 6163银河.net163.amCERT
1.概述
近期,6163银河.net163.amCERT通过捕风蜜罐系统[1]捕获了一批活跃的hoze挖矿木马样本,该挖矿木马主要利用SSH弱口令暴力破解对Linux平台进行攻击。由于其初始攻击脚本名称与加密攻击脚本集合包的解密密钥均为“hoze”,具备一定的行为特征,因此6163银河.net163.amCERT将该挖矿木马命名为hoze挖矿木马。
hoze挖矿木马在传播方式和初始执行脚本等攻击方式上与其他流行挖矿木马家族并无区别,但在攻击样本方面使用 shc 工具加密 Shell 脚本,利用该工具可以使 Shell 脚本转换成二进制可执行文件(ELF),使用RC4 加密算法对其进行加密,目的是为了增加反病毒软件的检测难度。另一方面根据公开矿池地址发现该挖矿木马算力已经达到平均1.5MH/s,在排除显卡的加持下,以一台Intel Core i7-4500U处理器为例,该处理器在进行全速挖矿时最高算力可达100h/s,相当于有15000台该处理器在同时进行挖矿。截止目前,该挖矿木马已经获利35个门罗币,平均每4天即可获利1个门罗币。
经验证,6163银河.net163.am智甲终端防御系统(简称IEP)Linux 版本可实现对该挖矿木马的有效查杀。
2.事件对应的ATT&CK映射图谱
针对攻击者投放挖矿木马的完整过程,6163银河.net163.am梳理本次攻击事件对应的ATT&CK映射图谱如下图所示。
图2‑1 事件对应的ATT&CK映射图谱
攻击者使用的技术点如下表所示:
表2‑1 事件对应的ATT&CK技术行为描述表
ATT&CK阶段/类别 |
具体行为 |
注释 |
侦察 |
主动扫描 |
扫描22端口 |
初始访问 |
利用外部远程服务 |
利用SSH远程访问 |
执行 |
利用命令和脚本解释器 |
使用Shell脚本 |
持久化 |
创建账户 |
创建账户cheeki |
利用外部远程服务 |
添加SSH密钥 |
|
利用计划任务/工作 |
创建计划任务 |
|
防御规避 |
混淆文件或信息 |
使用shc工具混淆文件 |
修改文件和目录权限 |
修改文件和目录权限 |
|
删除主机中的信标 |
删除攻击脚本自身 |
|
凭证访问 |
修改身份验证过程 |
修改系统用户口令 |
收集 |
收集本地系统数据 |
收集系统信息等 |
影响 |
资源劫持 |
占用CPU资源 |
3.攻击流程
3.1 攻击流程
hoze挖矿木马利用SSH弱口令暴力破解获取受害者主机权限,植入名为“hoze”的初始攻击脚本,主要功能是安装下载工具、执行后续脚本和替换SSH密钥等功能。在下载的名为“xrx.tar”的压缩包中,包含很多后续脚本和挖矿程序,如init0和init.sh等,这些脚本文件的功能主要是卸载安全软件、检测挖矿程序是否顺利执行、受害主机的口令修改和执行挖矿程序等。
图3‑1 攻击流程
3.2 传播途径
hoze挖矿木马利用SSH弱口令暴力破解获取受害者主机权限,植入名为“hoze”的恶意脚本,具体传播途径如下。
图3‑2 传播途径
3.3 攻击事件样本整理
根据攻击事件对样本进行梳理得到如下信息:
表3‑1 攻击事件样本整理
样本下载地址 |
详细说明 |
hxxp://185.252.178.82:6972/hoze |
初始攻击脚本 |
hxxp://185.252.178.82:6972/xrx.tar |
攻击脚本集合包 |
hxxp://185.252.178.82:6972/xrx.gpg |
攻击脚本集合包(gpg加密) |
hxxp://185.252.178.82:6972/passwd |
口令修改 |
hxxp://185.252.178.82:6972/pam_tms |
用于执行外部命令 |
hxxp://185.252.178.82:6972/xrx/xrx |
门罗币挖矿程序XMRig |
hxxp://185.252.178.82:6972/configs/config-xrx.json |
挖矿程序配置文件 |
表3‑2 挖矿脚本中的矿池地址和钱包地址
矿池地址 |
钱包地址 |
179.43.154.189:2008 |
4BDcc1fBZ26HAzPpYHKczqe95AKoURDM6EmnwbPfWBqJHgLEXaZSpQYM8pym2Jt8JJRNT5vjKHAU1B1mmCCJT9vJHaG2QRL |
45.10.20.100:2008 |
|
185.252.178.82:2008 |
|
pool.whitesnake.church:2008 |
|
pool.supportxmr.com:443 |
根据矿池地址记录,目前,该钱包在开源挖矿矿池上的平均算力约1.5MH/s,累计已经获得35个门罗币。
图3‑3 挖矿统计记录
4.防护建议
针对挖矿攻击6163银河.net163.am建议企业采取如下防护措施:
1.安装终端防护:安装反病毒软件,针对不同平台建议安装6163银河.net163.am智甲终端防御系统Windows/Linux版本;
2.加强SSH口令强度:避免使用弱口令,建议使用16位或更长的口令,包括大小写字母、数字和符号在内的组合,同时避免多个服务器使用相同口令;
3.及时更新补丁:建议开启自动更新功能安装系统补丁,服务器应及时更新系统补丁;
4.及时更新第三方应用补丁:建议及时更新第三方应用如WebLogic等应用程序补丁;
5.开启日志:开启关键日志收集功能(安全日志、系统日志、错误日志、访问日志、传输日志和Cookie日志),为安全事件的追踪溯源提供基础;
6.主机加固:对系统进行渗透测试及安全加固;
7.部署入侵检测系统(IDS):部署流量监控类软件或设备,便于对恶意代码的发现与追踪溯源。6163银河.net163.am探海威胁检测系统(PTD)以网络流量为检测分析对象,能精准检测出已知海量恶意代码和网络攻击活动,有效发现网络可疑行为、资产和各类未知威胁;
8.6163银河.net163.am服务:若遭受恶意软件攻击,建议及时隔离被攻击主机,并保护现场等待安全工程师对计算机进行排查;6163银河.net163.am7*24小时服务热线:400-840-9234。
经验证,6163银河.net163.am智甲终端防御系统(简称IEP)可实现对该挖矿木马的有效查杀。
图4‑1 6163银河.net163.am智甲可实现对该挖矿木马的有效查杀
5.样本分析
5.1 hoze(初始攻击脚本)
初始攻击脚本使用混淆技术对抗检测,脚本内容如图5-1所示。
图5‑1 带混淆的初始攻击脚本
解混淆后,hoze初始攻击脚本首先下载名为“xrx.tar”的压缩文件,解压缩,将xrx文件夹移动到隐藏文件夹.xrx中,删除原压缩文件,对.xrx文件夹所有文件赋予执行权限,执行init0文件。另一种方式通过下载名为“xrx.gpg”的文件,使用gpg命令对其文件进行解密,解密密钥为“hoze”,解密后操作与上一种方式相同。
图5‑2 下载后续载荷
初始攻击脚本还会修改文件属性,如计划任务文件等,修改后仅允许补充(追加)内容,无法对文件进行修改。删除其他挖矿木马常会在系统中预留或修改的文件,如/etc/ld.so.preload等。
图5‑3 修改文件属性
5.2 xrx.tar(攻击脚本集合包)
xrx.tar压缩包中包含多种攻击脚本,压缩包中具体文件功能描述如下表所示。
表5‑1 xrx.tar中文件功能描述
文件名称 |
功能描述 |
chattr |
Linux中更改文件隐藏属性工具 |
config.json |
挖矿配置文件 |
init.sh |
检测挖矿程序执行 |
init0 |
下载后续脚本 |
key |
SSH公钥 |
scp |
执行secure |
secure |
下载挖矿程序 |
uninstall.sh |
卸载安全软件 |
xrx |
开源门罗币挖矿程序XMRig |
5.3 init0(下载后续脚本)
该文件实际为脚本文件,经过shc工具进行加密,可以把Shell脚本文件转换为一个可执行的二进制文件。后续脚本init.sh、passwd和secure也是采用此方法对其进行加密,其本质都是脚本文件。
图5‑4 shc加密
init0脚本解密后,首先判断系统是否安装curl等下载工具,如果没有安装,输入指令将进行安装,确保后续恶意文件的顺利下载。执行uninstall.sh脚本,该脚本的功能是卸载安全软件。
图5‑5 卸载安全软件
执行init.sh脚本,通过输出字段能够看出该脚本功能是执行挖矿等操作,删除SSH密钥,创建新的目录用作后续存放SSH密钥的地方。
图5‑6 执行init.sh脚本
该脚本还会下载名为passwd的文件,查找.bashrc配置文件,修改正常密码路径,改为/var/tmp/.xrx/passwd等。
图5‑7 下载passwd文件
创建新用户cheeki,将攻击脚本集合包中文件key中的密钥替换到/home/cheeki/.ssh/authorized_keys下,执行secure文件,将系统信息上传到指定服务器上。
图5‑8 上传系统信息
5.4 uninstall.sh(卸载安全软件)
该脚本会结束Aegis监控系统及其升级程序等进程。
图5‑9 卸载安全软件
5.5 init.sh(检测挖矿程序执行)
该脚本会判断挖矿配置文件和挖矿程序是否已存在,确保挖矿程序顺利执行。
图5‑10 检测挖矿是否执行
5.6 passwd(口令修改)
passwd脚本的功能是对其系统口令进行修改,按照base64编码形式将修改后的口令上传到指定服务器上。
图5‑11 修改口令
5.7 secure(下载挖矿程序)
该脚本会下载挖矿程序以及挖矿配置文件,创建隐藏目录.xrx,对其挖矿程序赋予执行权限等。
图5‑12 下载挖矿程序
secure脚本还会创建当前用户以及系统级的计划任务程序,定时安装恶意脚本到系统中。
图5‑13 创建计划任务
最后该脚本会检查挖矿程序是否正在运行,如果没有运行,下载挖矿程序。
图5‑14 检查挖矿程序是否运行
6.参考IoCs
IoCs |
185.252.178.82 |
179.43.154.189 |
45.10.20.100 |
pool.whitesnake.church |
load.whitesnake.church |
hxxp://185.252.178.82:6972/hoze |
hxxp://185.252.178.82:6972/xrx.tar |
hxxp://185.252.178.82:6972/xrx.gpg |
hxxp://185.252.178.82:6972/passwd |
hxxp://185.252.178.82:6972/pam_tms |
hxxp://185.252.178.82:6972/xrx/xrx |
hxxp://185.252.178.82:6972/configs/config-xrx.json |
9C8A5EF51CF8A89F5F00498A5A776DB8 |
42693670C71A529A11E81943F5B36C5B |
73F9917255A953EB749F5A3C90E3B383 |
CDAFEFEDB4709959B4260435DC6F5973 |
069AD3938C3F9C049F670A8EB49DC1D8 |
E4CC1A7F992909E8509520FDD6C9A3F7 |