MuddyWater活动2017年初首次出现,当时它针对沙特政府发动了通过微软Office Word 宏部署的PowerShell脚本攻击。在20183月,我们对另一具有MuddyWater特征的活动进行了详细分析。

20185月,我们发现了一个新的样本(检测为W2KM_DLOADR.UHAOEEN),它可能与本次活动有关。与之前的活动一样,这些样本再次涉及嵌入了恶意宏的Microsoft Word文档,该宏能够执行PowerShellPS)脚本,从而导致后门载荷。在分析的样本中,一个显著的区别是,它们不直接下载Visual BasicVBS)脚本和PowerShell组件文件,而是在文档本身上编码所有脚本。这些脚本将被解码并删除,以执行有效载荷,而无需下载组件文件。

如前所述,我们对样本的分析揭示了可能将其与MuddyWater活动相关联的特征,特别是:

交付方法,其中涉及使用嵌入宏的恶意文档作为潜在受害者的诱饵

宏脚本的混淆方法,这将导致预期的后门载荷。这种方法通常用于MuddyWater活动中使用的样本

 

感染链

 

1.比较以前和当前活动中使用的感染链

技术细节

我们分析的样本是一个Word文档,用来引诱毫无戒心的受害者。但是,与以前的活动样本不同,诱饵文档涉及不同的主题。新的诱饵文档没有使用政府或电信相关文件,而是作为奖励或促销,这可能表明目标不再局限于特定的行业或组织。

2.当前活动使用的诱饵文档的示例

该文档旨在诱骗用户,使宏能够查看其全部内容。然而,这个宏的真正目的是允许它在用户不知情的情况下执行恶意程序。

一旦宏被启用,如果打开使用相同模板的新文档或当模板本身作为文档被打开时,它将使用DoCuffTyOnOpen()事件自动执行恶意例程。

 

3.通过Document_Open()执行恶意例程

恶意宏的代码片段使用了三个main函数,具体为:

红色框中包含的函数是Document_Open()事件,其中所有子函数将被执行/调用。。

绿色框中的代码处理文档正文中显示的图像。

蓝色框中的代码构建了主要的Powershell命令和脚本。这些将被执行以执行主例程。

4.恶意宏代码片段,用彩色框标记以显示不同的功能

 

解码和去混淆

代码分析揭示了一个PowerShell脚本,能够解码恶意文档的内容,从而导致执行另一个编码的PowerShell脚本。

5.示例代码中包含的Powershell脚本

6.第二个编码的PowerShell脚本,在解码第一个脚本之后执行

这将导致更具可读性的PowerShell脚本能够在%Application Data Microsoft CLR *目录中丢弃各种组件。主要的PowerShell文件invoker.ps1使用这些组件运行最终的有效载荷PRB-Backdoor,之前20185已经由其他安全研究人员进行了分析。

7:在%Application Data Microsoft CLR *目录中丢弃的组件

PRB-Backdoor是一个后门,它的命名取自于最终的PowerShell脚本有效载荷中使用的函数,如下图所示。 

8. PRB-Backdoor的命名来自PS函数

后门与其命令与控制(CC)服务器hxxp// outl00k [] net进行通信,以发送和接收以下命令:

Command(命令)

Details(细节)

PRB-CREATEALIVE

初始化与CC服务器的连接

PRB-CREATEINTRODUCE

将受影响的机器注册到C&C服务器。

PRB-History

从不同的浏览器收集浏览历史记录,并使用“sendfile”函数将其发送到CC服务器

PRB-PASSWORD

窃取在浏览器历史记录中列出或找到的密码

PRB-READFILE

读取文件

PRB-WRITEFILE

写入文件

PRB-Shell

执行shell命令

PRB-Logger

调用日志记录器Logger”功能,用于记录键盘敲击

PRB-Shot

触发SNAP功能,用于捕捉屏幕截图

PRB-funcupdate

更新功能

sysinfo

收集系统信息

Start_Dns

初始化DNS会话/连接

如果这些样本确实与MuddyWater相关,这意味着MuddyWater背后的威胁行为者正在不断升级他们的工具和技术,使它们更加有效和持久。

 

妥协指标(IoCs)

检测为W2KM_DLOADR.UHAOEEN

240b7d2825183226af634d3801713b0e0f409eb3e1e48e1d36c96d2b03d8836b

审核人:yiwang   编辑:边边

文章原文链接:https://www.anquanke.com/post/id/148244