自2022年一月以来,安天CERT陆续捕获到多批次“8220”挖矿组织攻击样本,该挖矿组织自2017年出现,持续活跃,同时向Windows与Linux双平台传播恶意脚本,下载的载荷是门罗币挖矿程序以及其他僵尸网络程序、端口扫描爆破工具等。
“8220”是一个长期活跃并且擅长使用漏洞进行攻击并部署挖矿程序的组织,该组织早期使用Docker镜像传播挖矿木马,后来逐步利用多个漏洞进行攻击,如WebLogic漏洞、Redis未授权访问漏洞、Hadoop Yarn未授权访问漏洞和Apache Struts漏洞等。在2020年发现该组织开始使用SSH爆破进行横向攻击传播。自Apache Log4j 2远程代码执行漏洞曝光后,该组织利用该漏洞制作漏洞利用脚本进行传播,影响范围广。
该组织在Windows平台上使用PowerShell脚本下载门罗币挖矿程序,该程序使用开源挖矿程序XMRig进行挖矿,版本号为6.16.2。除此之外,该脚本还具有连接矿池地址和创建计划任务持久化等功能。在Linux平台上使用Shell脚本下载挖矿程序,并且该脚本还会横向移动、下载Tsunmai僵尸网络、扫描爆破脚本等恶意文件。经验证,该挖矿程序由开源门罗币挖矿程序XMRig改编,并且会隐藏挖矿进程和创建计划任务等操作。
攻击者针对目标系统投放挖矿木马,梳理本次攻击事件对应的ATT&CK映射图谱如下图所示。
图 2‑1 事件对应的ATT&CK映射图谱
攻击者使用的技术点如下表所示:
表 2‑1 事件对应的ATT&CK技术行为描述表
ATT&CK阶段/类别 | 具体行为 | 注释 |
侦察 | 主动扫描 | 利用漏洞扫描 |
初始访问 | 利用面向公众的应用程序 | 利用Java等面向公众的应用程序 |
执行 | 利用命令和脚本解释器 | 使用PowerShell和shell脚本 |
持久化 | 利用计划任务/工作 | 设置计划任务 |
防御规避 | 隐藏行为 | 隐藏恶意进程 |
混淆文件或信息 | 使用Base64进行混淆 | |
凭证访问 | 暴力破解 | 暴力破解SSH服务 |
发现 | 扫描网络服务 | 扫描SSH服务 |
收集 | 收集本地系统数据 | 收集本地系统敏感信息 |
影响 | 资源劫持 | 利用系统CPU资源 |
“8220”组织在Windows平台中使用名为“xms.ps1”的PowerShell脚本执行主要功能,具体功能为下载名为“wxm.exe”的挖矿程序,该挖矿程序属于开源门罗币挖矿程序XMRig、关闭防火墙、结束竞品挖矿程序进程、隐藏执行挖矿参数,连接矿池地址和钱包地址并且添加计划任务和注册表自启动项,达到持久化目的等。在Linux平台中使用名为“xms”的Shell脚本执行主要功能,具体功能为最大化利用系统资源、关闭防火墙、结束竞品挖矿程序、卸载安全软件、创建计划任务持久化、对挖矿程序进行MD5校验、下载Tsunami僵尸网络程序和挖矿程序、收集主机身份信息进行横向移动等功能。Tsunami僵尸网络程序的主要功能为远程控制、DDoS攻击和其他恶意行为。
图 3‑1 攻击流程
获取url地址下载“testlog2.py”文件并执行。
图 3‑2 Log4j 2利用脚本
Log4j 2漏洞利用代码。
图 3‑3 Log4j 2利用代码
根据攻击事件对样本进行梳理得到如下信息:
表 3‑1 攻击事件样本整理
样本下载地址 | 详细说明 |
hxxp[:]//a.oracleservice.top/xms | Linux恶意shell |
hxxp[:]//a.oracleservice.top/bashirc.i686 | Tsunami僵尸网络程序 |
hxxp[:]//a.oracleservice.top/log4.sh | Log4j 2利用脚本 |
hxxp[:]//a.oracleservice.top/wxm.exe | Windows门罗币挖矿程序 |
hxxp[:]//a.oracleservice.top/bashirc. | Tsunami僵尸网络程序 |
hxxp[:]//a.oracleservice.top/bashirc.x86_64 | Tsunami僵尸网络程序 |
hxxp[:]//a.oracleservice.top/scan.sh | 扫描爆破 |
hxxp[:]//a.oracleservice.top/load.sh | 下载Tsunami僵尸网络程序 |
hxxp[:]//a.oracleservice.top/xms.ps1 | Windows恶意PowerShell |
hxxp[:]//a.oracleservice.top/x86_64 | Linux挖矿程序 |
表 3‑2 Windows 挖矿脚本中的矿池地址和钱包地址
矿池地址 | 钱包地址 |
b.oracleservice.top | 46E9UkTFqALXNh2mSbA7WGDoa2i6h4WVgUgPVdT9ZdtweLRvAhWmbvuY1dhEmfjHbsavKXo3eGf5ZRb4qJzFXLVHGYH4moQ |
198.23.214.117:8080 | |
51.79.175.139:8080 |
表 3‑3 Linux 挖矿程序中的矿池地址和钱包地址
矿池地址 | 钱包地址 |
146.59.198.38:8080 | 46E9UkTFqALXNh2mSbA7WGDoa2i6h4WVgUgPVdT9ZdtweLRvAhWmbvuY1dhEmfjHbsavKXo3eGf5ZRb4qJzFXLVHGYH4moQ |
51.79.175.139:8080 |
针对非法挖矿,安天建议企业采取如下防护措施:
安装终端防护:安装反病毒软件,针对不同平台建议安装安天智甲终端防御系统Windows/Linux版本;
加强SSH口令强度:避免使用弱口令,建议使用16位或更长的密码,包括大小写字母、数字和符号在内的组合,同时避免多个服务器使用相同口令;
及时更新补丁:建议开启自动更新功能安装系统补丁,服务器、数据库、中间件等易受攻击部分应及时更新系统补丁;
及时更新第三方应用补丁:建议及时更新第三方应用如WebLogic、JBoss、Redis、Hadoop和Apache Struts等应用程序补丁;
开启日志:开启关键日志收集功能(安全日志、系统日志、错误日志、访问日志、传输日志和Cookie日志),为安全事件的追踪溯源提供基础;
主机加固:对系统进行渗透测试及安全加固;
部署入侵检测系统(IDS):部署流量监控类软件或设备,便于对恶意代码的发现与追踪溯源。
表 5‑1脚本文件
病毒名称 | Trojan/Win32.Ymacco |
原始文件名 | xms.ps1 |
MD5 | 52EC97E2246C28FA92A0C37A510BF67E |
文件大小 | 2.16KB (2,212字节) |
解释语言 | PowerShell |
VT首次上传时间 | 2021-11-19 |
VT检测结果 | 22/57 |
定义门罗币挖矿程序地址、保存路径和挖矿程序名等信息以及关闭防火墙等。
图 5‑1 下载挖矿程序
结束竞品挖矿程序进程,遍历进程中的3333、4444、5555、7777和9000连接的端口,然后结束以上端口连接的进程。
图 5‑2 结束竞品
下载挖矿程序wxm.exe并重命名为本地文件名,隐藏执行挖矿参数,连接矿池地址和钱包地址。添加计划任务和注册表自启动项,以达到持久化目的。经验证,下载的挖矿程序为开源门罗币挖矿程序XMRig,版本号为6.16.2。
图 5‑3 连接矿池
5.2.1 xms(Linux恶意脚本)
表 5‑2 脚本文件
病毒名称 | Trojan[Downloader]/Shell.Miner |
原始文件名 | xms |
MD5 | 6A4E5C6EC8EFE777FA85E240A02EB883 |
文件大小 | 11.54KB (11,820字节) |
解释语言 | Shell |
VT首次上传时间 | 2022-04-20 |
VT检测结果 | 28/58 |
关闭防火墙,将用户最大可用的进程数调整到50000,修改内存参数,最大化利用系统资源。结束竞品挖矿程序,删除文件属性,使文件可以被修改。
图 5‑4 系统资源最大化
下载两个脚本文件,作用是卸载被感染主机上的安全软件。
图 5‑5 卸载安全软件
确保与恶意域名的连通性,创建计划任务持久化。
图 5‑6 创建计划任务
对挖矿程序进行MD5校验。
图 5‑7 MD5校验
通过网络连接确定挖矿程序和Tsunami僵尸程序运行情况,如果没有运行,重新下载并执行。
图 5‑8 下载Tsunami僵尸程序
维持计划任务的正常运行,一旦检测到有计划任务被删除,就会重新执行计划任务。
图 5‑9 维持计划任务运行
从/.ssh/config,.bash_history,/.ssh/known_hosts等主机中存储的SSH密钥、历史记录和配置文件等进行搜索和匹配,来发现攻击目标,并找到与其相对应的身份验证的信息,检查~/.ssh/config、~/.bash_history和.ssh/known_hosts尝试进行横向移动等操作。
图 5‑10 横向移动
5.2.2 bashirc(Tsunami僵尸网络程序)
Tsunami僵尸网络基于Internet中继聊天(IRC)的命令控制服务器操作,在受感染设备的配置中修改DNS服务器设置,使来自物联网设备的流量被重定向到攻击者控制的恶意服务器。Tsunami僵尸网络主要使用下载器下载、利用漏洞、远程登录扫描等方式进行传播。Tsunami僵尸网络程序的主要功能为远程控制、DDoS攻击和其他恶意行为。安天曾在《精准投放Tsunami僵尸网络和“魔铲”挖矿木马的行动分析》中具体分析过Tsunami僵尸网络,在此不再过多分析[1]。
图 5‑11 Tsunami僵尸网络
5.2.3 scan(扫描爆破)
利用扫描工具对内网22端口进行爆破并将结果保存在/tmp/ssh_vuln.txt文件中,筛选过滤到/tmp/ips_check文件中,爆破完成后下载xms(Linux恶意脚本)并执行。
图 5‑12 内网扫描爆破
5.2.4 load(下载Tsunami僵尸网络程序)
下载sshexec和sshpass,如果下载不成功,下载lan.tar.gz,该压缩包中包含Tsunami僵尸网络程序,解压后执行,收集敏感信息。
图 5‑13 收集敏感信息
5.2.5 x86_64(Linux挖矿程序)
经验证,该挖矿程序为开源挖矿程序XMRig改编,无需配置文件即可运行,运行后隐藏自身进程,创建计划任务持久化。
图 5‑14 挖矿程序流量
IoCs |
6A4E5C6EC8EFE777FA85E240A02EB883 |
0BA9E6DCFC7451E386704B2846B7E440 |
093EDA279900756DCE56FC813427A6B4 |
9E47D3A502A7B2BCEC1F1375430CA0EB |
3EDCDE37DCECB1B5A70B727EA36521DE |
9E935BEDB7801200B407FEBDB793951E |
17E55153BE42BFA30BEB2E613F41732E |
4867D53919A2DF7F168BCCE76AD74543 |
FDF3D43F2DC9AF4018B42A192D3D41E7 |
52EC97E2246C28FA92A0C37A510BF67E |
EB2F5E1B8F818CF6A7DAFE78AEA62C93 |
194.38.20.31 |
185.157.160.214 |
209.141.40.190 |
a.oracleservice.top |
hxxp[:]//a.oracleservice.top/xms |
hxxp[:]//a.oracleservice.top/bashirc.i686 |
hxxp[:]//a.oracleservice.top/log4.sh |
hxxp[:]//a.oracleservice.top/armv7l |
hxxp[:]//a.oracleservice.top/wxm.exe |
hxxp[:]//a.oracleservice.top/bashirc. |
hxxp[:]//a.oracleservice.top/bashirc.x86_64 |
hxxp[:]//a.oracleservice.top/scan.sh |
hxxp[:]//a.oracleservice.top/load.sh |
hxxp[:]//a.oracleservice.top/logic.sh |
hxxp[:]//a.oracleservice.top/xms.ps1 |
hxxp[:]//a.oracleservice.top/x86_64 |
hxxp[:]//bash.givemexyz.in |
精准投放Tsunami僵尸网络和“魔铲”挖矿木马的行动分析
https://www.antiy.cn/research/notice&report/research_report/20200424.html