最近,网络安全公司趋势科技(Trend Micro)的研究人员发现了GhostMiner加密货币挖矿病毒的一个新变种。该病毒不仅能够武器化Windows管理规范(Windows management instrument,WMI)对象,而且还能够杀死其他挖矿病毒的进程,以便实现“无文件”驻留以及独占受感染计算机资源。
分析表明,GhostMiner的目标是挖掘门罗币,并会利用MSSQL、phpMyAdmin和Oracle WebLogic的多个漏洞来查找并感染未及时安装相应补丁的计算机。
GhostMiner的详细信息
首先,它会利用WMI事件订阅(WMI Event Subscriptions)在受感染的计算机上实现长久驻留以及执行任意代码。
然后,它还将在 root\Default命名空间安装一个名为“PowerShell_Command”的WMI类,该WMI类包含两个条目——包含Base-64编码函数的Command 和CCBot。
当Event Consumer被触发时,它将从Command和CCBot中读取函数。
Command脚本执行后,会执行以下操作:
除上述函数外,Command脚本还拥有一个WMI_Killer函数,该函数的作用是终止正在运行的进程以及删除与其他已知挖矿病毒相关的计划任务和服务,例如:
1. Mykings
2. PowerGhost
3. PCASTLE
4. BULEHERO
5. 其他MALXMR变种,包括BlackSquid
此外,WMI_Killer 还会终止其他已知挖矿病毒常用端口的TCP通信。
另一个Command脚本函数WMI_CheckHosts能够修改受感染计算机的host文件,以及修改与其他已知挖矿病毒相关的条目。
同时,CCBOT条目会使用两个IP地址(118[.]24[.]63[.]208和103[.]105[.]59[.]68)作为C2服务器——使用Base-64对发送的命令进行编码,使用ROT-13对接收的命令进行解码。
除Command 和CCBot外,PowerShell_Command类还含有以下对象:
- Miner :<Base-64编码的二进制代码>
- Ver :<版本号>(当前版本号是v2.13.0)
- mPId :<正在运行的挖矿病毒的进程ID>
- nPId :<安装程序的进程ID>
Miner是一个64位的有效载荷,在对Command进行解码和执行时释放。在释放有效载荷之前,GhostMiner会确定root驱动器上的可用磁盘空间。如果可用空间小于1 GB,它将释放一个10 MB大小的有效载荷。否则,它将释放一个100 MB大小的有效载荷。然后,有效载荷将被被保存为“C:\Windows\Temp\lsass.exe”。
接下来,有效载荷将执行以下命令,开始挖矿。
Takeown.exe/f C:\Windows\Temp
iCACLs.exeC:\Windows\Temp /Reset /T /C
iCACLs.exeC:\Windows\Temp /Grant Everyone:F /T /C
iCACLs.exeC:\Windows\Temp\lsass.exe /E /G Everyone:F /C
NetSHFirewall Add AllowedProgram C:\Windows\Temp\lsass.exe “Windows Update”
Start-Process–FilePath C:\Windows\Temp\lsass.exe –WindowStyle Hidden –PassThru
结论
如今,越来越多的网络犯罪分子开始借助加密货币挖矿病毒来赚钱,甚至有很多此前靠勒索软件谋生的人也加入到了恶意挖矿这个行列。
能够利用WMI对象实现“无文件”驻留,能够执行各种检查来杀死竞争对手, GhostMiner挖矿病毒必然会在今后很长的一段时间里继续深受网络犯罪分子的喜爱。