
本篇文章共 6000字+1视频,完全阅读全篇约 105 分钟 州弟学安全,只学有用的知识

本次环境来源于青少年CTF平台2025年8月份月赛,作者:州弟学安全:
自2017年WannaCry勒索病毒爆发后,现如今勒索病毒层出不穷,黑客组织攻击手法和加密器开发手法也越来越变幻无常,勒索家族组织也越来越多,对于这种成本低、回报高的情况,越来越多人走向极端,当我们在实战中遇到勒索事件后应该怎么做?
对于大多数没有接触过实战又想学习的师傅来说,仿真环境是不二之选,但在国内对于此类环境几乎没有,由于本UP州弟学安全,目前在思而听(山东)网络科技有限公司就职,公司主营业务以网络安全教育培训、安全运营与应急响应方向为主,且公司也有公益CTF平台供业内爱好选手训练,所以决定将"勒索排查溯源"做一个系列,以供业内人士及广大爱好者进行训练,来提高网络安全防范能力,勒索不同于攻防,黑客没有底线和技战法,往往会拿到漏洞后第一时间立即加密,甚至大多数项目案例中,在数据恢复成功后,黑客立即二次攻击,继续勒索,这也说明在数据恢复成功后,对于数据备份和中断对外业务系统的重要性,当然这只是在大多数解决项目案例中的一小部分经验,后面系列我会为大家分享勒索组织的各种行为和训练环境
常规排查方法三步走:
排查(确定勒索家族:包含勒索信,加密样本加密后缀、加密器等),确定勒索家族后可定位此家族的一些特征以及后期数据恢复
恢复(寻找相关勒索家族加密器的解密器,尝试破解恢复,有些家族使用的是旧版本的加密器,这些加密器可能存在一些漏洞或使用了对称加密手法,可以寻找是否存在解密器进行数据恢复或手动进行逆向),如没有找到加密器或很难搜到相关加密器的一些信息,则此加密器是最新变种加密器,需专业技术人员进行分析
溯源(单纯备份和数据恢复是不够的,溯源黑客攻击路径更重要,实战中可能会遇到上午数据恢复成功,下午或晚上又被利用漏洞进行二次勒索的情况)所以在此环境中,我们会学习:勒索家族确定->数据恢复->溯源攻击路径

是的,你没看错,上图中就是2017年广为流传的WannaCry勒索病毒,其通过爆发的永恒之蓝漏洞投放加密器并执行加密器,对系统的可执行、可读文件进行加密,造成业务影响和资金损失,很多人没遇到过也见过上面这张图
随着时间的推移和等保制度的完善,越来越多的企业有了完善的备份策略和习惯,现在的勒索组织则会使用"偷数据"的方式在加密前将数据传输至勒索组织服务器以便于后续威胁:"如不交赎金,则公开其数据等",当然如遇到这种情况不建议看到恐吓后立即缴纳赎金,因为勒索组织是没有底线的,立即缴纳只会让其认为你是软柿子,遇到此类情况建议寻找专业的防勒索团队进行处理,比如提到的solar应急响应团队

环境仅供学习参考,思路来源于实战
文中涉及的漏洞及攻击手法仅供学习参考,请勿恶意攻击,造成的后果自行承担
如认为本文中内容及视频对您有所帮助,烦请一键三连、点赞分享

玄机在线靶场:https://xj.edisec.net/challenges/198 (10金币/30分钟)
玄机邀请码获取:关注州弟学安全、发送 邀请码
青少年CTF平台:https://www.qsnctf.com/ 搜索:勒索 (公益免费)
离线环境:https://pan.quark.cn/s/9263f5886cab (需确保本地硬盘空间大于32G)
在线环境优点:方便不占空间,随时可开,无需配置
在线环境缺点:
1. 配置没有本地高凸显开机后卡顿,过一会就会恢复
2. 其次网络延迟波动会造成卡顿现象
3. 收费平台对于没有预算用户不友好,公益平台需适应平台功能(如webvnc情况下传输)
离线环境优点:
1. 只要宿主机配置没问题,就不会造成卡顿
2. 方便教学及培训使用
3. 对于没有预算的用户友好
离线环境缺点:
1. 对于机器硬盘空间配置有要求
2. 下载及安装过程浪费时间
版权作者:思而听(山东)网络科技有限公司、solar应急响应团队、州弟学安全
特别注意:环境中的勒索家族全版本加密器已被 solar应急响应团队 破解
系统:Windows server 2016
账号密码:administrator/Sierting789@
防勒索官网:http://应急响应.com(查询勒索家族及解密器搜索)
必须注意:禁止在本地运行勒索病毒加密器,造成的后果自行承担
环境中恢复了一部分文件作为线索,实际情况中勒索组织不讲武德,几乎会加密所有可运行、可读取文件,增大溯源排查难度
题目:
1. 上机排查提交病毒家族的名称,可访问应急响应.com确定家族名称,以flag{xxx}提交(大小写敏感)
2. 提交勒索病毒预留的ID,以flag{xxxxxx}进行提交
3. 解密并提交桌面中flag.txt.LIVE的flag,以flag{xxxx}提交
4. 提交Windows Defender删除攻击者C2的时间,以flag{2025.1.1_1:10}格式提交
5. 提交攻击者关闭Windows Defender的时间,以flag{2025.1.1_1:10}格式提交
6. 提交攻击者上传C2的绝对路径,格式以flag{C:\xxx\xxx}提交
7. 提交攻击者C2的IP外联地址,格式以flag{xx.x.x.x}提交
8. 提交攻击者加密器绝对路径,格式以flag{C:\xxx\xxx}提交
9. 溯源黑客攻击路径,利用的哪个漏洞并推测验证,提交此业务运行文件的绝对路径,如:flag{C:\xxx\xxx\xxx} 注:此处需具备一些渗透思维和文件特征识别能力 为什么刚上去先排查家族呢?因为我们业务被影响了,业务中断后才发现文件打不开被加密,所以先看看勒索情况,判断后再去溯源,起码有一个大概方向
勒索组织对文件进行加密后,一般会有如下几大特征
1. 更改文件扩展名(部分勒索家族会将文件重命名如加密或编码)
2. 预留勒索信(目的为了告知其联系方式与威胁信息)
3. 加密器(截至目前,大部分勒索家族会在触发加密器后,待文件加密完毕后自删除加密器,防止逆向分析)
4. 预留勒索id(id一般唯一,用于后期数据恢复的凭证)

上图为本环境中被加密的文件,其中flag.txt.LIVE为被加密文件,扩展名改变,FILE RECOVERY_ID_170605242653.txt为加密完毕后预留的勒索信

使用记事本打开flag.txt.LIVE后呈现是乱码加密形式,勒索组织以此来影响业务生产
根据题目描述要求提交勒索家族,知道是哪个家族有什么用?
了解此勒索家族惯用攻击手法,如一些家族喜欢rdp爆破,一些家族喜欢攻击OA等,后期溯源就可以优先侧重于此处排查
此家族之前有无被破解的解密器,是否可以使用被破解的解密器进行恢复

经过在应急响应.com查询后得到此家族为:Live,由于flag设置大小写敏感,最终以查询结果为准,实战中不做要求
倘若在实战中真的遇到勒索事件,先根据此流程进行查询,如没有查询到,可在下方的样本提交根据要求提交信息,后端病毒分析师及时跟进与联系你

因为勒索病毒更新迭代很快,变种病毒也会很多,就像银狐病毒一样
所以第一题的flag为:flag{Live}
在前面提到了勒索id是勒索组织对于数据恢复的一个凭证,一般勒索id会存放在以下位置
勒索信
被加密后的文件名
勒索信文件名

打开勒索信如图所示,给提示id在勒索信文件名中,那本次环境勒索id为:170605242653(形似时间戳)

所以第二题的flag为:flag{170605242653}
前面使用记事本直接打开被加密的文件是呈现加密乱码的情况的,既然可以加密那就存在解密,在一开始的环境描述中也提到过,此LIVE家族的加密器全版本已由solar应急响应团队 破解,所以是存在恢复工具的
访问 应急响应.com 后,在恢复工具搜索:LIVE 关键词

在环境一开始提到了是Live1.0版本,注意:每个版本加密和手法都是不同的

所以直接下载第一个1.0版本恢复工具即可,解压密码是solarsecurity,且通过查看按钮可以看到工具的用法

如下图所示,使用命令行指定路径或文件,一般我是直接把恢复的文件拖动到命令窗口,系统会自动加载路径

回车后恢复成功,打开文件正常显示明文

最终flag为:flag{cf0971c1d17a03823c3db541ea3b4ec2}
此题目主要验证是否具备恢复数据及搜集工具的能力
在Windows Server 2016版本默认安装了Windows defender杀毒软件的,在实战排查中也可以查看是否安装杀毒软件并且有无拦截记录以此作为线索

打开Windows defender后看到目前是关闭状态的,说明极有可能和攻击者有关,然后在历史记录中找到查杀记录

在2025年8月25日10:43分杀软对C:\Users\Administrator\Desktop\Wq12D.exe进行了查杀,判定此程序为cobalt strike
所以此题目的flag为:flag{2025.8.25_10:43}
前面在打开Windows defender后看到是关闭状态的,默认是开启状态,说明被攻击者有意的关闭了,以之前的项目案例为例,某次攻击者在Windows defender将C2加白

当然这些都是可以在Windows事件日志中看到的,比如登录成功ID为4624,登录失败为4625
在C:\Users\Administrator\Desktop\训练环境介绍-必读工具使用 中已经存放了辅助工具FullEventLogView

通过筛选事件ID即可看到相关的详细信息,但是筛选4625时却发现并没有理想的登录失败的日志

这说明系统没有开启审核策略记录日志,这也不符合等保三级的要求,如下图所示
WIN+R->gpedit->计算机配置->Windows设置->安全设置->本次策略->审核策略->审核登录事件

然后接着寻找题目要求的,攻击者关闭Windows defender的时间,Windows默认是记录的,其事件id为5001会记录开启和关闭的日志

时间是2025年8月25日 10:45分对Windows defender进行了关闭
所以本题目的flag为:flag{2025.8.25_10:45}
攻击者在关闭Windows defender后再次上传C2,以达到远程控制的目的,有很多师傅在这个题目中提交的绝对路径是被杀软kill的路径,实际上在桌面并没有发现C2,说明不是这个路径,说明攻击者上传到其它路径了,正常情况下应该怎么排查?
在前面已经知道了Windows defender清除的C2文件名为:Wq12D.exe,而且在环境中已经放了辅助工具everything,他可以遍历在当前机器中的所有文件和目录

直接搜索Wq12D.exe文件名看结果

攻击者将其放到了下载目录中或是在上传到桌面后移动到了下载目录中
还有种可能,攻击者在后续上传木马和之前的文件名不一致,增大溯源难度,这样的话我们可以利用everything对时间进行排序后查找
已知木马为.exe文件,所以在everything中直接搜索.exe扩展名即可
又知道攻击者是在2025年8月25日 10:45关闭的杀软,那就在附近时间排查

所以思路很明确,在时间段内这两个文件最可疑,直接放到沙箱去看

所以第六题的flag为:flag{C:\Users\Administrator\Downloads\Wq12D.exe}
本题考查的是在应急情况下的应变能力和文件排查能力,当然实战中多数攻击者会做到痕清以及伪造某些程序组件,如一次项目中某勒索组织伪造edge浏览器组件尝试躲避增加溯源难度

按照前面提交到沙箱验证的步骤后,触发程序运行后,会自动外联

所以外联地址是192.168.186.2,此处只是仿真,所以没有加真实IP
还有一种办法,仅限于在虚拟环境中测试,千万不要在实战中测试
netstat -nao
在训练环境中执行以上命令,会显示当前开放端口

在触发远控程序后,对192.168.186.2:8099端口进行了连接,SYN请求握手,但是由于此IP不在线,一直请求连接不到,过段时间会超时,再说一句,在实战中不要这么做,不然又被上线了
所以第七题的flag为:flag{192.168.186.2}
这个根据攻击者加密时间开始决定,这里给一个思路,因为已知加密扩展名为.LIVE,所以直接使用everything搜索.LIVE,然后按照修改时间排序

通过排序可知加密时间最早由8月25日11:14分开始,然后接着搜索.exe,因为加密器大多为exe可执行文件,很少有.py等语言类型脚本,所以按照优先级依次排查

在加密开始时间之前逐一排查,接近最近的时间程序及文件命名可疑度依次进行排查,已知Wq12D.exe是远控,那这个document目录下的systime.exe是否为加密器?为了进一步确定,可以丢沙箱确定


所以最终的路径和flag为:flag{C:\UsersAdministrator\Documents\systime.exe}
对此加密器感兴趣,想要分析此加密器逻辑的师傅可以手动逆向或移步至之前的分析文章:
回顾一下之前的排查历史,捋一下时间线
2025.8.25 10:43攻击者尝试上传C2但被Windows defender清除
2025.8.25 10:45攻击者尝试关闭Windows defender成功
2025.8.25 10:48攻击者再次上传C2成功
2025.8.25 11:00攻击者上传加密器成功
2025.8.25 11:15攻击者触发加密器成功开始加密
所以说攻击者是通过哪个漏洞进行的这些操作呢?是rdp爆破成功?还是web服务,还是其它?
在直播中提到:之前曾多次讲过基础,倘若机器一个端口没对外映射或没开启,则可能是因为钓鱼或下载了恶意程序导致的被动勒索,因为交互是依靠端口来做的,就像一间房子,一个口子都没有,怎么进入呢?
netstat -nao
活动连接
协议 本地地址 外部地址 状态 PID
TCP 0.0.0.0:21 0.0.0.0:0 LISTENING 3092
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 964
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 3312
TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 180
TCP 0.0.0.0:5985 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:9988 0.0.0.0:0 LISTENING 1164
TCP 0.0.0.0:12333 0.0.0.0:0 LISTENING 1164
TCP 0.0.0.0:47001 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING 656
TCP 0.0.0.0:49665 0.0.0.0:0 LISTENING 1072
TCP 0.0.0.0:49666 0.0.0.0:0 LISTENING 420
TCP 0.0.0.0:49667 0.0.0.0:0 LISTENING 2108
TCP 0.0.0.0:49670 0.0.0.0:0 LISTENING 792
TCP 0.0.0.0:49671 0.0.0.0:0 LISTENING 800 着重分析以上开放的端口,其中21端口是FTP,猜测是否存在匿名登录获取敏感信息?3389端口为远程连接,3306端口是MySQL,这些都是常见的服务
因为根据日志已知最早的攻击开始时间在8.25日 10:40分左右,先看一下4624的日志


通过筛选登录类型3(网络登录)后看到,在这个时间之前并没有登录成功的日志
然后再看其它的端口是否存在问题,有时候在不确定此端口是什么业务的情况下,访问一下是个好主意

12333端口竟然是若依,这样就把此端口的可疑等级提高了,因为低版本的若依中存在shiro反序列化漏洞,因为若依是Java启动的,一般打包后运行,所以先使用everything搜索.jar、.war会更靠谱一些,这样可定位到文件的路径

定位到最后都在E:\ruoyi目录下,前往此目录,一般会有log文件

但是像这类的日志很难看出利用的漏洞,在实战排查过程中也会遇到这情况,所以在已知对方系统可能存在漏洞的情况下,且日志无法给出明确的攻击痕迹,拿到渗透测试授权后,可按照思路进行渗透测试
经过多年渗透的经验,一般若依shiro验证大多数会在验证码和login登录接口中存在
注意:青少年CTF平台由于是WEBVNC启动的,而非3389端口远程连接,所以在漏洞探测时可能需要本地验证或玄机等方式,或者在青少年ctf平台开启的环境中传入一个非UI类型的Java脚本(环境中Java版本导致找不到UI包),在直播和官方wp中已说明
https://github.com/SummerSec/ShiroAttack2

使用工具爆破成功key和构造链

如果在对靶机进行攻击访问地址时,访问不到的情况,如下图


则可能是系统防火墙自动开启,没有将端口对外映射


将启用改为关闭后即可访问,实战中建议开启防火墙,根据策略调整端口访问

攻击者是怎么关闭的Windows defender的?
之前遇到过这个情况,黑客通过某oa的反序列化漏洞上传C2并退出了某杀软,最后追溯到是powershell关闭的,在搜索和询问了AI以后得到
powershell Set-MpPreference -DisableRealtimeMonitoring $true 以上powershell语句可正常关闭Windows defender,而且大部分安全设备相较于命令执行,反序列化检出能力强度不高,这取决于payload的长度和编码等,尤其是shiro反序列化,利用的过程执行的命令,由于被加密,安全设备无法得知中间做了什么

正常打开Windows defender后,利用前面的powershell命令关闭


所以本题目的flag为:flag{E:\ruoyi\ruoyi-admin.jar}
当然此过程Windows事件日志是可记录的,除非黑客在最后阶段做痕清
在正常排查过程中,大部分勒索家族会在加密完毕后做痕迹清理和加密器自删除,给溯源排查增加难度,更有甚者会删除Windows事件日志,这个时候更考验蓝队工程师对于环境中的应用服务排查能力以及渗透能力,因为当日志被清理后,需要判断哪些服务对外开放且存在漏洞最后给出合理的报告
在目录:C:\Users\Administrator\Desktop\训练环境介绍-必读工具使用 存放了应急溯源处置报告,为思而听(山东)网络科技有限公司正版溯源报告模板,根据自己经验自行填写来完善自己的报告输出能力,最终报告输出如下(已存放至网盘)
