前言:此次应急响应为真实案例,客户反馈无法通过密码登录服务器,疑似服务器被入侵
0x01 如何找回密码?
客户服务器为windows server2019,运维平台为PVE平台;实际上无论是windows系统或者是linux系统,只要磁盘没有加密的情况,都可以通过挂载live盘的模式加载外部系统对密码进行修改;linux修改密码只需要替换掉/etc/shadow 即可覆盖密码;而windows系统则更简单,只需要使用类似大白菜之类的系统工具即可清空系统密码,当然了,没人敢上去就在客户那瞎搞,所以首先当然是把镜像导出来,而pve导出系统镜像为qcow2格式,这个格式是没办法直接在vmare上直接操练的,所以需要借助工具转化一下
qemu-img convert -f qcow2 windows_server_2019.qcow2 -O vmdk windows_server_2019.vmdk
导出后,即可在vmare产品创建一个windows的虚拟机空壳,然后将vmdk磁盘挂载即可,具体过程请大家自行百度,此处不赘述
下图为挂载后正常开机的效果
解锁后确实是无法进入系统的,但是随便点了几下shift后,笔者发现了个有趣的东西
一个疑似shift后门的东西出来了,还是魔改带密码的shift后门,这就不着急改密码了,笔者本来想直接利用FTK进行磁盘挂载,然后将注册表取出来看一下注册表,结果,邪门的事发生了,就是挂载的注册表里竟然没有sethc.exe的键值…
这会不想重置密码都不行了,因为找不到注册表的话就不知道他的密码写在什么位置了
此处借用老白菜的live镜像去挂载系统,这样启动的话直接就可以进老白菜系统,不需要去调bios
但是需要设置一下打开电源进入固件
系统重启后,会自动进入老白菜工具面板,使用密码管理工具,将administrator ,这个时候发现了一个mysql用户,经过与客户沟通,该用户确定并非客户创建
0x02 shift后门在哪里?
置空administrator后,直接可以无密码进入系统了,这个时候再看一下注册表,发现注册表里又有sethc.exe键值了…
根据路径,发现了有意思的东西
从这个注册表劫持文件,可以看出来,该工具加载mysql.bat的文件,用户名当然不是文件里的admin,而是文件名字“mysql”,但是密码是里面的password字段
尝试使用一下他的后门
权限还是system权限,太厉害了集霸们
0x03 mysql用户里有什么?
利用得到的密码登录mysql用户
好好好,好活当赏,这是要挖矿啊
0x04 集霸是通过什么漏洞入侵服务器的
返回到administrator用户,开始翻日志,但是在翻日志之前,看了一眼开放的端口、正在运行的服务和系统资源的占用,发现系统开放了445/3389端口,没有奇怪的外连进程,没有挖矿进程,资源也没有出现波动
啥也没有,但是看端口猜测是暴力破解,server2019也没听说有溢出漏洞(最新的那个RDP溢出暂时不考虑在内,因为这个应急是在演练之前的,嘻嘻嘻)
通过查看系统安全日志,发现在计算机出现异常当天的登录失败日志(id为4625)高达两万五千次
继续筛查4624登录成功日志,发现时间节点 7:27:23 PM ,administrator用户从网络登录到本机(疑似使用SMB网络共享),猜测爆破密码成功
0x05 集霸是什么时候创建的mysql用户?
筛选4720 日志,该日志为创建用户日志
时间 7:28:42 PM ,攻击者使用Administrator创建用户mysql 用户
通过筛选计算机系统安全日志4724/4738发现,在7:28:42 PM 时间节点,攻击者使用administrator用户修改了mysql用户的密码
而后在 7:37:30 PM 发现mysql用户使用远程桌面方式登录桌面(rdp)
筛选4738系统安全日志,发现 7:43:45 PM时间节点,确认administrator密码被篡改,因此发生无法登录的情况
0x06 集霸是什么时候将挖矿工具部署在服务器里的?
查看system日志,7:35:30 PM系统安装了一个可疑服务WinRing0_1_2_0,安装服务文件名为WinRing0x64.sys。通过日志可以得知,挖矿软件位于C:\Users\administrator\Desktop\xmrig-6.21.3下
查看system日志,7:41:24 PM系统安装了一个可疑服务WinRing0_1_2_0,安装服务文件名为WinRing0x64.sys。通过日志可以得知,挖矿软件位于C:\Users\mysql\Desktop\xmrig-6.21.3下
接下来查看application应用日志,发现在5/26/2024 7.36.01 PM运行了xmrig程序,同时该程序由于报错而并未成功运行(windows error reporting),报错表明发生了内存泄漏或资源耗尽预警(type 5,RADAR_PRE_LEAK_64
但是只看到了对应在administrator桌面运行挖矿软件的时间,没有看到mysql对应的运行日志,似乎部署之后就没再管了,当然了,administrator的挖矿软件也已经被删除掉了
事已至此,基本也就确定了,攻击者通过暴力破解登录系统,创建mysql用户,部署shift后门并修改注册表劫持粘连键(并非常规的替换setch.exe设置后门
最后部署挖矿软件,在挖矿软件启动失败后,直接把administrator密码给替换掉了
后续就是帮客户把密码改了,因为拿到了mysql用户的密码,所以直接用粘连键后门就把密码重置了,而后大家懂的都懂