Crypto-Mining(加密货币挖矿)攻击在2018年不断发展和演变。由于加密货币的价值和普及程度的提高,黑客越来越倾向于利用受害者设备的CPU资源来进行加密货币挖矿操作。网络安全公司Check Point表示,在整个一年中,他们看到了相关报告和攻击数量的大幅增加。尽管最近加密货币的价值趋于平稳,但这种攻击方法和技术仍然在独创性和有效性方面不断改进。

KingMiner是一种针对Windows服务器的Monero-Mining(门罗币挖矿)恶意软件。该恶意软件于2018年6月中旬首次出现,并在随后迅速发布了两个改进版本。由于攻击者采用了多种逃避技术来绕过仿真环境和安全检测,因此一些反病毒引擎针对该恶意软件的检测率都普遍变现为很低。根据Check Point对其传感器日志的分析,KingMiner攻击尝试的数量一直都在稳步上升。

攻击流程

Check Point表示,根据他们的调查结果,他们可以肯定该恶意软件的目标是Microsoft服务器(主要是IIS\SQL),涉及到尝试猜测其密码。

一个Windows Scriptlet文件(.sct)会在受害者的设备上被下载并执行。

在执行过程中,该文件执行了以下几个步骤:

  • 检测设备的相关CPU架构。
  • 如果存在旧版本的攻击文件,则会杀死相关的exe文件进程,并删除这些文件。
  • 根据检测到的CPU架构下载一个payload ZIP文件(zip\64p.zip)。请注意,这并不是一个真正的ZIP文件,而是一个XML文件,被用来尝试绕过仿真环境。

图1.HTTP响应中的“zip”payload

  • XML payload包括一个二进制大对象(blob),一旦经过Base64编码,将生成预期的“ZIP”文件。

如上所示,这个ZIP文件包含五个文件:

  • json-XMRig CPU miner配置文件。
  • txt -仅包含字符串“zzz”的文本文件。
  • exe (在旧版本中被命名为fix.exe)-主要的可执行文件。
  • dll/soundbox.dll-包含一些函数的DLL文件,这些函数将由powered.exe导出。
  • txt/y.png-二进制blob文件。注意,这不是一个真正的PNG文件。

图2.攻击的第一阶段

图3. config.json-一个XMRig配置文件,包含钱包地址和私有采矿池

在仿真环境中,可执行文件不会执行任何操作。

在提取所有文件之后,md5.txt文件(“zzz”)的内容将附加到相关的DLL文件(sandbox.dll\active_desktop_render_x64.dll,两者中的内容相同)。不过,Check Point表示他们还没有看到这种行为对恶意软件活动产生任何影响。

powered.exe/fix.exe文件被调用并执行,以创建XMRig miner文件和几个值为“Test”的新注册表项。

图4. DLL文件中包含的函数

可执行文件会从DLL文件中调用以下函数:

  • ClearDesktopMonitorHook-该函数返回值1。可能会在未来的版本中使用。
  • King1-创建一个线程并解码相关二进制blob文件(txt/y.png)的内容。结果是一个可执行文件,它是XMRig CPU miner的一个精简版本,只保留了主函数。

DLL文件包含四个附加函数,可能会在未来的版本中使用:

  • King2-返回值1。
  • King3-返回值1。
  • King4-返回值1。
  • 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已经发布了两个新版本。该恶意软件一直在不断地添加新的功能和逃避技术,以绕过仿真环境。

此外,作为该恶意软件不断发展的一部分,Check Point发现许多占位符被用于未来的操作或即将发布的更新,这将使得这种恶意软件更加难以检测。

逃避技术

逃避技术的使用是一次成功攻击的重要组成部分。几种相对简单的机制使得该恶意软件能够绕过常见的仿真环境和安全检测方法:

  • 对zip/64p.zip文件进行混淆处理-ZIP文件包含基本的XML格式数据。在解析后,可以看到预期的ZIP文件。
  • 主要的可执行文件,exe (在旧版本中被命名为fix.exe),从DLL文件(sandbox.dll/active_desktop_render_x64.dll)导出函数。仅执行可执行文件,确保任何活动不被发现。
  • 将txt的内容附加到DLL文件(sandbox.dll/active_desktop_render_x64.dll)。
  • 将txt/y.png的内容解码为可执行文件XMRig CPU miner。

这些逃避技术似乎大大降低了检测率,以下是在VirusTotal中的检测结果:

威胁情报

KingMiner的运营者使用了私有采矿池来阻止对其活动的任何监视。目前,采矿池的API已经被关闭,所涉及的钱包也没有在任何公共采矿池中使用。Check Point表示,他们尚没有能够明确KingMiner使用了哪些域名,因为攻击者采用的是私有域名。然而,与之相关的攻击目前正在大范围蔓延,从墨西哥到印度,以及挪威和以色列。

总结

KingMiner是一种仍在不断发展的Crypto-Mining恶意软件,它可以绕过常见的安全检测和仿真环境。通过实施简单的逃避技术,攻击者能够增加攻击成功的概率。Check Point预测,这样的逃避技术将在2019年继续发展,并成为Crypto-Mining攻击的主要(以及更常见的)组成部分。

声明:本文来自黑客视界,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。