【漏洞分析】Office高级威胁漏洞在野利用分析

阅读量    42208 |

分享到: QQ空间 新浪微博 微信 QQ facebook twitter

https://p0.ssl.qhimg.com/t010fa422f8aa083abb.png


0x00 背景介绍

在高级威胁攻击中,黑客远程投递入侵客户端最喜欢的漏洞是office文档漏洞,就在刚刚结束的黑帽子大会上,最佳客户端安全漏洞奖颁给了CVE-2017-0199漏洞,这个漏洞是时下office漏洞领域最热门的安全漏洞,最佳客户端安全漏洞这个荣誉归于Ryan Hanson、Haifei li、Bing Sun以及未知的黑客。

 http://p8.qhimg.com/t01d415b7a746bdbe28.png

CVE-2017-0199是Office系列办公软件中的一个逻辑漏洞,和常规的内存破坏型漏洞不同,这类漏洞无需复杂的利用手法,直接就可以在office文档中运行任意的恶意脚本,使用起来稳定可靠。微软在今年4月安全更新中对CVE-2017-0199漏洞进行了修复,但安全补丁的修复及防御仍然可以绕过,在7月微软的安全更新中又修复了同样类型的新漏洞CVE-2017-8570。在Syscan360 2017西雅图安全会议上,Haifei li和Bing Sun的议题《Moniker魔法:直接在Microsoft Office中运行脚本》详细解析了这类漏洞的原理,本文就不再赘述,下面开始着重分析这些漏洞的在野利用情况。


0x01 漏洞概述

CVE-2017-0199和CVE-2017-8570是Office系列办公软件中的逻辑漏洞,和常规的内存破坏型漏洞不同,这类漏洞无需复杂的利用手法,直接就可以在office文档中运行任意的恶意脚本,使用起来稳定可靠。

CVE-2017-0199漏洞利用OFFICE OLE对象链接技术,将包裹的恶意链接对象嵌在文档中,OFFICE调用URL Moniker(COM对象)将恶意链接指向的HTA文件下载到本地, URL Moniker通过识别响应头中content-type的字段信息最后调用mshta.exe将下载到的HTA文件执行起来,同时还存在Script Moniker的利用方式,攻击者使用PowerPoint播放动画期间会激活该对象,从而执行sct脚本(Windows Script Component)文件。

CVE-2017-8570漏洞是利用复合Moniker绕过了CVE-2017-0199的补丁针对Script Moniker和URL Moniker相关classid的拦截,目前野外暂未发现攻击样本。

0x02 漏洞攻击面影响

CVE-2017-0199

Microsoft Office 2007 Service Pack 3

Microsoft Office 2010 Service Pack 2 (32-bit editions)

Microsoft Office 2010 Service Pack 2 (64-bit editions)

Microsoft Office 2013 Service Pack 1 (32-bit editions)

Microsoft Office 2013 Service Pack 1 (64-bit editions)

Microsoft Office 2016 (32-bit edition)

Microsoft Office 2016 (64-bit edition)

Windows 7 for 32-bit Systems Service Pack 1

Windows 7 for x64-based Systems Service Pack 1

Windows Server 2008 for 32-bit Systems Service Pack 2

Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation)

Windows Server 2008 for Itanium-Based Systems Service Pack 2

Windows Server 2008 for x64-based Systems Service Pack 2

Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation)

Windows Server 2008 R2 for Itanium-Based Systems Service Pack 1

Windows Server 2008 R2 for x64-based Systems Service Pack 1

Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)

Windows Server 2012

Windows Server 2012 (Server Core installation)

Windows Vista Service Pack 2

Windows Vista x64 Edition Service Pack 2

CVE-2017-8570

Microsoft Office 2007 Service Pack 3

Microsoft Office 2010 Service Pack 2 (32-bit editions)

Microsoft Office 2010 Service Pack 2 (64-bit editions)

Microsoft Office 2013 RT Service Pack 1

Microsoft Office 2013 Service Pack 1 (32-bit editions)

Microsoft Office 2013 Service Pack 1 (64-bit editions)

Microsoft Office 2016 (32-bit edition)

Microsoft Office 2016 (64-bit edition)

0x03 漏洞详情

野外利用的第一个RTF版本

CVE-2017-0199漏洞在第一次被公开时,野外最早利用的样本是以word文档的形成进行传播利用,由于office文档后缀关联的宽松解析特性,更改其他文档后缀名,攻击仍然可以成功,所以野外利用的大部分恶意文档的真实文件格式是RTF格式,但恶意文档的后缀名却是 doc 、docx等后缀,该攻击具有较强的伪装欺骗特性。在野外利用样本文件格式中有一个关键字段objupdate,这个字段的作用是自动更新对象,当受害者打开office文档时就会加载远程URL的对象,对远程服务器触发一个HTTP请求,恶意服务器会对针对客户端的http请求强制返回Content-type为application/hta响应,最终客户端office进程会将远程的文件下载当作hta脚本运行,整个攻击过程稳定且不需要受害者的任何交互操作。 

 http://p9.qhimg.com/t01f1c0a4c4667d45e9.png

野外利用的第二个PPSX版本

由于RTF版本的漏洞利用大量使用,各家安全软件检出率也都比较高,攻击者开始转向另外一种office文档格式进行攻击,攻击者发现ppsx格式的幻灯片文档也可以无交互触发漏洞,该利用方式的原理是利用幻灯片的动画事件,当幻灯片的一些预定义事件触发时可以自动触发导致漏洞利用。

如下图,一个流行的攻击样本中嵌入的恶意动画事件:

 http://p3.qhimg.com/t014daeba5959e24f98.png

事件会关联一个olelink对象,原理类似rtf版本,如下xml中的字段。

 http://p2.qhimg.com/t015ed7ad7a4e358710.png

但对象会嵌入的是一个带有script协议头的远程地址,而url地址中的XML文件是一个恶意sct脚本。

 http://p1.qhimg.com/t01c16c808ed775e34e.png

当受害者打开恶意幻灯片文档时就会自动加载远程URL的对象,对远程服务器发起一个HTTP请求将文件下载到本地,最终客户端office进程会将下载到本地的文件当作sct脚本执行。 

最新流行的第三个DOCX版本

近期我们发现有部分真实文件格式是Docx格式的文档加入了CVE-2017-0199的漏洞利用,攻击者非常巧妙的将CVE-2017-0199漏洞的RTF文件作为一个源嵌入到了Docx格式的文档中,这样导致docx文件在打开时是自动去远程获取包含0199漏洞的rtf文件,再触发后面的一连串攻击行为,这样的攻击增加了安全软件的查杀难度,一些杀毒软件毫无察觉!

如下图,我们会发现docx格式的文档嵌入了一个远程的文档对象:

 http://p5.qhimg.com/t019ec0d385e45d82a8.png

打开文档后会自动打开远程的恶意RTF文件!

 http://p8.qhimg.com/t01543dfcd8225917f4.png

我们可以看到在野利用的RTF样本在VT上的检出率为31/59。

 http://p6.qhimg.com/t011500a12426bfcc5f.png

而最新流行的DOCX版本的检出率仅为5/59。

 http://p8.qhimg.com/t013c082967ba50509d.png

最新发现的“乌龙”样本

上周我们在外界发现了多例标注为CVE-2017-8570的office幻灯片文档恶意样本,同时有安全厂商宣称第一时间捕获了最新的office漏洞,但经过分析我们发现该样本仍然是CVE-2017-0199漏洞野外利用的第二个PPSX版本,通过对一例典型样本进行分析,我们发现样本使用的payload是Loki Bot窃密类型的木马病毒,是一起有针对性的窃密攻击。

 http://p8.qhimg.com/t01a05c2883103900ab.png

该样本使用powershell下载执行shell.exe

下载地址为hxxp://192.166.218.230:3550/ratman.exe

Shell.exe 是一个混淆的.NET程序

 http://p4.qhimg.com/t010e3ed8b1cd7240b6.png

Shell.exe会内存解密执行Loki Bot功能,这时Loki Bot木马会窃取各种软件的信息。

 http://p9.qhimg.com/t011c7da272075390fc.png

 http://p5.qhimg.com/t01eb81152bfcdd3489.png

如,窃取Firefox信息

 http://p9.qhimg.com/t0143c65c1a458831ba.png

窃取chrome  360Browser等浏览器信息

http://p7.qhimg.com/t01e34f16752eb733b3.png 

窃取各类FTP软件的信息

 http://p4.qhimg.com/t0109fe055e8687ec1d.png

最后提交窃取的相关数据到远程服务器

hxxp://www.allstroyka.eleko.by/libraries/domit/dub/fre.php

 http://p4.qhimg.com/t01200e2d0eda8c9dc6.png

0x04 修复建议

目前流行的office高级威胁漏洞趋向于稳定的逻辑漏洞,CVE-2017-0199仍然是主流利用漏洞类型,该漏洞会针对不同文档格式利用有不同变种,同时新的CVE-2017-8570漏洞也在蠢蠢欲动。面对恶意文档攻击,广大用户需要提高安全意识,不要轻易打开不明来路的office文档,同时针对如下流行的office办公软件,使用360安全卫士安装最新的安全补丁,修复CVE-2017-0199和CVE-2017-8570漏洞。

0x05 时间线

0x06 参考文档

https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2017-8570

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-0199

分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
|发表评论
|评论列表
加载更多