现在,有很多网络犯罪分子都靠着恶意挖矿软件来赚钱,甚至还有很多之前依靠勒索软件谋生的人也加入到了恶意挖矿的行列。
近期,Minerva的研究团队又发现了一种新的挖矿攻击-GhostMiner,这种新型的恶意挖矿软件主要挖的是门罗币,它使用了高级无文件技术,并能够在全球范围内悄无声息地传播。
剖析GhostMiner-如何传播?如何挖矿?
使用了无文件逃逸框架
GhostMiner组件的核心活动就是通过一个已编译的恶意Windows可执行程序实现的。为了避免被检测到,可执行程序使用了两个PowerShell逃逸框架,即Out-CompressedDll和Invoke-ReflectivePEInjection,它们使用了新型的无文件技术来隐藏恶意程序的存在。
其中的每一个组件都使用了不同的PowerShell脚本来启动,这种逃逸技术对于大多数安全产品来说效率是非常高的,因为其中的某些Payload目前还无法被检测到:
下面给出的是编译后可执行文件的直接扫描结果对比,如果它们没有使用这种无文件技术的话,目前有41家厂商可以检测到其恶意Payload:
GhostMiner的传播
Neutrino.ps1可以感染并攻击运行了下列应用程序的服务器:
1.OracleWebLogic(利用漏洞CVE-2017-10271); 2.MSSQL; 3.phpMyAdmin;
恶意软件可以随机探测IP地址,并跟存在漏洞的目标主机每秒钟建立多个新的TCP链接:
为了避免被网络安全工具检测到,这个攻击组件会使用编码后的请求和Base64编码后的响应信息并通过HTTP来与其C2服务器进行交互。消息交换所使用的协议会通过简单的握手来处理请求信息,并执行各种任务,例如感染其他服务器或截取屏幕图像等等。任务完成之后,客户端将会向C2服务器发送信息并请求其他任务:
在下面的样本中,出于保密原因,原始的编码信息已经经过了混淆处理。不过,我们在解码内容的核心元素中保留了关键信息。请求信息(红色部分)包含感染节点中新任务的标识符,响应信息(蓝色部分)会命令恶意软件去寻找并利用WebLogic服务器中的安全漏洞。
其中的referrer头(qq.com)是硬编码的,再加上我们所发现的其他识别符,我们认为此次攻击背后的攻击者很可能是来自中国的。
GhostMiner如何挖矿?
正如我们之前所介绍的那样,挖矿组件使用的是逃逸框架直接从内存中启动的。它使用的是开源XMRig挖矿软件的自定义版本,我们所观察到的通信流量数据如下:
在分析的过程中,我们发现该活动已经持续了大约三个星期了:
根据目前的情况来看,该恶意活动的XMR钱包中大约有1.03个门罗币,价值约为200美金。不过,攻击者很可能还有其他的钱包地址,由于门罗币的匿名性,有些我们还无法检测到。之所以现在GhostMiner的利润还不高,很可能是因为还有其他的攻击者也攻击了相同的服务器,并造成了资源竞争。但是,GhostMiner有它自己消除竞争的方式。
消除恶意挖矿竞争
为了避免资源竞争所造成的攻击利润过低,GhostMiner可以通过一系列分析技术来清除同一主机中的其他恶意挖矿竞争对手。负责检测和移除其他挖矿软件的代码如下:
入侵威胁识别指标IoC
C2服务器IP地址:
代码语言:javascript复制123[.]59[.]68[.]172
哈希(SHA-256)
Neutrino.ps1:
代码语言:javascript复制4b9ce06c6dc82947e888e919c3b8108886f70e5d80a3b601cc6eb3752a1069a1
9a326afeeb2ba80de356992ec72beeab28e4c11966b28a16356b43a397d132e8
WMI.ps1:
代码语言:javascript复制40a507a88ba03b9da3de235c9c0afdfcf7a0473c8704cbb26e16b1b782becd4d
WMI64.ps1:
代码语言:javascript复制8a2bdea733ef3482e8d8f335e6a4e75c690e599a218a392ebac6fcb7c8709b52
相关的门罗币钱包地址:
代码语言:javascript复制43ZSpXdMerQGerimDrUviDN6qP3vkwnkZY1vvzTV22AbLW1oCCBDstNjXqrT3anyZ22j7DEE74GkbVcQFyH2nNiC3fchGfc
Killer脚本:
服务名:
代码语言:javascript复制xWinWpdSrv
SVSHost
MicrosoftTelemetry
lsass
Microsoft
system
Oracleupdate
CLR
sysmgt
gm
WmdnPnSN
Sougoudl
Nationaaal
Natimmonal
Nationaloll
任务名:
代码语言:javascript复制Mysa
Mysa1
Mysa2
Mysa3
ok
OracleJava
OracleJava Update
MicrosoftTelemetry
SpoolerSubSystem Service
OracleProducts Reporter
Updateservice for products
gm
ngm
进程名:
代码语言:javascript复制msinfo
xmrig*
minerd
MinerGate
Carbon
yamm1
upgeade
auto-upgeade
svshost
SystemIIS
SystemIISSec
WindowsUpdater*
WindowsDefender*
update
carss
service
csrsc
cara
javaupd
gxdrv
lsmosee
挖矿相关的服务器端TCP端口:
代码语言:javascript复制1111
2222
3333
4444
5555
6666
7777
8888
9999
14433
14444
45560
65333
55335
挖矿相关的命令行参数:
代码语言:javascript复制*cryptonight*
*stratum *
*--donate-level*
*--max-cpu-usage*
*-px*
*pool.electroneum.hashvault
* 参考来源:minerva-labs,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM