Crypto-Mining(加密货币挖矿)攻击在2018年不断发展和演变。由于加密货币的价值和普及程度的提高,黑客越来越倾向于利用受害者设备的CPU资源来进行加密货币挖矿操作。在整个一年中,我们看到了相关报告和攻击数量的大幅增加。尽管最近加密货币的价值趋于平稳,但这种攻击方法和技术仍然在独创性和有效性方面不断改进。
KingMiner是一种以Windows服务器为目标的Monero-Mining(门罗币挖矿)恶意软件。该恶意软件于2018年6月中旬首次出现,并在随后迅速发布了两个改进版本。由于攻击者采用了多种逃避技术来绕过仿真环境和安全检测,导致一些反病毒引擎针对该恶意软件的检测率明显偏低。根据我们对传感器日志的分析,KingMiner攻击尝试的数量一直处于稳步上升。
攻击流程
根据我们的调查结果,我们确定该恶意软件的目标是Microsoft服务器(主要是IISSQL),并尝试猜测其密码。
一个Windows Scriptlet文件(.sct)会在受害者的设备上被下载并执行。
在执行过程中,该文件执行了以下几个步骤:
l 检测设备的相关CPU架构。
l 如果存在旧版本的payload,则会杀死相关的exe文件进程,并删除旧文件。
l 根据检测到的CPU架构下载一个payload ZIP文件(zip64p.zip)。请注意,这并不是一个真正的ZIP文件,而是一个XML文件,这样做的目的是尝试绕过仿真环境。
图1.HTTP响应中的“zip”payload
l XML payload包括一个Base64 blob,一旦编码,将生成预期的“ZIP”文件。
如上所示,这个ZIP文件包含五个文件:
l config.json-XMRig CPU miner配置文件。
l md5.txt –仅包含字符串“zzz”的文本文件。
l powered.exe (在旧版本中被命名为fix.exe)–主要的可执行文件。
l soundbox.dll/soundbox.dll-包含一些函数的DLL文件,这些函数将由powered.exe导出。
l x.txt/y.png-二进制blob文件。情注意,这不是一个真正的PNG文件。
图2.攻击的第一阶段
图3. config.json-一个XMRig配置文件,包含钱包地址和私有采矿池地址
在仿真环境中,可执行文件不会执行任何操作。
在提取所有文件之后,md5.txt文件(“zzz”)的内容将附加到相关的DLL文件(sandbox.dllactive_desktop_render_x64.dll,两者中的内容相同)。不过,我们还没有看到这种行为会对恶意软件活动产生任何影响。
powered.exe/fix.exe文件被调用并执行,以创建XMRig miner文件和几个值为“Test”的新注册表项。
图4. DLL文件中包含的函数
可执行文件会从DLL文件中调用以下函数:
l ClearDesktopMonitorHook-该函数返回值1。可能会在未来的版本中使用。
l King1-创建一个线程并解码相关二进制blob文件(x.txt/y.png)的内容。结果是一个可执行文件,它是XMRig CPU miner的一个精简版本,只保留了主函数。
DLL文件包含四个附加函数,可能会在未来的版本中使用:
l King2-返回值1。
l King3-返回值1。
l King4-返回值1。
l SetDesktopMonitorHook-调用King1。
图5.函数“king1”,创建一个线程并将二进制blob y.png/x.txt作为参数。
图6.攻击的第二阶段
XMRig CPU Miner正式运行,并耗尽受害者设备的全部CPU资源。
虽然被配置为占用75%的CPU资源,但它实际占用的是100%。
图7:恶意powered.exe文件占用了100%的CPU资源
KingMiner的演变
Check Point的研究人员在KingMiner过去6个月的整个演变过程中,一直在监控它的活动。自首次出现以来,KingMiner已经发布了两个新版本。该恶意软件一直在不断地添加新的功能和逃避技术,以绕过安全检测。
此外,作为该恶意软件不断发展的一部分,我们发现许多占位符被用于未来的操作或即将发布的更新,这将使得该恶意软件更加难以检测。
逃避技术
逃避技术的使用是一次成功攻击的重要组成部分。几种相对简单的机制使得该恶意软件能够绕过常见的仿真环境和安全检测:
l 对32p.zip/64p.zip文件进行混淆处理-ZIP文件包含基本的XML格式数据。在解析后,将显示预期的ZIP文件。
l 主要的可执行文件powered.exe (在旧版本中被命名为fix.exe) ,从DLL文件(sandbox.dll/active_desktop_render_x64.dll)导出函数。仅执行可执行文件,确保活动不被发现。
l 将md5.txt的内容附加到DLL文件(sandbox.dll/active_desktop_render_x64.dll)。
l 将x.txt/y.png的内容解码为可执行文件XMRig CPU miner。
这些逃避技术明显降低了检测率,以下是VirusTotal的检测结果:
威胁情报
KingMiner的运营者使用了私有采矿池来阻止对其活动的任何监控。目前,采矿池的API已经被关闭,所涉及的钱包也没有在任何公共采矿池中使用。我们尚没有能够确定KingMiner使用了哪些域名,因为攻击者似乎采用的是私有域名。然而,我们可以看到攻击目前正在大范围蔓延,从墨西哥到印度,以及挪威和以色列。
总结
KingMiner是一种仍在不断发展的Crypto-Mining恶意软件,它可以绕过常见的安全检测和仿真环境。通过实施简单的逃避技术,攻击者能够增加攻击成功的概率。我们预测这些逃避技术将在2019年继续发展,并成为Crypto-Mining攻击的主要(以及更常见的)组成部分。
IOCs
文件:
SHA256 |
文件 |
VirusTotal检测结果 |
dea32433519c4628deeac802c0f1435a1b0d27d89f1ae5c1729ec7223f9eb04d |
32f.zip |
– |
147d572d7f6664c8adf42ef92e4dbad06c5d21cc820a20163d814c77136cfbab |
64f.zip |
33/61 |
122b7906a359deb22bf777c602ac2619ca5ea156c4937dcdf96583210677db52 |
32x.zip |
– |
c5894d2afc946c064f8c2b58791fe64b48e26f0da5bdcc6ef9ba147f334f43f9 |
64x.zip |
3/56 |
e61fbe58c28720ac4c0a1822d5da9a622a24f352d34e6c1cf5f704dbdd9b9b34 |
32p.zip |
2/54 |
2b54329a13c4f79bea3886a21a7ba5fe19c4418596b774893fdef020e03ed07d |
64p.zip |
2/54 |
f128a63c107c3006ebf448d6ec743d11eb491ecb508e4ce63ba084f9792c25da |
kma.sct |
27/55 |
7357bdf70d042f246de1f830de783499d75e61388eed93d9ce74180ce06524d0 |
kma1.sct |
7/57 |
956a1231726503d840794af61fb6ac9bc326296597eff1c8da636f84e3c32874 |
kma2.sct |
3/53 |
8fa8cdb771d7c66406a7116e9c09ed18030afb1f94430c807782274f3847cb92 |
x86 exe |
4/66 |
a3598d3301630ba64aa7663980296b59df243f5f17ed1b4fd56dcbcab599231c |
x64 exe |
5/63 |
主机:
钱包:
49EHNacRauzgz8cGouhrVChcLyF3XrGLAdWiczJxY1qpX3oed4cGgMUUHHhyR7taGJ1MtvpfJiDf9gugAko4MzXM9DRYzZ1
采矿池:
95[.]179.131.54:9760
w[.]homewrt.com:9760