黑客使用新技巧禁用恶意Office文件中的宏安全警告

黑客使用新技巧禁用恶意Office文件中的宏安全警告

介绍

在过去几年中,使用社会工程作为恶意软件感染手段的 Microsoft Office 宏恶意软件已成为威胁格局的主要部分。恶意软件作者不断改进他们的技术以逃避检测。这些技术涉及使用宏混淆、DDE、脱离陆地工具 (LOLBAS),甚至使用传统支持的 XLS 格式。

McAfee Labs 发现了一种新技术,可以下载和执行恶意 DLL (Zloader),而初始垃圾邮件附件宏中不存在任何恶意代码。这个博客的目的是涵盖新观察到的技术的技术方面。

黑客使用新技巧禁用恶意Office文件中的宏安全警告
被此病毒感染的全球状况图

威胁摘要

  • 最初的攻击媒介是带有 Microsoft Word 文档附件的网络钓鱼电子邮件。
  • 打开文档后,会从远程服务器下载受密码保护的 Microsoft Excel 文件。
  • Word 文档 Visual Basic for Applications (VBA) 读取下载的 XLS 文件的单元格内容并作为宏写入 XLS VBA。
  • 一旦将宏写入下载的 XLS 文件,Word 文档将注册表中的策略设置为禁用 Excel 宏警告,并从 Excel 文件动态调用恶意宏函数,
  • 这会导致下载 Zloader payload。然后由 rundll32.exe 执行 Zloader payload。

以下部分包含该技术的详细技术分析。

感染链

恶意软件通过包含 Microsoft Word 文档作为附件的网络钓鱼电子邮件到达。打开文档并启用宏后,Word 文档会依次下载并打开另一个受密码保护的 Microsoft Excel 文档。

下载 XLS 文件后,Word VBA 从 XLS 读取单元格内容,并为同一个 XLS 文件创建一个新宏,并将单元格内容作为函数写入 XLS VBA 宏。

一旦宏编写完毕并准备就绪,Word 文档将在注册表中设置策略以禁用 Excel 宏警告并从 Excel 文件调用恶意宏功能。Excel 文件现在下载 Zloader payload。然后使用 rundll32.exe 执行 Zloader payload 。

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 1:感染链流程图

word分析

这是我们打开文档时文档的外观(图 2)。通常,Microsoft Office 默认禁用宏运行。恶意软件的作者意识到了这一点,因此提供了一个诱饵图像来欺骗受害者引导他们启用宏

黑客使用新技巧禁用恶意Office文件中的宏安全警告
Word 文档显示页面

Word 文档中的用户表单组合框组件存储连接到远程 Excel 文档所需的所有内容,包括 Excel 对象、URL 和打开 Excel 文档所需的密码。URL 以断开的字符串的形式存储在组合框中,稍后将连接起来形成一个完整的清晰字符串。

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 3:用户表单组件中的 URL 组件(右侧)和打开下载的 Excel 文档(“i5x0wbqe81s”)的密码。

Word文档的VBA宏分析

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 4:VBA 编辑器的图像

在上面的宏图像(图 4)中,代码试图下载并打开存储在恶意域名中的 Excel 文件。首先,它通过使用 CreateObject() 函数并从 Userform-1 的 Combobox-1(参考图 2)中读取字符串“excel.txt”来创建一个 Excel 应用程序对象。应用程序”存储在其中。创建对象后,它使用相同的对象直接从恶意 URL 和密码打开 Excel 文件,而无需使用 Workbooks.Open() 函数将文件保存在磁盘上。

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 5:读取 Excel 工作表中随机单元格中存在的字符串的 Word 宏代码。

上面的代码片段(图 5)显示了从 Excel 单元格读取字符串的宏代码的一部分。

例如:

Ixbq = ifk.sheets(3).Cells(44,42).Value

该代码将工作表编号 3 中的字符串和单元格位置 (44,42) 存储到变量“ixbq”中。分配给变量“ifk”的 Excel.Application 对象用于访问从恶意域打开的 Excel 文件中的工作表和单元格。

在下面的片段(图 6)中,我们可以观察从单元格中读取后存储在变量中的字符串。我们可以观察到它有与注册表项“ HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security\AccessVBOM”相关的字符串,用于禁用对 Excel 的 VBA 信任访问,以及字符串“Auto_Open3”是 Excel 宏执行的入口点。

我们还可以看到字符串“ThisWorkbook”、“REG_DWORD”、“Version”、“ActiveVBProject”和一些随机函数以及“Function c4r40() c4r40=1 End Function”。由于内容是在运行时动态形成的,因此无法使用静态检测来检测这些宏代码。

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 6:读取 Excel 单元格后的变量值。

从 Excel 单元格中提取内容后,父 Word 文件通过写入检索到的内容在下载的 Excel 文件中创建一个新的 VBA 模块。基本上,父 Word 文档正在检索单元格内容并将它们写入 XLS 宏。

一旦宏形成并准备好,它会修改下面的 RegKey 以禁用受害机器上 VBA 的信任访问,以无缝地执行该功能而没有任何 Microsoft Office 警告。

HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security\AccessVBOM

将宏内容写入 Excel 文件并禁用信任访问后,将调用新编写的 excel VBA 中的函数“Auto_Open3()”,该函数从“ hxxp://heavenlygem.com/22.php?5PH8Z下载 zloader dll扩展名.cpl

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 7:“Auto_Open3()”函数

下载的 dll 保存在%temp%文件夹中,并通过调用 rundll32.exe 执行。

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 8:rundll32.exe 调用的 zloader dll

命令行参数:

Rundll32.exe shell32.dll,Control_RunDLL “<下载的dll路径>”

Windows Rundll32 命令加载和运行 32 位 DLL,可用于直接调用指定的函数或用于创建快捷方式。在上述命令行中,恶意软件使用“Rundll32.exe shell32.dll,Control_RunDLL”函数调用control.exe(控制面板)并将DLL路径作为参数传递,因此下载的DLL由control.exe执行。

Excel文档分析:

下图(图 9)是托管在服务器上的受密码保护的 Excel 文件的正面。我们可以观察随机单元格存储大块的字符串,如“RegDelete”、“ThisWorkbook”、“DeleteLines”等。

工作表单元格中存在的这些字符串在后期形成为 VBA 宏。

黑客使用新技巧禁用恶意Office文件中的宏安全警告
图 9:远程 Excel 文件

检测和预防指南:

McAfee 的 Endpoint 产品可检测到此恶意软件变种和感染过程中生成的文件。

SHA256(210f12d1282e90aadb532e7e891cbe4f089ef4f3ec0568dc459fb5d546c95eaf)的主要恶意文件被检测到V3包版本——4328.0为“ W97M/Downloader”djx ”。

带有 SHA-256 的最终 Zloader 负载(c55a25514c0d860980e5f13b138ae846b36a783a0fdb52041e3a8c6a22c6f5e2)是一个 DLL,通过签名“ Zloader-FCVP版本V327包检测到。

此外,借助 McAfee 的专家规则功能,客户可以根据恶意软件的行为模式添加自定义专家规则来增强安全性。以下 EP 规则特定于这种感染模

黑客使用新技巧禁用恶意Office文件中的宏安全警告

McAfee 建议所有用户在未验证发件人身份的情况下,不要打开任何电子邮件附件或单击邮件中的任何链接。始终禁用 Office 文件的宏执行。我们建议大家阅读我们关于 Zloader 新变种及其感染周期的博客,以了解有关威胁的更多信息。

恶意软件使用不同的技术和策略进行传播,我们将这些技术和策略与 MITRE ATT&CK 平台进行了映射。

  • 电子邮件鱼叉式网络钓鱼 (T1566.001):网络钓鱼充当受害者系统的主要入口点,其中文档以附件形式出现,用户允许文档执行恶意宏并导致感染。这种机制在大多数恶意软件中都可以看到,例如 Emotet、Drixed、Trickbot、Agenttesla 等。
  • 执行 (T1059.005):这是打开恶意文档时观察到的一种非常常见的行为。该文档包含嵌入的恶意 VBA 宏,这些宏在打开/关闭文档时执行代码。
  • 防御规避 (T1218.011):在此 Zloader 变体中观察到执行签名二进制文件以滥用 Rundll32.exe 并代理执行恶意代码。这种策略现在也是许多其他策略的一部分,如 Emotet、Hancitor、Icedid 等。
  • 防御规避 (T1562.001):在此策略中,它通过更改注册表项禁用或修改 Microsoft Office 文档中的安全功能。

IOC侵害指标

类型扫描器检测名称检测包版本(V3)
主 Word 文档210f12d1282e90aadb532e7e891cbe4f089ef4f3ec0568dc459fb5d546c95eafENSW97M/Downloader.djx4328
下载的dllc55a25514c0d860980e5f13b138ae846b36a783a0fdb52041e3a8c6a22c6f5e2ENSZloader-FCVP4327
下载XLS的网址hxxp://heavenlygem.com/11.phpWebAdvisorBlocked不适用
dll下载地址hxxp://heavenlygem.com/22.php?5PH8ZWebAdvisorBlocked不适用

迈克菲实验室详细分析文档下载[pdf]

下载地址①:

云中转:

yunzhongzhuan.com/#sharefile=bmeAElwS_1841

下载地址②:

阿里云盘:

https://www.aliyundrive.com/s/B4Bc8GrSEMv

结论

恶意文档一直是大多数恶意软件系列的切入点,并且这些攻击一直在发展其感染技术和混淆,不仅限于从 VBA 直接下载有效载荷,而且如我们在本博客中讨论的那样动态创建代理以下载有效载荷。在感染链中使用此类代理不仅限于 Word 或 Excel,而且进一步的威胁可能会使用其他落地工具来下载其有效负载。

出于安全考虑,Microsoft Office 应用程序中默认禁用宏。我们建议仅当收到的文档来自可信来源时启用它们是安全的。

from

Leave a Reply

您的电子邮箱地址不会被公开。 必填项已用 * 标注