在这个系列的第一篇,我们讨论了MyKings僵尸网路的一个剪贴簿盗窃者。在本系列的第二部分中,我们将详细介绍一个非常普遍的AutoIt下载工具恶意软体家族,我们称之为CoinHelper,这个家族被用于大规模的虚拟货币挖矿活动。自2021年初以来,Avast已经保护了全球超过125,000名用户免受此威胁。
CoinHelper通常和破解的软体安装包捆绑在一起,比如WinRAR和游戏作弊软体。
关于游戏作弊软体,我们看到它与一些最受欢迎和知名的游戏捆绑在一起,包括(但不限于):Extrim和Anxious(《反恐精英:全球攻势》作弊)、《Cyberpunk2077》训练器(《Cyberpunk 2077》作弊)、PUBG和CoD作弊,以及Minecraft。我们还在不官方来源的Windows 11ISO映像中发现了这一威胁(如我们在推特上)。我们甚至看到这一威胁与干净的软体(如Logitech网路摄影机的驱动程式)捆绑在一起。总的来说,迄今为止,我们已经看到CoinHelper与超过2,700种不同的软体捆绑,包括游戏、游戏作弊、安全软体、实用工具、清洁和恶意应用程式。
我们的研究使我们注意到,这些下载工具的扩散也与MyKings的剪贴簿盗窃者有效载荷有关,如我们在前一部分的中描述。但我们无法将CoinHelper归因于MyKings僵尸网路,事实上根据不同的感染来源数量,我们相信CoinHelper是利用MyKings的剪贴簿盗窃者作为额外的恶意软体投递系统。
我们在去年的一些博客文章中找到了一些关于这些AutoIt下载工具的提及。其中一个最显著的例子是的详细说明,它描述了一个捆绑到Zoom通讯工具(从不官方来源下载)的AutoIt下载工具样本,这发生在COVID-19疫情的早期,数百万新用户涌入Zoom。另一个例子是的文章,提到一种新的XMRig挖矿者下载工具。
在这篇文章中,我们将详细分析CoinHelper的最新版本,讨论这个恶意软体活动,描述它的所有组成部分,并研究最常与该恶意软体捆绑的应用程序,还有展示恶意软体的传播方式。我们还概述了它在被感染系统上进行的一些数据收集,以便映射感染的受害者。
活动概述
自2020年初以来,我们已经看到超过220,000次尝试感染我们的用户,CoinHelper的目标主要集中在俄罗斯(83,000次)。其次是乌克兰,超过42,000名用户受到攻击。
2020年初至今的目标国家地图
财务收益
CoinHelper的主要目标之一是在被感染的计算机上安装虚拟货币挖矿软体,利用受害者计算机的资源(电力和计算能力)为攻击者产生收益。
虽然我们观察到多种虚拟货币,包括以太坊和比特币,但有一种特别突出——Monero。在从恶意软体中提取的377个加密钱包地址中,311个是通过虚拟货币挖矿池挖掘Monero。罪犯选择Monero的原因显而易见。首先,这种加密货币旨在保持私密,这意味著追踪交易、账户所有者,甚至被偷走和/或挖掘的金额都相对困难。其次,这种加密货币目前拥有不错的价值——1个XMR约可兑换240美元(截至2021-11-29)。
尽管Monero旨在保持匿名,但由于地址的错误使用以及挖矿池的运作机制,我们能更深入了解恶意软体作者的Monero挖矿运作及其能够获得的收益。
为了确保更稳定的收入,挖矿者被配置为使用Monero挖矿池。挖矿池通常被用于创建一个更大、更强大的计算节点,以便一起合作寻找合适的哈希并获取相应的奖励。由于寻找合适哈希的过程是随机的,因此猜的次数越多,成功的几率就越大。当挖矿池获得奖励时,这些收入会根据各自的算力份额进行分配。使用挖矿池对于恶意软体作者来说非常方便,因为这些池的运作是有限时间的,这给了他们更大机会在被发现和根除之前成功挖掘虚拟货币。
总共我们注册了311个用于AutoIt下载的Monero地址,这些地址被使用于超过15个不同的Monero挖矿池,而我们的数据和研究确认挖矿活动其实还更大,很多地址在多个池上使用。进一步深入挖矿池提供的数据,我们能确认截至2021-11-29,作者仅通过挖矿获得了超过1,216XMR,这转换为超过290,000美元。
除了Monero地址,我们还注册了54个比特币地址和5个以太坊地址。查看这些地址后,我们可以得出结论,这些地址获得了以下金额:
加密货币 | 收入(美元) | 收入(加密货币) | 钱包数量
—|—|—|—
Monero| 292,006.08| 1,216.692 [XMR]| 311
比特币| 46,245.37| 0.796 [BTC]| 54
以太坊| 1,443.41| 0.327 [ETH]| 5
(截至2021-11-29的财务收益表)
这使得这种恶意软体的总收益为339,694.86美元(截至2021-11-29)。上述表格中的数额是比特币和以太坊钱包的总收入,因此我们不能排除部分资金来自其他恶意活动,但我们认为即使这些活动也是恶意的。从我们收集的数据中可以看出,此活动的主要焦点是挖掘Monero,攻击者使用的钱包地址大约多了五倍,获利也多了六倍。
技术分析
传递有效载荷
让我们接著在的最后一段进行讨论。如我们所知,剪贴簿盗窃者可以交换受害者剪贴簿中的复制和粘贴的钱包地址,以及根据恶意软体的配置交换其他链接和信息。这些链接之一是https://yadi[.]sk/d/cQrSKI0591KwOg
。
在下载并解压该档案(密码为gh2018
)后,一个新的样本Launcher.exe
被安装到c1a4565052f27a8191676afc9db9bfb79881d0a5111f75f68b35c4da5be1f385
。请注意,这种方法是MyKings剪贴簿盗窃者非常特定的,并需要用户的互动。在其他更常见的情况下,用户从互联网获取整个捆绑安装程序,无意中在安装预期软件时执行AutoIt。
这个样本是编译的AutoIt脚本的第一阶段,我们称之为CoinHelper,这个工具提供所有必要的持久性、注入、安全软体检查以及当然的下载附加恶意软体到受感染的计算机。
虽然这个样本包含了这些AutoIt下载工具几乎所有最新的功能,但它不是最新版本,缺失了一些功能。因此,我们决定使用一个更新的(但非常相似的)版本,SHA为83a64c598d9a10f3a19eabed41e58f0be407ecbd19bb4c560796a10ec5fccdbf
,并详细描述所有功能于此。
感染链概述
探索第一阶段
让我们深入研究更近期的样本。这个样本通常在用户的计算机上以start.exe
的名称下载,并持有Chrome图示。仔细一看,这是一个编译的AutoIt二进制文件。
在从样本中提取出AutoIt脚本后,我们可以看到额外的组件:
asacpiex.dll
CL_Debug_Log.txt
glue\ChromeSetup.exe
CL_Debug_Log.txt
是一个独立的7zip清洁可执行文件,而asacpiex.dll
则是一个损坏(修改)的7zip压缩文件,内含恶意软体的第二阶段。稍后我们将修复这个压缩文件并查看其内容,但首先让我们集中于提取的AutoIt脚本。上面列表中的最后一个二进制文件位于glue
资料夹内,是CoinHelper内所有捆绑应用程序的许多可能性之一。在这个案例中,我们目睹了一个干净的Chrome浏览器安装程序。如果您有兴趣看看通常与CoinHelper捆绑在一起的其他应用程序,详细信息参见捆绑应用程序概述。
粗野的欢迎
AutoIt脚本是非常易读的。嗯,也许甚至有些过于直白,考虑到一开始的粗俗语言。请注意,Region
/
EndRegion
是SciTE文本编辑器的功能,用来标记代码区域。然而在这个案例中,该脚本以EndRegion
子句开头,一些知名的AutoIt反编译器(例如Exe2Aut
(v0.10))在这方面相当艰难,根本无法反编译此脚本,有效地只显示粗野的欢迎。相比之下,myAut2Exe (v2.12)例如就没有这些问题。
我们还可以看到这段程式码的开头进行了恶意软体的配置,首先检查是否存在一个互斥量QPRZ3bWvXh
(函数名为_singleton
),然后配置排程任务。如上面的代码所示,SystemCheck
排程任务以一个名为Helper.exe
的微软应用程序的身份出现。然而,微软并没有提供这种名称的工具。该排程任务用于执行恶意软体,进行持久化操作。
asacpiex.dll
档案的修改是将档案的前五个位元组设置为0,这可以轻松恢复以反映正常的7zip压缩档头:37 7A BC AF27
。脚本还替换了更多位元组,但这并不是必要的。
在我们更深入探讨从压缩文件中提取的内容(细心的读者早已注意到密码为JDQJndnqwdnqw2139dn21n3b312idDQDB
)之前,让我们专注于这个脚本的其余部分。我们将在第二阶段探索部分中继续解压asacpiex.dll
。
在上面的代码中,我们还看到ChromeSetup.exe
放置在glue
资料夹中。这个资料夹(有时叫作new
)包含了恶意软体捆绑在一起的原始应用程序。在我们的分析中,这是一个干净的Chrome浏览器安装程序,也在这个阶段执行以保持整个捆绑的预期行为。
我们遇到了许多不同的应用程序与CoinHelper捆绑在一起。关于这些捆绑软体的研究提供在一个独立的子部分捆绑应用程序概述中。
映射受害者
除了修复损坏的压缩包、执行第二阶段和确保持久性之外,第一阶段还具有一个相当简单但有效的附加功能。
该恶意软体利用公共服务,如IP日志,来收集受害者的信息。IP日志基本上是URL缩短服务,通常提供有关单击缩短链接的用户的综合统计数据。
此外,正如我们在这篇博客文章中将进一步看到的,攻击者还收集受害者的信息,专注于受害者的操作系统、安装的RAM数量、CPU和显卡信息,以及系统上存在的安全解决方案。所有收集的信息都被格式化并连接成一个字符串。
这个字符串然后通过GET请求发送到一个硬编码的URL地址,形式如用户代理。在我们的样本中,硬编码的URL看起来是https://2no[.]co/1wbYc7
。
请注意,这类URL有时也被用于CoinHelper的第二阶段。在我们的数据集中,我们发现了675个不同的URL,恶意软体将数据发送至这些地址。
由于攻击者经常使用无需身份验证的公共服务,我们其实可以窥探进去,了解他们的视角。底线是他们对不同的感染渠道(来自不官方软体来源的捆绑安装程序、Torrent、MyKings僵尸网等)进行统计评估,有效地试图关注拥有高档计算机的人,以及了解世界各地使用哪些防病毒和/或安全解决方案。
举个例子,我们可以看到来自许多仍在运行的链接上的信息,这些信息包含了单击的日期和时间、IP地址(已匿名化)和ISP、对应的位置、使用的网页浏览器,还有当然被收集的用户代理字符串。
攻击者对受感染受害者的视角(黑色方块为匿名的IP地址)
攻击者还可以在地图中查看受害者的地理位置。
攻击者对受感染受害者的地理信息视图
在下面的部分中,读者可以找到有关如何在恶意软体的第一阶段获取信息的更多细节,以及有关收集的数据的进一步信息。
检查CPU
恶意软体执行两种变体的shellcode之一(x86和x64),以十六进制形式表示:
0x5589E5538B45088B4D0C31DB31D20FA28B6D10894500895D04894D0889550C5B5DC3
0x5389C889D131DB31D20FA26741890067418958046741894808674189500C5BC3
当我们反弹这些shellcode时,可以看到常见的cpuid
检查,返回所有其值(寄存器EAX
、EBX
、ECX
、EDX
)。因此,这个恶意软体实际上收集了受害者当前处理器的所有信息,包括其型号和功能。
x86 CPUID检查
x64 CPUID检查
所有信息被解析并提取了特定功能。实际上,恶意软体中的功能列表与的Wikipedia页面完全一致,确切地指出攻击者受到的启发。
尽管所有信息都被收集,但实际上只检查了AES指令集
位元组——如果处理器支持该指令集并且为x64,则仅在这种情况下安装最终阶段的x64位版本(虚拟货币挖矿者)。否则将使用x86版本。
正如我们提到的,剩余的信息被收集,但实际上并未在代码中使用。
CPU和显卡信息检查
CPUID检查并不是唯一一种对受害者系统进行硬体检查的方式。还使用了两个其他WMI查询以获取受害者的处理器和显卡名称:
SELECT * FROM Win32_Processor
SELECT * FROM Win32_VideoController
此外,该恶意软体使用GetSystemInfo
收集SYSTEM_INFO
结构,以检查受害者CPU的核心数。
安全检查
该脚本还检查正在运行的进程,寻找机器上存在的安全解决方案。这些信息又一次是“仅”记录并发送到IP日志服务器——对这些信息没有其他操作(例如修改恶意软体的功能)。
所有检查过的AV /安全解决方案及其进程的完整列表见附录。
探索第二阶段–asacpiex.dll
现在,让我们深入研究恶意软体的第二阶段。在修复asacpiex.dll
压缩文件后,其被保存为CR_Debug_Log.txt
到Temp
资料夹。
该恶意软体使用密码JDQJndnqwdnqw2139dn21n3b312idDQDB
来解压该压缩文件。这是这些AutoIt下载工具中最常见的密码。不过它并不是唯一的,我们到目前为止统计了另外两个密码:
dkwqdqw9324328NDQDN@@!)(#($%&^!ND21
jDWQJkdqkwdqo2m@mdwmsxPAS,sq%
解压后会显示两个额外的文件:
32.exe
64.exe
根据操作系统的架构以及AES指令集是否可用,其中一个文件会被复制到
C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Helper.exe
并执行(通过排程任务)。
这两个文件再次是编译的AutoIt脚本,包含将进一步有效载荷以虚拟货币挖矿者的形式分发给受害者的功能,通过Tor网路。
经过解编译后我们可以看到,这两个输出脚本十分相似。唯一的区别是,x64版本还试图利用用户的显示卡如果可能的话进行虚拟货币挖矿,而不仅仅是CPU。以下文本将重点放在x64版本上,因为它包含更多的功能。
尽管Helper.exe
毫无疑问是最常见的恶意软体名称,这并不是唯一的选择。我们在野外看到的其他选项有:
fuck.exe
Helperr.exe
svchost.exe
System.exe
system32.exe
WAPDWA;DJ.exe
WorkerB.exe
Helper.exe
如我们之前提到的,Helper.exe
下载工具的主要目标是通过Tor网路将XMRig虚拟货币挖矿者下载到受害者的系统上。虚拟货币挖矿者根据脚本中存在的硬编码配置进行执行。
Helper.exe
还拥有多种其他功能,如在受害者的PC上执行几个系统检查、注入自身到%WINDIR%\System32\attrib.exe
系统二进制文件中、更检查系统的“空闲”状态以加强挖矿,等等。现在让我们看看这些功能是如何运作的。
通过Tor网路下载虚拟币挖矿者
该下载工具的主要目的是在受感染的系统上下载有效载荷,在我们的案例中就是虚拟币挖矿者。为此,恶意软体执行了几个准备行动,以设置所需的环境。
首先,该恶意软体在其内容中包含两个额外的文件,以十六进制形式表示。第一次是一个干净的7zip二进制文件(但与CL_Debug_Log.txt
不同),第二次是一个7zip压缩档,内含干净的Tor二进制文件和相应库:
libcrypto-1_1-x64.dll
libevent-2-1-7.dll
libevent_core-2-1-7.dll
libevent_extra-2-1-7.dll
libgcc_s_seh-1.dll
libssl-1_1-x64.dll
libssp-0.dll
libwinpthread-1.dll
tor.exe
zlib1.dll
要能解压Tor,需使用密码DxSqsNKKOxqPrM4Y3xeK
。此密码也被用于解压每个下载的虚拟货币挖矿者,稍后我们将会涉及到。
执行Tor后,它在本地主机(127.0.0.1
)的9303端口上监听并等待请求。为了避免混淆,请注意,这次的执行是隐藏的,因为tor.exe
并不应与Tor浏览器混淆。tor.exe
是一个提供Tor路由(没有GUI)的进程。在常见的Tor浏览器安装中,它通常可以在\<Tor浏览器根目录>\Browser\TorBrowser\Tor\tor.exe
中找到。
脚本还包含几个Base64编码的Tor地址,用作C&C伺服器,并尝试看看哪个是可用的。这是通过初始化SOCKS4通信进行的,发送的请求以十六进制形式表示:
04 01 00 50 00 00 00 FF 00 $host 00
其中$host
是请求的伺服器地址。
该恶意软体期望一个标准的协议回应,仅当回应包含0x5A
字节,该恶意软体才会继续与伺服器通信。
位元组 | 含义
—|—
0x5A| 请求获得许可
0x5B| 请求被拒绝或失败
0x5C| 请求失败,因为客户端未运行identd(或伺服器无法访问)
0x5D| 请求失败,因为客户端的identd无法确认请求中的用户ID
来源: https://en.wikipedia.org/wiki/SOCKS
Tor地址的列表在多个样本中有所不同。目前为止,我们已经看到24个唯一的C&C伺服器(请查看我们的IoC库以获取)。然而,在撰写本文时,仅有的两台伺服器仍然活动:
2qepteituvpy42gggxxqaaeozppjagsu5xz2zdsbugt3425t2mbjvbad[.]onion
jbadd74iobimuuuvsgm5xdshpzk4vxuh35egd7c3ivll3wj5lc6tjxqd[.]onion
如果我们用Tor浏览器访问这个伺服器,可以看到一个默认的Windows Server登陆页面,下面的图示展示了这一点。请注意,这是MyKingsC&Cs非常常见的登陆页面。然而,仅仅这一事实并不足以将CoinHelper归因于MyKings。
默认的WindowsServer登陆页面。这张图像在MyKings C&C伺服器上也常见,但这并不足以归因。
该恶意软体可以从活动伺服器下载四个文件,这些文件位于“public”子文件夹中:
public/upd.txt
public/64/64.txt
(或public/32/32.txt
,如果使用的是“32位版本”的脚本)public/vc/amd.txt
public/vc/nvidia.txt
64.txt
(32.txt
)、amd.txt
和nvidia.txt
都是编码和压缩的XMRig虚拟货币挖矿者,无论是CPU还是相应的GPU显卡。
upd.txt
是一个纯文字档案,包含由_
和!
符号界定的版本号,例如_!1!_
。恶意软体询问伺服器当前版本,如果版本较新,所有虚拟货币挖矿者将被更新(重新下载)。
虚拟货币挖矿者会以十六进制字符串的形式从C&C下载,以_!END!_
结尾。去除结尾的桩子后,这串字符串被解码,我们就得到一个7zip压缩文件。再次需要使用密码DxSqsNKKOxqPrM4Y3xeK
来解压。
解压后,我们可以获得以下文件:
SysBackup.txt
– 用于CPU挖矿者(32位和64位)SysBackupA.txt
– 当检测到AMD GPU时SysBackupN.txt
– 当检测到NVIDIA GPU时
这些文件再次以十六进制形式出现,这次以0x
前缀开头,且没有结尾的桩子。
此外,还可以找到一些其他与“SysBackup
”文件相关的文件,以确保挖矿功能和最佳的挖矿效率(例如,NVIDIA显卡的xmrig-
)。
cuda.dll
下载过程可以在以下视觉化中看到:
虚拟货币挖矿
虚拟货币挖矿(以及7zip解压缩)是通过过程注入进行的。CPU虚拟货币挖矿通过注入一个新创建的、暂停的%WINDIR%\System32\attrib.exe
进程进行。
所有其他组件的执行,比如GPU挖矿或从Tor下载的虚拟货币挖矿者的解压缩,是通过注入到自身来实现的,这意味著使用一个新的暂停的Helper.exe
实例来进行注入。当支持GPU挖矿时,一旦如此,CPU和GPU将并行执行。
请注意,这次的注入使用的是一个公开的AutoIt注入器,这样作者选择了复制 + 粘贴的方式,而不是重新发明轮子。
根据我们的研究,我们仅见到XMRig被用作最终的虚拟货币挖矿有效载荷。该恶意软体使用一些常见参数执行它,值得一提的一个参数是设定挖矿伺服器的密码“-p
”。在标准情况下,密码并不重要,因此恶意软体作者通常使用“x
”作为密码。然而在这种情况下,这个恶意软体生成受害者的GUID,并将其附加到通常的“x
”后面。
GUID是通过将来自下列WMI查询的值拼接而成的:
SELECT * FROM Win32_ComputerSystemProduct
SELECT * FROM Win32_BIOS
SELECT * FROM Win32_Processor
SELECT * FROM Win32_PhysicalMedia
使用哪一个查询是由AutoIt脚本的配置决定的。GUID是通过MD5对获取的信息进行哈希运算生成的,并按标准GUID字符串格式化:
/\{[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}\}/
透过这种方式,恶意软体作者能够实际计算出正在挖矿的精确受害者数量,因为所有的挖磁都将通过唯一的密码执行,将其作为“工作者”(=受害者)的ID传递给池中。
持久性
如同第一阶段,在第二阶段的开始,恶意软体会检查特定的互斥量,并在必要时创建:
QPRZ1bWvXh
QPRZ1bWvXh2
如我们所见,与第一阶段相比,互斥量之间的数字仅变更。第二个互斥量随著一个常数的添加而变化。我们还看到QPRZ2bWvXh
也被使用,同样中间数字有所变更。
为了保持隐身以便延续时间更长,该恶意软体使用原生的AutoItProcessExists
函数检查几个进程,以寻找任何情境监控和分析工具:
aida64.exe
AnVir.exe
anvir64.exe
GPU-Z.exe
HWiNFO32.exe
HWiNFO64.exe
i7RealTempGT.exe
OpenHardwareMonitor.exe
pchunter64.exe
perfmon.exe
ProcessHacker.exe
ProcessLasso.exe
procexp.exe
procexp64.exe
RealTemp.exe
RealTempGT.exe
speedfan.exe
SystemExplorer.exe
taskmgr.exe
VirusTotalUpload2.exe
当检测到这些工具时,该恶意软体将临时停止挖矿。关于运行的虚拟货币挖矿者的信息存储在两个档案中:
mn.pid
gmn.pid
顾名思义,这纪录了运行中的(G PU)虚拟货币挖矿者的PID。
该恶意软体还监控受害者是否实际上在此刻使用其PC。如果用户空闲的时间超过特定的3分钟,本次挖矿将被终止,并启动一个新的挖矿过程,使CPU在所有线程上发挥100%的虚拟货币挖矿性能。这个PID则存储在mn.ld
档案中。当PC正在使用中,挖矿将设置为50%的性能。另一方面,仅在用户不使用其PC(超过2分钟)时才进行GPU挖矿。
该恶意软体还列出系统上所有存在的控制台窗口,并找出那些可见性设为隐藏的窗口。如果找到此类窗口,并且它不属于CoinHelper,该恶意软体即认为它是竞争性的挖矿者并终止该进程。
数据收集及AV检查
与前一个AutoIt阶段类似,Helper.exe
还会收集有关受感染系统的信息,如下表所示:
信息 | 目的
—|—
可用的CPU线程数量| 如果受害者的系统是空闲的,该恶意软体将利用所有CPU线程
显卡类型| 使用何种卡——针对NVIDIA或AMD优化的虚拟货币挖矿
CPU类型| 未使用 ( 见下文)
安全解决方案| __未使用 ( 见下文)
透过MD5哈希的HW ID| 附加到XMRig密码,生成参数-p xMD5
(详细信息见虚拟货币挖矿)
如表中所示(*),代码实际包含了一些功能来收集的信息,但未实际执行。这意味著,尽管它可以收集该些信息,但不会进行。我们可以推测,由于功能在第一次AutoIt阶段和Helper.exe
阶段之间的变化,作者遗漏了一些旧版本的武器。
该恶意软体能识别受感染系统上可用的显卡。这些卡是通过在Win32_VideoController
上使用WMI查询来检测的。您可以在下表中找到在恶意软体中列出的所有卡:
AMD系列 | AMD型号
—|—
RX| 460, 470, 480, 540, 550, 560, 570, 580, 590, 640, 5500, 5600, 5700, 6800,
6900
R5| 230
R7| 240
| W4300
VEGA| 56, 64
Radeon| 520, 530, 535, 540, 550, 610, 620, 625, 630, VII
WX| 3100, 5100
Nvidia系列 | Nvidia型号
—|—
| P104-100
| P106-090
GTX| 750, 970, 980, 980, 1050, 1060, 1070, 1080, 1650, 1660, TITAN
RTX| 2050, 2060, 2070, 2080, 3060, 3070, 3080, 3090
GT| 710, 720, 730, 740, 1030
Quadro| K1000, K1200, P400, P620, P1000, P2000, P2200, P5000
如果检测到上述任何卡,自显示说明出现的显示卡名称要不是“Advanced Micro Devices,
”或者“
Inc.NVIDIA
”,则该恶意软体将利用XMRig进行虚拟货币挖矿。
通过显示卡列表,我们明显看出该恶意软体不会迟疑利用最新款的显示卡。
捆绑应用程序概述
在回顾受感染者最初想要安装的软体后,我们可以总结CoinHelper几乎可以与任何东西捆绑。到目前为止,我们已经看到超过2,700种不同的应用程序与CoinHelper捆绑(依据唯一的SHA256哈希值区分)。大多数软体是干净的安装程序、破解的软体、破解的游戏或游戏作弊软体,如ChromeSetup
、Photoshop
、MinecraftSetup
、刺客信条:瓦尔哈拉
、CyberPunk2077训练器
或AmongUs作弊
。凭借这样的阵容,CoinHelper的作者能够触及几乎任何类型的受众,确保恶意软体的成功扩散。
说服某人下载名义上是清洁的软体,实际上却与恶意软体捆绑在一起要容易得多,这种方法比起说服某人自愿下载秘密捆绑著另一个恶意软体的恶意软体,简直轻松太多。CoinHelper的作者不怕这样的挑战,我们观察到CoinHelper也与如888RAT
和njRAT
等恶意样本捆绑在一起。我们假设通过这种方式,目标范围扩展到“脚本小子”和不熟悉恶意软体的人。由于这些人群非常特定,相对于其他软体的数量,只有一些恶意样本。这种比例的图形概览也可以在下方的图像中看到。
捆绑应用程序的起源
除了我们从不官方来源YandexDisk存储开始进行调查外,我们还可以确认另一个扩散CoinHelper的主要方法是透过网络论坛上针对破解软体的恶意torrent。
论坛概述
恶意软体的作者成功使人们轻松发现这些恶意torrent。在我们的研究中,我们发现CoinHelper与俄罗斯网络论坛上的软体捆绑在一起,这些论坛主要集中在破解软体上:
windows-program[.]com
softmania[.]net
虽然我们能够找到有关从这些论坛下载到恶意软体的数据(稍后将详细介绍),但这些下载数量远不足以解释我们的用户群中的点击数。因此,我们必须假设还有数十个类似上述的论坛在散播恶意软体。
论坛的进一步信息
让我们专注于第一个论坛windows-
,因为另一个论坛非常类似。在成千上万篇文章中,我们找到붙馄找我们的样本。正如显然的,注册用户
program[.]comAlex4
创建了29篇不同的文章,这些文章大多包含破解软体的torrent,包括:
广告软体 | 描述与功能
—|—
Ableton Live Suite 9.7.3 + Crack + torrent| 音频工作站和音乐制作软体,市场定价599 €
Dr.Web Security Space 11.0.0.11162 x86 x64 + 钥匙 + torrent| 防病毒解决方案
ESET NOD32 Smart Security 10.1.219.1 + 钥匙 + torrent| 防病毒解决方案
Avast Premier