FireEye:PlugX老马新用,针对中国政治活动的APT攻击分析

2013-05-16 236042人围观 ,发现 30 个不明物体 资讯

译:小P

火眼实验室近日发现了针对中国政权活动的APT攻击,并作出了警告。攻击的目标是那些参与中国政权运动的社会团体成员。恶意的邮件是在北京举办第十二届全国人民代表大会和第十二届政治协商会议期间被注意到的,这两次会议的主要目的是选举中国政府新一届的领导人并制定新的五年计划。

邮件包含一个针对Office的EXP套件(CVE-2012-0158)用来释放一个良性的Payload以及一个诱饵wendan。其中包括我们熟知的PlugX木马,它是通过一系列良性文件来生成一个恶意的可执行程序。还包括微软的OinfoP11.exe文件,该文件与“Office Data Provider for WBEM”有关,合法存在于美国国家标准和技术研究所的国家软件参考库(NIST)中,是Microsoft Office 2003套件中的一个组件。为了通过完整性校验的保护措施,这个文件会被认为是合法的,无害的。一般情况下,在Windows 7及以上的发行版中,当UAC启用时,svchost.exe会通过弹出一个UAC对话框来与用户交互进而获得权限。而在这次攻击中不需要用户交互授权。主要的问题是这个文件是通过DLL加载的。在之前的一些案例中,PlugX利用类似DLL加载的方式利用例如McAfee的mcvsmap.exe,英特尔的hkcmd.exe以及NVIDIA的NvSmart.exe来加载自身。在这个案例中,OinfoP11.exe加载一个名为Oinfo11.ocx的DLL(这是一个被Payload污染的ActiveX DLL)并解压,解密出一个Payload文件Oinfo11.ISO。

下面的图片展示了这个攻击套件中文件之间的调用关系和各自的行为:

图片 1: 攻击示例图

渗透:

在图2中,攻击中发送的邮件的内容是宣传一个妇女投票权运动的研讨会。图片3是位于Google上的申请表格,也包含与邮件类似的内容。图片4中,诱饵文档包含Google表格链接中有关这次研讨会的详细内容。


图片 2: 原始邮件

下图是图片2邮件内容的英文翻译:

图片 3: Google 表格

诱饵文档:

图片 4: 诱饵文档

下图是上面文档内容的翻译:

攻击分析:

XLS文件(md5:1146fdd6b579ac7144ff575d4d4fa28d)利用CVE-2012-1058的Office exp来释放“ews.exe" payload程序和图片4中的诱饵文档。这个Payload会提取出微软的文件OINFOP11.exe,良性的DLL Oinfo11.ocx和一个在Oinfo11.ISO文件中的经过编码和压缩后的shellcode区段。Oinfop11.exe会加载一个Oinfo11.ocx的DLL文件,一旦加载之后会通过RTLDecompressBuffer进行解压缩并解密出Oinfo11.ISO让其运行在内存中。恶意的可执行程序永远不会驻留在文件系统中也因此不会被针对文件系统的反病毒软件察觉到。图片5展示出了被释放的各文件中的层次关系。

图片 5: Payload 关系

释放文件的总结表格:

利用细节:

恶意软件使用CVE-2012-0158来从图片6中的区段中释放Payload。

图片 6: Exp payload区段

Shellcode可以在这个区段的头几个字节中找到。图片7展示图片6中从偏移量0x1de0b开始的汇编代码。

图片 7: Payload Shellcode

活动特征:

OinfoP11.exe是一个来自微软的有效文件,见图片8

图片 8: 签名示例

当Oinfop11.exe通过下面的命令参数调用时,他会加载Oinfo11.ocx文件。

C:\Documents and Settings\All Users\SxS\OINFOP11.EXE” 200 0

图片 10: Loader 入口

箭头所指的地方就是ISO文件解压并解密后其中shellcode的入口点所在。

图片 11: Shellcode 例子

这是一段良性DLL Oinfo11.ocx加载后的内存空间。Oinfo11.ocx的核心功能是一个加载器,将恶意的payload代码释放到内存空间中。

图片 12: 解密后的ISO文件

这是是在整个过程中使用的解密循环。在这个样本中是用来解密内存中的ISO shellcode。

图片 13: 内存中DLL的位置

这是内存中恶意DLL的完整地址空间。

自身防御:

需要留意的地方:

注入:

DLL使用VirtualAlloc向svchost中注入代码,然后使用WriteProcessMemory写入svchost.exe的内存空间。然后线程会重新运行注入的代码。这个注入进程对svchost.exe和msiexec.exe会进行同样的操作。当svchost.exe产生msiexec.exe之后,它会调用CreateEnvironmentBlock和CreateProcessesUser让svchost服务启动一个新的用户会话。

键盘记录行为:

恶意程序会在%ALLUSERS PROFILE%\SXS\目录下创建一个NvSmart.hlp的键盘记录文件。下面是该文件的一个例子。

建立代理:

这个样本可以通过ICMP,UDP,HTTP和TCP来进行通信。在这种情况下样本使用:[ TCP], Host: [202.69.69.41:90], Proxy: [0::0::]的方式来建立一个代理用于C&C通信。

图片 14: 通信选项

该样本支持的一些操作模块在下面的表格中展示出来了。


图片15 15: 功能性样本

C&C的通信细节:

在图片16中,样本链接了202.69.69.41的90端口。这个案例中C&C节点已经挂掉了,但通信方式是一种非http的动态通信。图片17展示了一个回调内容的样本。这个样本也会尝试连接同一网络中的其他实例。


图片 16: 与C&C通信相关的PCAP

图片 17: Callback Traffic 

图片 18: UDP Beacon


图片 19: UDP 数据包内容

Whois Information on the IP 202.69.69.41
inetnum: 202.69.68.0 – 202.69.71.255
netname: NEWTT-AS-AP
descr: Wharf T&T
Limited descr: 11/F, Telecom Tower,
descr: Wharf T&T Square, 123 Hoi Bun Road
descr: Kwun Tong, Kowloon country: HK
admin-c: EN62-AP
tech-c: BW128-AP
mnt-by: APNIC-HM
mnt-lower: MAINT-HK-NEWTT
mnt-routes: MAINT-HK-NEWTT
mnt-irt: IRT-NEWTT-HK
status: ALLOCATED PORTABLE
remarks: -+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+
remarks: This object can only be updated by APNIC hostmasters.
remarks: To update this object, please contact APNIC
remarks: hostmasters and include your organisation’s account
remarks: name in the subject line.
remarks: -+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+
changed: hm-changed@apnic.net 20120725
source: APNIC
person: Eric Ng
nic-hdl: EN62-AP
remarks: please report spam or abuse to abuse@wharftt.com
e-mail: abuse@wharftt.com
e-mail: ericng@wharftt.com
address: 11/F Telecom Tower, Wharf T&T Square
address: 123 Hoi Bun Road, Kwun Tong,’
phone: +852-2112-2653 fax-no: +852-2112-7883
country: HK changed: ericng@wharftt.com 20070716
mnt-by: MAINT-NEW source: APNIC
person: Benson Wong
nic-hdl: BW128-AP
e-mail: abuse@wharftt.com
address: 5/F, Harbour City, Kowloon,
address: Hong Kong
phone: +852-21122651
fax-no: +852-21127883
country: HK
changed: bensonwong@wharftt.com 20070420
mnt-by: MAINT-HK-NEWTT
source: APNIC

参考:

[1] http://rmqlxk.blogspot.com/2013/03/blog-post_15.html
[2] http://www.circl.lu/files/tr-12/tr-12-circl-plugx-analysis-v1.pdf
[3] http://lastline.com/an-analysis-of-plugx.php
[4] http://blog.trendmicro.com/trendlabs-security-intelligence/unplugging-plugx-capabilities/

via[Fire blog]

这些评论亮了

  • 吐槽帝 回复
    哥看浏览量太低,本来就懒得回你,竟然你挑事情,哥绝对陪你
    1.首先指出,你的英文水平确实一般,怪不得,会说出you are XXXX
    原文
    http://www.fireeye.com/blog/technical/cyber-exploits/2013/05/targeted-attack-trend-alert-plugx-the-old-dog-with-a-new-trick.html
    没有一句提到apt,使用的词汇是, "a targeted attack" 就是有针对性地攻击,
    这点方面,大辽国是很谨慎的,避免使用apt,应为apt本身产生的过程中,
    1 就暗含了对大宋国背景的推测
    2 就要证明是有长期性的,持续性,而这个过程本身求证就是困难的,fe的blog上面很少用apt ,m公司用了apt1,也为了指责大宋国的zf背景而已
    当然信息办也对apt有过定义,不过用舶来的词汇之前,最好先求证下。
    前面扯远了,回到本题, 这个blog的文章的暗示,是说hk的政治受到了定向攻击,这个背景么,看官们都明白,就是这个意思,
    现在回到和翰海源安全的恩恩怨怨,看官们可以看之前的帖子了解大貌
    只有为啥用CVE2012-0158。勿庸置疑,这个去年到今年年来公开的比较好的文件类型漏洞,但这也是一个old day,
    从释放的文件名你就能看出一个团队,我只能佩服你了,连大辽国还需要一个工具的作恶意代码的dna 检测,才能判断是否工具来源,另外插一句,gh0st真的容易被抓,哈哈
    利用shellcode的攻击,首先普及你一个知识,没有什么利用shellcode的攻击,每一个exp都需要shellcode来执行payload,然后,现有的防御设备本身对这块是有防御的,不过很多是基于签名的,产品这个不需要我一一列举,否则就和你们一样做软文了
    我也懒得吐槽这块了,只要是看的人少。
    你很纠结old day 和 0day 的问题,我也一并回答你,之前我拿0day说事情,是因为fe说他那套技术非基于签名的并且实际中抓到了0day,而且fe也很少提及apt之类的,扒拉扒拉!!我想你们星云也有意把fe作为你们的标杆对手,所以先抓几个0day来证明你们的技术确实可靠,然后学学严谨态度
    ps:至于你把黑客分成2进制黑客,web黑客,对之类的分类,我感觉你是不是黑基学成归来。我表达下,黑客都有专攻的方向,每个方向做到顶级都是很不易,向黑哥致敬。
    ps2:再甩得干货,我说 新大X,没有没有点穿,已经给你们面子了,那好吧,多透露一点,福建 南X
    还需要我再多说点什么么
    )60( 亮了
  • flashsky 回复
    @moc3755 @吐槽帝
    1. 感谢吐槽帝对我们工作中不完善的地方指出,而且给我们的市场人员进行了一些技术指导。回头我们相关的文章需要更加严谨一些。
    2. APT攻击是一个手法,星云在很多APT可能用到而常规检测手段难以检测的技术环节做了检测,但只从检测出来的攻击载体而言,可能是APT也可能不是APT。这个如吐槽帝所说,如果没有证实持续针对性,是比较难肯定说APT的,这需要取证配合。即使用了0DAY,也不一定是APT,用了较新而少见的NDAY,也可能是APT。另针对大面积发邮件的,一般不是APT,但不排除APT攻击团队用一些较老漏洞捞网攻击做下一步攻击的准备,但这种攻击本身不能叫APT。
    3.翰海源是一个技术驱动的团队,对技术的问题争论,是有一定标准区分对错的,吐槽帝对于这两次攻击是否APT的质疑是有道理的,为了市场宣传,扯APT情理上可以理解,但要知道,这种说法技术上是不严谨的。人家指出来了,我们应该虚心接受并努力改进,少犯同样的错误。所以moc3755,不用多说了,反省自己,努力做好自己的产品是第一的,技术驱动团队首先要尊重技术和愿意和我们就技术上较真的技术人员,也要对自身技术有不断新的追求和更高的要求。另外请不要用公司官方的身份进行相关的争吵。再次感谢吐槽帝。
    以上是我代表翰海源CEO的身份发表的看法
    下面是和吐槽帝的一些技术看法做交流,仅代表个人看法
    1.一些漏洞利用是无需SHELLCODE负载的,特别是逻辑类的,如DLL劫持那个,特定名字的木马DLL和相关正常应用文档放在一个目录下,用户打开正常文档就可以触发。
    2.我理解每个检测设备都不可能没有缺陷,因此攻防对抗本身就是持续的,所以你说可以完爆我们星云,我不质疑。我只想问下,你的0DAY有信心完爆FIREEYE不?如果没有,请说出你认为我们和FIREEYE的技术差距在哪里(既然你如此有信心完爆我们,应该对我们的东西做过研究了)。你可以发邮件和我交流 xing_fang@vulnhunt.com. 我对技术研究,特别是FIREEYE产品的优点和我们星云产品的问题,是真心求知。
    )43( 亮了
  • 吐槽帝 回复
    忘记贴翰海源安全的言论,可能看官们不知道情况
    关于APT和垃圾邮件,恶意shellcode编写是有门槛和基础的,10个黑客中懂二进制和shellcode的差不多只有1~2个,差不多就这样的比例,一个web黑客差不多6个月就可以出师了,一个二进制的黑客没有3~5年的功底是搞不定来龙去脉的,黑客攻击也是讲成本的,我表达的是,当你收到一份文档,文档中包含了恶意的shellcode攻击代码,对企业来说,这个警报级别已经可以拉到最高了,二进制的shellcode攻击不是普通攻击,如果你收到一封邮件,文档并包含了恶意shellcode,如果你还是当作一个垃圾邮件来处理,只能说you are too young,too simple;
    )9( 亮了
  • moc3755 回复
    @吐槽帝 把黑哥和刺总也搬出来了,01年我就已经认识刺了,你想利用他们的号召力让web流群起而攻之,你这招借刀杀人玩的挺溜啊;首先我声明的是,这个观点里并没有鄙视和歧视搞web安全的意思,我的核心意思是web和二进制两者的攻击成本不一样;请不要歪解别人的观点;用得着上升到“你和xxx的恩怨”的高度吗?大家理解APT的定义不同而已,我本来是很欢迎技术讨论的,是你挑衅在先,1,说可以用手中0day完爆星云;2,有人提到PK,你说xxx不够格;3,说xxx发布的分析报告用的都是一个模版(意思就是拷贝的了);各位看官,多看一方观点也不吃亏,只是不要被有心人曲解利用就行;
    )9( 亮了
  • instruder 回复
    上面的翰海源安全言论不代表我们公司的言论 这个不是我们技术组的,属于销售,故请吐槽帝大神高抬贵手哇 低调是我们做技术的本分 销售的可以不用理了
    )8( 亮了
发表评论

已有 30 条评论

取消
Loading...
css.php