《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > Zloader恶意软件可禁用office宏警告

Zloader恶意软件可禁用office宏警告

2021-07-12
来源:嘶吼专业版
关键词: Office 宏恶意 检测

  过去几年,使用社会工程的微软office宏恶意软件成为恶意软件感染的一种新方式。恶意软件作者还不断发展其家属以绕过检测。这些技术使用宏混淆、DDE、以及使用支持老版本的xls格式。

  McAfee实验室研究人员近日发现一种可以在垃圾邮件附件宏中没有任何恶意代码的情况下下载和执行恶意DLL文件——Zloader。

微信图片_20210712135442.jpg

感染图

  威胁总结

  初始的攻击向量是一个含有微软word附件的钓鱼邮件。

  打开该word附件后,就会从远程服务器下载一个密码保护的Excel文件。

  Word文件的VBA会读取下载的XLS文件的单元格内容,并以宏的形式写入XLS VBA。

  宏写入下载的XLS文件后,word文件就会在注册表中设置策略来禁用Excel宏警告,并从Excel文件中动态调用宏函数。

  结果就是下载最终的zloader payload。然后,zloader payload通过rundll32.exe动态执行。

  详细技术分析

  感染链

  恶意软件会通过含有word附件的钓鱼邮件传输。Word文件打开且宏启用时,word文件就会下载和打开另一个有密码保护的Excel文件。

  在下载XLS文件后,word VBA会从XLS中读取单元格内容,为该xls文件创建一个新的宏,并将单元格内容写入xls VBA宏。

  宏写入后,word文档就会在注册表中设置策略来禁用Excel宏警告,并从Excel文件中调用恶意宏函数。然后,Excel文件就会下载zloader payload。然后,Zloader payload就会用rundll32.eze执行。

微信图片_20210712135446.jpg

  图-1: 感染流图

  Word文件分析

  图2是打开word文件时的样子。一般来说,微软office默认是禁用宏的。恶意软件作者意识到了这一点,所以在这里展示了一个诱饵图像来诱使受害者按照指示去启用宏。

微信图片_20210712135449.jpg

图-2: word文件的图像

  Word文件中的userform combo-box组件保存了连接到远程Excel文件的所需要的所有内容,包括Excel对象、URL、打开Excel文件所需的密码。URL以分开的字符串的形式保存在combobox中,这些字符串之后会连接在一起来组成一个完整的字符串。

微信图片_20210712135452.jpg

  图-3: URL组件(右侧)、打开Excel需要的密码(“i5x0wbqe81s”)在user-form组件中

  Word文档VBA宏分析

微信图片_20210712135454.jpg

  图-4: VBA编辑器图像

  如图4所示,代码会尝试下载和打开恶意域名保存的Excel文件。首先,会使用CreateObject() 函数和从combobox-1(如图2)来读取字符串来创建Excel应用对象。在创建了对象后,使用相同的对象来打开Excel文件,会使用Workbooks.Open()函数直接从恶意URL直接打开文件而不保存文件到硬盘上。

微信图片_20210712135457.jpg

  图-5: 读取Excel中随机表格中字符串的Word宏代码

  图5中的代码是从Excel单元格读取字符串部分宏代码。比如:

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

  上面的代码将sheet 3单元格(44,22)中字符串保存到变量ixbq中。Excel.Application对象会分配变量ifk用于访问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”这样的随机字符串。因为这些内容是在运行时在动态构造的,因此无法使用静态检测方法检测。

微信图片_20210712135459.jpg

图-6: 读取Excel单元中的变量值

  从Excel单元格提取内容后,word文件会通过写入提取的内容在下载的Excel文件中创建一个新的VBA模块。

  宏文件构造后,会修改下面的注册表来禁用受害者机器的VBA,在没有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。

微信图片_20210712135503.jpg

  图-7: Auto_Open3()函数

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

微信图片_20210712135505.jpg

图-8: rundll32.exe调用zloader dll

  命令行参数:

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

  Windows Rundll32命令会加载和运行32位的DLL,该dll可以用来调用特定函数或用来创建快捷方式。在上面的命令行中,恶意软件使用Rundll32.exe shell32.dll,Control_RunDLL 函数来调用control.exe,并传递DLL路径作为参数,然后下载的DLL会由control.exe来执行。

  Excel 文档分析

  图9是保存在服务器上的有密码保护的Excel文件。可以看到保存了“RegDelete”, “ThisWorkbook”, “DeleteLines”这样的随机单元。

  这些字符串会在下一阶段形成VBA宏。

微信图片_20210712135509.jpg

图-9: 远程Excel文件图像




电子技术图片.png

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。