第215天:蓝队技能-应急响应篇&挖矿病毒&系统样本家族&威胁情报&异常定性&排查分析&处置封锁

知识点
1、应急响应-挖矿病毒-定性&排查
2、应急响应-挖矿病毒-应急&处置
随着虚拟货币的疯狂炒作,挖矿病毒已经成为不法分子利用最为频繁的攻击方式之一。可以利用个人电脑或服务器进行挖矿,具体现象为CPU拉满,网络阻塞,服务器卡顿等。挖矿病毒主要目的是消耗服务器资源进行挖矿,一般不会直接对服务器有影响,不会动目标服务器
挖矿病毒的大致运行植入原理
0、上传执行(怎么造成,权限是怎么丢失的,一般是漏洞利用)
1、攻击者通过上传执行程序或脚本
2、运行程序或脚本,会清理其他同行程序
3、下载自己的的挖掘程序,并写入权限维持技术
排查方向-如何判定
挖矿病毒的危害在于CPU拉满,网络阻塞,服务器卡顿等,因此我们的排查方向就从此入手
- CPU拉满
- 网络阻塞:挖矿病毒长期和某个地址进行连接,会导致服务器网络卡顿
- 服务器卡顿等
- 一些安全设备识别告警
分析定性
1、通过进程找到文件,文件上传威胁情报平台解析分析
2、通过网络连接情况找到外链,URL&IP上传威胁情报平台解析分析
应急处置
1、排查入口攻击点(借助什么攻击或漏洞进入):如网站攻击、服务器漏洞攻击、内网攻击,搞清楚挖矿病毒是怎么植入过来的
2、及时隔离主机,阻断异常网络通信
3、排查重启生效项(启动项,计划计时任务等),清理病毒程序及其权限维持
一般地,挖矿病毒都能够做到清除,比勒索病毒容易处理
- 挖矿病毒——清理干净
- 勒索病毒——由于使用了加密等手段,一般只能重装,无法清理。相关处置见下节
演示案例
蓝队技能-Web入侵-入口&查杀&攻击链等
见213
蓝队技能-C2后门&权限维持-基线检查&查杀封锁
见214
蓝队技能-挖矿病毒-样本&定性&排查&应急&处置
Update64.exe挖矿病毒演示
挖矿病毒样本未运行时,查看Windows主机的性能,可见CPU、网络使用率等都是正常的

将挖矿病毒样本Update64.exe丢到服务器上并启动,通过进程管理和火绒剑,此时暂未找到病毒痕迹
一般会挖矿病毒自动将病毒程序添加至Windows计划任务、启动项、注册表等(可见前面的权限维持技术),排查时也需要注意
重启环境,发现该程序已经启动

右键单击进程,点击打开程序文件位置,可以访问到程序目录,在目录下就有一个pools.txt文件,这可能是该病毒外连服务器的域名池。
实际上,这些域名就是外连服务器的域名,下面各行字符串就是虚拟货币的钱包地址

将域名上传至微步在线进行情报查询

上面看不到网络连接和资源占用,是因为该样本已经没用了,挖矿功能尤其是通联功能已经失效了,但该样本本身的权限维持操作仍然能执行,将程序伪装成谷歌的某个程序,并把自启动写入到注册表当中,通过火绒剑可以看到

通过进程定位程序文件,只删除注册表项并删除程序,重启服务器查看是否病毒会被清除,重启之后Update64.exe相关进程就没有了,说明已经清除了

xmrig.exe挖矿病毒演示
该挖矿病毒程序运行之后,CPU会直接拉满,另外网络连接没怎么用,这是因为该病毒的外连地址可能已经失效

通过进程管理器定位文件位置,可以看到病毒程序的配置文件,出现了外连地址和虚拟货币钱包地址

通过威胁情报平台查询域名,可知是矿池域名
vkbd的Java挖矿病毒程序演示
该挖矿病毒程序运行之后,CPU也会直接拉满

程序运行界面中也能看到外连域名

配置文件中也能看到外连域名

通过威胁情报平台查询域名,可知是矿池域名

火绒剑查看网络连接情况,可见外连的远程IP地址

该样本本身没有权限维持,在2.bat脚本中提供了几个权限维持的写法
1 | C:\Python37\Doc\nssm.exe install javs C:\Python37\Doc\javs.exe |
在1.bat脚本中提供了0查杀清理的方法
1 | //杀掉进程 |
Linux挖矿病毒-update.sh和xmrig演示
Linux平台的挖矿病毒可大致分2类
.sh脚本文件:其在目标主机上之后需要运行才能执行,分析时如果脚本未做加密,可以直接看到脚本代码进行分析- 程序文件:即已经编译好的Linux可执行文件,在目标主机上可以直接运行,分析时需要逆向
Linux平台挖矿病毒的操作一般有
1、清理同行样本
2、下载自己样本
3、样本写权限维持
使用top命令查看当前进程占用情况

执行挖矿病毒后查看进程占用情况,可以看到CPU直接拉满了

查看网络连接,发现和某个外网地址通联

该地址实际上是写到程序配置文件当中的

如下两个靶场环境,我们已经拿到受攻击的主机镜像,如何进行挖矿病毒的定性、处置以及修复,完成应急响应
靶场演示-Windows-Server 2022 挖矿事件
Administrator / zgsf@123
参考:https://mp.weixin.qq.com/s/Z789QrPTAopCc7RftAK1QQ
1、如何定性为挖矿事件
运行虚拟机,进入系统后,可看到,挖矿病毒程序已经开始运行

任务管理器排查,可见CPU占用已经拉满了

而且某个程序资源占用异常

查看网络连接情况,可以看到大量异常网络连接

定位到程序位置目录,打开config.json文件,看下是否是挖矿病毒的配置文件

威胁情报查询域名,可以确定是矿池地址

至此,已经可以定性这是一个挖矿病毒,接下来需要做的是清除挖矿病毒以及找到攻击点,而且先后顺序是应当先找到攻击点(漏洞点),修补之后再清除挖矿病毒,以免先清理之后,攻击者持续化攻击再次上传进来
2、处置挖矿攻击入口点
我们分析挖矿病毒程序文件的时间线,xmrig.exe文件的落地时间是2024年8月18日15:05,因此攻击时间应该在这之前
对于攻击线索的排查思路大致如下:
排查服务器的资产信息:看服务器上有无网站、开了什么东西,从攻击者角度看哪个点最容易受到攻击,如web漏洞、爆破弱口令、钓鱼攻击、内网横向攻击等
对这台靶机而言
- 是否web服务器:通过查看端口、中间件安装发现没有网站
- 是否内网横向:由于是单机,排除内网横向攻击过来
- 是否遭受钓鱼:看它是不是网上乱下东西把后门程序下载下来了
- 是否爆破攻击:查看系统日志,看是否存在爆破登录进来放置了后门
该主机实际上是爆破事件,该主机开放的135、445、3389端口都是安全风险极高的端口

Windows系统中,135、445和3389这三个端口承担着重要的网络通信功能,但也常成为安全关注的焦点。
| 端口号 | 主要功能 | 关联协议/服务 | 常见用途 | 主要安全风险 |
|---|---|---|---|---|
| 135 | 远程过程调用 (RPC) 的端点映射器,负责协调程序在远程计算机上的通信。 | RPC / DCOM | 为分布式应用程序提供通信基础,例如一些系统管理工具(如WMIC)依赖它进行远程操作。 | 历史上是“冲击波”等病毒的攻击目标,利用RPC服务的漏洞执行远程代码。 |
| 445 | 文件共享、打印机共享。提供基于SMB协议的直接资源共享,无需依赖旧的NetBIOS协议。 | SMB (Server Message Block) | 在局域网内访问共享文件夹和打印机;是许多远程管理工具(如PsExec)的传输通道。 | 是“永恒之蓝”(WannaCry勒索病毒利用的漏洞)等攻击的主要入口,危害极大。 |
| 3389 | 远程桌面连接。允许用户远程登录并图形化操作计算机桌面。 | RDP (Remote Desktop Protocol) | 系统管理员远程维护服务器;用户远程办公,访问公司或家里的电脑。 | 常遭受暴力破解(尝试弱密码攻击)和基于RDP协议漏洞的攻击(如CVE-2019-0708,即“BlueKeep”)。 |
查看该主机的日志
- Windows登录日志在:计算机管理——系统工具——事件查看器——Windows日志——安全
- 应用程序的执行日志在:计算机管理——系统工具——事件查看器——Windows日志——应用程序

我们主要查看登录成功的日志记录,尤其是登录失败和登录成功的临界点日志,这符合攻击点的迹象。可以看到大量登录失败后,突然出现了登录成功

查看详细日志信息,可以看到是远程主机在爆破本机的用户名和密码,日志中显示了远程主机的主机名和IP地址(都不是我们本机的主机名和IP地址)

由此我们定性,这是一起爆破事件,也确定了攻击点,下面要对攻击点(脆弱点)进行封堵
3、修复攻击入口点隐患
对爆破而言,主要封堵手段是:
- 开防火墙:拉黑攻击IP地址
- 禁用高危端口通信:禁用135、145、3389通信
- 修改用户口令:不要弱口令
- 增加密码验证次数
4、处置挖矿服务及任务
在任务管理器结束挖矿进程,发现结束后该程序立即重启,这大概率是计划任务导致,下面我们查找相关计划任务等权限维持技术
在计划任务中,有一个程序在任何用户登录时执行,比较可疑,程序地址指向
C:\Users\Administrator\AppData\systems.bat

删除该计划任务后,再在任务管理器中结束挖矿进程,发现仍然会重启,应该还有其他权限维持技术
下面我们查找是否作为启动项注册在了系统服务里面,在计算机管理——服务和应用程序——服务当中,一般没有描述信息的服务是比较可疑的,可以找到可疑服务

该服务指向C:\Users\Administrator\c3poolnssm.exe程序

我们将此服务停止掉并禁用,然后使用命令将服务也删除掉(图形化界面无法删除任务),此时再次在任务管理器结束挖矿进程,发现进程消失了,服务器资源占用也恢复正常

再删掉程序文件,如果能够直接删掉,说明文件未被占用了——可以直接删除

重启服务器,发现挖矿病毒程序仍然会自启,说明清理不彻底


运行msconfig查看系统配置,发现该程序配置了服务,即说明上面禁用的服务重新启动了

查看服务项,发现该服务再次出现

停止并禁用此项服务,在目录C:\Users\Administrator\AppData下发现了一个脚本文件systems.bat,就是这个脚本导致的,这里一并删除,清空回收站,再次重启服务器,发现勒索病毒程序不再运行,清理干净了
靶场演示-Linux Centos 挖矿事件
root / 1qaz2wsx3edc
环境受限,参考下面文章进行Linux挖矿病毒事件的排查及应急响应,演示略
参考:https://mp.weixin.qq.com/s/OuzkbDRVqeNmH_kgptjwug
1、如何定性为挖矿事件
2、处置挖矿服务及任务
3、处置挖矿攻击入口点
4、修复攻击入口点隐患