原始来源:微软安全威胁情报
在过去的几年里,加密货币市场大幅扩张,引起了投资者和威胁行为者的兴趣。加密货币本身已被网路犯罪分子用于其活动,特别是在勒索软体攻击中支付赎金,但我们也观察到威胁行为者直接针对加密货币产业内的组织以获取经济利益。针对该市场的攻击采取了多种形式,包括欺诈、漏洞利用、虚假应用程式以及使用资讯窃取程序,因为攻击者试图获取加密货币资金。
我们也看到更复杂的攻击,其中威胁行为者表现出丰富的知识和准备,在部署有效负载之前采取措施获得目标的信任。例如,微软最近调查了一次攻击,追踪为 DEV-0139 的威胁参与者利用 Telegram 聊天群组针对加密货币投资公司。 DEV-0139加入了用于促进VIP客户和加密货币交易平台之间沟通的Telegram群组,并从成员中确定了他们的目标。威胁行为者冒充另一家加密货币投资公司的代表,并于 2022 年 10 月邀请目标加入另一个聊天群组,并假装询问有关加密货币交易平台使用的费用结构的反馈。威胁行为者对该行业的这一特定部分有更广泛的了解,这表明他们做好了充分准备并意识到目标公司当前可能面临的挑战。
在获得目标信任后,DEV-0139随后发送了一个名为OKX Binance & Huobi VIP Fee comparision.xls的武器化Excel文件,其中包含多个关于加密货币交易公司之间费用结构的表格。文件中的数据可能是准确的,以增加其可信度。这个武器化的 Excel 档案会启动以下一系列活动:
武器化的 Excel 档案中的恶意巨集滥用 VBA 的 UserForm 来混淆程式码并检索一些资料。
恶意巨集会释放嵌入表单中的另一个 Excel 工作表,并以不可见模式执行它。上述 Excel 工作表以 base64 编码,放入 C:\ProgramData\Microsoft Media\ 中,名称为 VSDB688.tmp
档案 VSDB688.tmp 下载一个包含三个执行档的 PNG 档案:名为 logagent.exe 的合法 Windows 档案、DLL wsock32.dll 的恶意版本以及 XOR 编码的后门。
档案 logagent.exe 用于旁载入恶意 wsock32.dll,该恶意 wsock32.dll 充当合法 wsock32.dll 的 DLL 代理程式。恶意 DLL 档案用于载入和解密 XOR 编码的后门,使威胁参与者能够远端存取受感染的系统。
图 1. 攻击概述
透过遥测的进一步调查发现了另一个使用相同 DLL 代理技术的文件。但它不是恶意 Excel 文件,而是在 CryptoDashboardV2 应用程式的 MSI 套件中提供,日期为 2022 年 6 月。
在这篇文章中,我们将介绍我们对一家加密货币投资公司的攻击进行调查时发现的详细信息,以及对相关文件的分析,以帮助类似组织了解此类威胁,并为可能的攻击做好准备。 Volexity 的研究人员最近也发表了他们对这次攻击的发现。
与任何观察到的国家行为者活动一样,微软会直接通知已成为目标或受到损害的客户,为他们提供保护帐户所需的资讯。 Microsoft 使用DEV-#### 名称作为给未知的、新兴的或正在发展的威胁活动丛集的临时名称,允许Microsoft 威胁情报中心(MSTIC) 将其作为一组唯一的资讯进行跟踪,直到我们达到最高的目标。一旦满足标准,DEV 就会转换为命名参与者。
初步妥协
为了确定目标,威胁行为者在 Telegram 上寻找了加密货币投资团体的成员。在具体攻击中,DEV-0139 透过建立一个名为 <NameOfTheTargetedCompany> <> OKX Fee Adjustment 的辅助 Telegram 群组并邀请三名员工,于 2022 年 10 月 19 日与目标取得联系。威胁行为者使用 OKX 公司员工的详细资料建立了虚假个人资料。下面的萤幕截图显示了该群组中两个使用者的真实帐户和恶意帐户。
图 2. 加密货币交易所员工的合法档案(左)和威胁行为者创建的虚假档案(右)
值得注意的是,威胁行为者似乎对加密货币产业以及目标公司可能面临的挑战有广泛的了解。威胁行为者询问了有关费用结构的问题,即加密货币交易平台用于交易的费用。这些费用对投资基金来说是一个巨大的挑战,因为它们代表了成本,必须进行最佳化以尽量减少对利润和利润的影响。与该行业的许多其他公司一样,最大的成本来自交易所收取的费用。这是一个非常具体的主题,展示了威胁行为者在联系目标之前如何做好准备。
在获得目标的信任后,威胁行为者向目标发送了一份武器化的 Excel 文档,其中包含有关费用的更多详细信息,以显得合法。威胁行为者利用费用结构讨论作为机会,要求目标打开武器化的 Excel 文件并填写其资讯。
武器化的 Excel 文件分析
武器化的 Excel 文件的文件名称为 OKX Binance & Huobi VIP Fee comparision.xls (Sha256: abca3253c003af67113f83df2242a7078d5224870b619489015e4fde060acad0),包含某些货币设计的经过加密货币设计的经过加密货币。提取的元资料显示该档案是由使用者 Wolf 建立的:
图3.恶意Excel档案中的信息
该巨集被混淆并滥用 UserForm(用于建立视窗的功能)来储存资料和变数。在本例中,使用者窗体的名称为 IFUZYDTTOP,巨集使用以下程式码 IFUZYDTTOP.MgQnQVGb.Caption 检索讯息,其中 MgQnQVGb 是使用者窗体中标签的名称,.caption 允许检索储存在使用者窗体中的信息。
下表显示了从使用者窗体检索的资料:
该巨集从 UserForm 以及储存在 base64 中的另一个 XLS 档案中检索一些参数。 XLS 档案以 VSDB688.tmp 放入目录 C:\ProgramData\Microsoft Media 中,并以不可见模式运作。
图 4. 以不可见模式载入撷取的工作表的反混淆程式码。
此外,Excel 档案中的主工作表受到密码 Dragon 的保护,以鼓励目标启用巨集。安装并执行以 Base64 储存的其他 Excel 档案后,该工作表将不受保护。这可能是用来欺骗用户启用巨集而不引起怀疑。
提取的工作表
第二个 Excel 档案 VSDB688.tmp(Sha256:a2d3c41e6812044573a939a51a22d659ec32aea00c26c1a2fdf7466f5c7e1ee9)用于检索 PNG 档案,以便稍后由巨集执行档和解析该档案所提取。以下是第二个工作表的元资料:
图 5. 第二个档案完全是空的,但包含与第一阶段相同的使用者窗体滥用技术。
下表显示了从使用者窗体检索到的反混淆资料:
该巨集从使用者窗体中检索一些参数,然后从 hxxps://od.lk/d/d021d412be456a6f78a0052a1f0e3557dcfa14bf25f9d0f1d0d2d7dcdac86c73/Background.png 下载 PNGNG。该文件在分析时已不再可用,这表明威胁行为者可能仅为了此次特定攻击而部署该文件。
图 6. 显示档案 Background.png 下载的反混淆程式码
然后,PNG 被分成三个部分,并写入三个不同的档案:合法档案logagent.exe、恶意版本的wsock32.dll 以及带有GUID (56762eb9-411c-4842-9530-9922c46ba2da) 的XOR 加密后门。这三个档案用于将主要有效负载载入到目标系统。
图 7. 这三个档案写入 C:\\ProgramData\SoftwareCache\ 并使用 CreateProcess API 来执行
装载机分析
从 PNG 档案中提取的三个档案中的两个档案 logagent.exe 和 wsock32.dll 用于载入 XOR 加密后门。以下部分介绍了我们对这两个文件的深入分析。
日志代理程式
Logagent.exe(杂凑:8400f2674892cdfff27b0dfe98a2a77673ce5e76b06438ac6110f0d768459942)是一个合法的系统应用程式,用于记录 Windows Media Player 中的错误并发送讯息以进行故障排除。
该文件包含以下元数据,但未签署:
logagent.exe 从 wsock32.dll 汇入函数,威胁行为者滥用该函数将恶意程式码载入到目标系统中。为了触发并执行恶意 wsock32.dll,logagent.exe 使用巨集之前撷取的下列参数执行:56762eb9-411c-4842-9530-9922c46ba2da /shadow。然后 wsock32.dll 检索这两个参数。 GUID 56762eb9-411c-4842-9530-9922c46ba2da 是要载入的恶意 wsock32.dll 的档案名,/shadow 用作解密它的 XOR 金钥。恶意软体需要这两个参数才能发挥作用,这可能会阻碍孤立分析。
图 8. 从正在执行的进程 logagent.exe 执行命令列
Wsock32.dll
合法的 wsock32.dll 是应用程式用来处理网路连接的 Windows Socket API。在这次攻击中,威胁行为者使用恶意版本的 wsock32.dll 来逃避侦测。恶意wsock32.dll由logagent.exe透过DLL侧载入加载,并使用DLL代理从真正的wsock32.dll呼叫合法函数并逃避检测。 DLL 代理程式是一种劫持技术,其中恶意 DLL 位于呼叫汇出函数的应用程式和实作该汇出函数的合法 DLL 之间。在此攻击中,恶意 wsock32.dll 充当 logagent.exe 和合法 wsock32.dll 之间的代理。
透过查看汇入位址表可以注意到 DLL 正在将呼叫转发给合法函数:
图 9. 从下列位置汇入位址表
图 10. 使用 PeStudio 检索资料揭示了恶意 wsock32.dll 的原始档案名称。
当恶意wsock32.dll被载入时,它会先检索命令列,并使用CreateFile API检查以GUID作为档案名称的档案是否存在于同一目录中以检索档案句柄。
图 11. 验证文件 56762eb9-411c-4842-9530-9922c46ba2da 是否存在以进行解密
恶意 wsock32.dll 使用 GUID 名称载入并解码最终植入到记忆体中,该 GUID 名称用于远端存取受感染的电脑。
一旦档案载入到记忆体中,威胁行为者就可以进行远端存取。在分析时,我们无法检索最终的有效负载。然而,我们发现了这种攻击的另一种变体并检索了有效负载,这将在下一节中讨论。已识别的植入程式正在连接回同一台命令与控制 (C2) 伺服器。
相关攻击
我们使用与 logagent.exe 类似的机制识别了另一个文件,并提供相同的负载。该载入程式打包为 MSI 套件,并提出一个名为 CryptoDashboardV2 的应用程式(杂凑:e5980e18319027f0c28cd2f581e75e755a0dace72f10748852ba5f63a0c99487)。安装 MSI 后,它会使用名为 tplink.exe 的合法应用程式旁载入名为 DUser.dll 的恶意 DLL,并使用 DLL 代理程式。
图 12. MSI 档案的安装详细信息
安装套件后,它会使用以下命令运行并旁加载 DLL:C:\Users\user\AppData\Roaming\Dashboard_v2\TPLink.exe” 27E57D84-4310-4825-AB22-743C78B8F3AA /sven,其中明显使用了不同的GUID。
进一步分析恶意DUser.dll发现其原名也是HijackingLib.dll,与恶意wsock32.dll相同。这可能表示使用相同工具来建立这些恶意 DLL 代理程式。以下是 DUser.dll 的文件详细资讯:
一旦 DLL 运行,它就会载入并解码记忆体中的植入物,并开始为相同网域设定信标。在这种情况下,植入程序使用 GUID 名称 27E57D84-4310-4825-AB22-743C78B8F3AA 和 XOR 密钥 /sven。
植体分析
恶意 DLL 在记忆体中解码的有效负载是威胁行为者用于远端存取受感染电脑的植入程式。我们能够从我们发现的第二个变体中得到这个变体。以下是有效负载的详细资讯:
检测详情
Microsoft Defender 防毒软体
Microsoft Defender 防毒软体将威胁元件侦测为以下恶意软体:
木马下载器:O97M/Wolfic.A
木马下载器:O97M/Wolfic.B
木马下载器:O97M/Wolfic.C
木马下载器:Win32/Wolfic.D
木马下载器:Win32/Wolfic.E
行为:Win32/WolficDownloader.A
行为:Win32/WolficDownloader.B
Microsoft Defender 端点
安全中心中具有以下标题的警报可以指示您网路上的威胁活动:
可执行档载入了意外的 dll
DLL搜寻顺序劫持
「Wolfic」恶意软体已被阻止