MuddyWater感染链剖析

栏目: JavaScript · 发布时间: 6年前

内容简介:在11月末,我们发现有关MuddyWater(污水,APT组织)的新一轮攻击,其攻击目标是中东相关国家。该组织是在2017年被

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

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Mastering JavaServer Faces

Mastering JavaServer Faces

Bill Dudney、Jonathan Lehr、Bill Willis、LeRoy Mattingly / Wiley / 2004-6-7 / USD 40.00

Harness the power of JavaServer Faces to create your own server-side user interfaces for the Web This innovative book arms you with the tools to utilize JavaServer Faces (JSF), a new standard that wi......一起来看看 《Mastering JavaServer Faces》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

SHA 加密
SHA 加密

SHA 加密工具