未加星标

MuddyWater感染链剖析

字体大小 | |
[前端(javascript) 所属分类 前端(javascript) | 发布者 店小二04 | 时间 2018 | 作者 红领巾 ] 0人收藏点击收藏

MuddyWater感染链剖析
一、前言

在11月末,我们发现有关MuddyWater(污水,APT组织)的新一轮攻击,其攻击目标是中东相关国家。该组织是在2017年被 Unit42 的研究人员首次披露,在很长的一段时间里,MuddyWater(污水,APT组织)的TTP基本不变:他们通过鱼叉式网络钓鱼的手段进行传播,电子邮件中包含模糊的邮件附件,他们会诱使收件人打开附件并启用宏来运行,然后通过POWERSTAT(该程序是MuddyWater组织使用的基于powershell的第一阶段后门)恶意程序感染收件人主机。下图是恶意文档实例。


MuddyWater感染链剖析

根据ClearSky研究小组和TrendMicro研究人员的分析,在11月底,MuddyWater(污水,APT组织)组织先后攻击了土耳其,黎巴嫩和阿曼的相关机构,其采用的手段和释放的载荷相同,都是利用文档中的宏和POWERSTAT后门进行攻击。

二、技术分析

当受害者启用文档中的宏并执行时,恶意代码会创建一个Excel文档,该文档包含一段代码,这段代码的功能是下载下一阶段所需的恶意载荷,同时,会弹出一个错误窗口,并显示“office版本不兼容”,如下图所示。


MuddyWater感染链剖析

恶意代码会开启一个用户例程来解密被加密的宏代码。如下图所示:


MuddyWater感染链剖析

下图所示为解密后的代码,代码中的“x1”变量代表一个函数,该函数功能是创建一个隐藏的Excel文档。


MuddyWater感染链剖析
创建出来的Excel文档也包含宏,该宏执行后,会连接指定URL并下载powershell代码,该URL指向了一个图片链接:” http://pazazta[.]com/app/icon.png “

该powershell会创建3个本地文件。其存放的路径如下:

1.C:\windows\Temp\temp.jpg(该文件包含一段javascript代码)

2.C:\Windows\Temp\Windows.vbe(该文件包含一段被编码后的VB脚本)

3.C:\Program\Data\Microsoft.db(该文件包含一段被加密的有效载荷,该载荷是最后阶段释放执行)

下图为下载的powershell代码:


MuddyWater感染链剖析

从上图中我们可以看到,第一个被执行的文件是“Windows.vbe”文件,该文件通过Cscript(Windows脚本宿主的一个版本,可以用来从命令行运行脚本)来执行temp.jpg中的Javascript代码,该Javascript代码被加密,解密后可以看到其功能是延迟执行另一段powershell。下图是解密后的temp.jpg中的Javascript代码:


MuddyWater感染链剖析

由上图我们可以看到,这段代码只有满足“Math.round(ss) % 20 == 19”条件才会继续执行下一个恶意阶段,否则会不断的重复此过程。代码中的“ss”变量是getTime()函数的返回值,表示当前时间距 1970 年 1 月 1 日之间的毫秒数。

当条件满足后,会执行“Microsoft.db”文件,该文件中包含POWERSTATS后门程序。该后门连接的域名如下:

1.hxxp://amphira[.]com 2.hxxps://amorenvena[.]com

这些域名都指向同一个IP地址:139.162.245.200(该IP所在地为英国)。


MuddyWater感染链剖析

如上图所示,POWERSTATS后门程序会进行HTTP和POST请求,该请求会连接远程服务器,并上传受害者机器的通用信息,下图为发送的受害者信息:


MuddyWater感染链剖析

然后,该后门与C2进行通信,并请求操作指令。我们在分析中发现HTTP的参数“type”有以下数值,分别代表执行不同功能:

1.info:在POST请求中使用,会发送受害者机器的相关信息。

2.live:在POST请求中使用,进行ping操作。

3.cmd:POST和GET请求中使用,在POST请求中,其功能是发送最后执行的命令。在GET请求中,其功能是检索服务器中的新命令。

4.res:在POST请求中使用,功能是当恶意软件已执行后,发送该消息。

参数“id”是受害者机器的唯一标识,通过系统信息计算得出,此标识被用于创建文件,文件路径为:C:ProgramData,创建出的文件用来存储临时信息。下图是相关代码:


MuddyWater感染链剖析

我们分析了Microsoft.db文件中的代码,该代码被混淆,反混淆后我们识别出POWERSTATS后门具备以下指令功能:

1.upload:恶意软件会从指定的URL下载新的文件

2.cmd:恶意软件会执行指定的命令

3.b64:恶意软件通过base64解码Powershell脚本并执行

4.muddy:恶意软件新建一个加密文件并执行,文件路径在C:ProgramDataLSASS目录下,该文件包含powershell脚本。下图是反混淆后的POWERSTATS后门代码:


MuddyWater感染链剖析
持久性

为了保证自己拥有持久化的能力,该恶意软件采用了多个技术手段,比如把自己添加到注册表项:“MicrosoftWindowsCurrentVerisonRun” 下以保持开机自启动。如下图所示:


MuddyWater感染链剖析
MuddyWater感染链剖析

创建一个名为“MicrosoftEdge”的计划任务,该计划任务设置为每天12点开始执行。如下图所示:


MuddyWater感染链剖析
三、总结

通过对MuddyWater(污水,伊朗的APT组织)组织最近的活动进行分析,我们发现了其攻击的方式和流程。包括:如何利用系统工具和脚本来实现特定目标,如何保持自身持久性,如何利用嵌入宏的文档进行攻击,并通过一些方式引诱受害者执行恶意载荷等。其整个攻击流程图如下:


MuddyWater感染链剖析
四、IOC

Dropurl:

hxxp://pazazta[.com/app/icon.png

C2:

hxxp://amphira[.com
hxxps://amorenvena[.com
139.162.245.200

Hash:

294a907c27d622380727496cd7c53bf908af7a88657302ebd0a9ecdd30d2ec9d
79f2d06834a75981af8784c2542e286f1ee757f7a3281d3462590a89e8e86b5a
ae2c0de026d0df8093f4a4e2e2e4d297405f943c42e86d3fdd0ddea656c5483d
077bff76abc54edabda6b7b86aa1258fca73db041c53f4ec9c699c55a0913424
ccfdfcee9f073430cd288522383ee30a7d6d3373b968f040f89ae81d4772a7d0

本文前端(javascript)相关术语:javascript是什么意思 javascript下载 javascript权威指南 javascript基础教程 javascript 正则表达式 javascript设计模式 javascript高级程序设计 精通javascript javascript教程

代码区博客精选文章
分页:12
转载请注明
本文标题:MuddyWater感染链剖析
本站链接:https://www.codesec.net/view/621127.html


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 前端(javascript) | 评论(0) | 阅读(82)