本帖最后由 腾讯电脑管家 于 2018-6-7 17:57 编辑
0x1 概述
腾讯御见威胁情报中心近日监控到一例使用Flash 0day漏洞的APT攻击,攻击者疑通过即时聊天工具和邮箱等把恶意Excel文档发送给目标人员,诱骗目标人员打开文档。实际上,该恶意Excel文档经过特别构造,被嵌入了flash对象,用户一旦打开文档电脑就会中毒。
我们及时向Adobe官方上报了漏洞利用样本,并获得了Adobe官方确认。
(图1:攻击流程图)
0x2 攻击流程分析
1. 漏洞文档行为分析
此次攻击时使用的诱饵文档为一个Excel表格文档,主要内容为阿拉伯语言撰写的外交部官员基本工资情况。诱饵文档嵌入了一个在线的Flash对象,用户打开文档后,就会自动加载Flash文件。
(图2:google翻译后的文档内容)
(图3:诱饵文档内容)
2. SWF1行为分析
SWF1文件中的代码高度混淆,后续图片中的源码,均是对混淆代码进行一定优化后截取的。
(图4:混淆后的SWF1代码)
诱饵文档中嵌入了一个在线swf对象,当打开带漏洞的excel表格时,会加载“Movie”字段所指向的在线Flash文件,这里取名为SWF1。
Excel会将FlashVars指向的文本会以参数的形式传递给SWF1,这里存放的是漏洞利用样本(SWF2文件) 和 ShellCode等URL信息,分别被标记为了stabUrl、encKeyUrl、downloadUrl、imageUrl。
(图5:SWF1运行时取参数)
SWF1运行后,会以post方式从参数encKeyUrl 指向的WEB服务器得到解密key及加密的swf。使用aes算法解密后,得到漏洞swf文件,取名为SWF2。
(图6:SWF1以post方式下载加密的SWF2)
(图7:SWF1使用aes解密SWF2)
SWF1通过LoadBytes将解密后的漏洞利用文件SWF2加载执行,并将downloadUrl等参数传给SWF2。
(图8 :SWF1加载SWF2)
3. SWF2(0day漏洞)行为分析:
1) 漏洞原理
将在Adobe发布安全更新之后公开
2) 行为分析
SWF2运行后会从downloadUrl指向的WEB服务器下载加密的数据,以得到shellcode。
(图9:SWF2 取shellcode下载链接)
(图10:SWF2下载shellcode)
取加密数据的前16个字节作为解密的Key,通过AES解密ShellCode。
(图11:SWF2解压缩并执行shellcode)
再借助0day漏洞将shellcode执行起来。由于ShellCode服务器已经关闭,已经无法获取ShellCode的具体内容。
(图12:执行32位或64位shellcode)
(图13:执行shellcode)
0x3总结
该APT组织使用0day漏洞攻击政府相关部门,利用纯shellcode在宿主进程excel中干坏事。而这种0day漏洞加纯shellcode的攻击方式对安全软件的检测和防护能力是一个挑战。再次提醒政府、企业等广大用户,切勿随意打开来历不明的文档,同时安装安全软件防御攻击。
附录(IOCs):
|