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

图1
CVE-2017-0199是Office系列办公软件中的一个逻辑漏洞,和常规的内存破坏型漏洞不同,这类漏洞无需复杂的利用手法,直接就可以在office文档中运行任意的恶意脚本,使用起来稳定可靠。微软在今年4月安全更新中对CVE-2017-0199漏洞进行了修复,但安全补丁的修复及防御仍然可以绕过,在7月微软的安全更新中又修复了同样类型的新漏洞CVE-2017-8570。在Syscan360 2017西雅图安全会议上,Haifei li和Bing Sun的议题《Moniker魔法:直接在Microsoft Office中运行脚本》详细解析了这类漏洞的原理,本文就不再赘述,下面开始着重分析这些漏洞的在野利用情况。
野外利用的第一个RTF版本
CVE-2017-0199漏洞在第一次被公开时,野外最早利用的样本是以word文档的形成进行传播利用,由于office文档后缀关联的宽松解析特性,更改其他文档后缀名,攻击仍然可以成功,所以野外利用的大部分恶意文档的真实文件格式是RTF格式,但恶意文档的后缀名却是 doc 、docx等后缀,该攻击具有较强的伪装欺骗特性。在野外利用样本文件格式中有一个关键字段objupdate,这个字段的作用是自动更新对象,当受害者打开office文档时就会加载远程URL的对象,对远程服务器触发一个HTTP请求,恶意服务器会对针对客户端的http请求强制返回Content-type为application/hta响应,最终客户端office进程会将远程的文件下载当作hta脚本运行,整个攻击过程稳定且不需要受害者的任何交互操作。

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

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

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

图5
当受害者打开恶意幻灯片文档时就会自动加载远程URL的对象,对远程服务器发起一个HTTP请求将文件下载到本地,最终客户端office进程会将下载到本地的文件当作sct脚本执行。
最新流行的第三个DOCX版本
近期我们发现有部分真实文件格式是Docx格式的文档加入了CVE-2017-0199的漏洞利用,攻击者非常巧妙的将CVE-2017-0199漏洞的RTF文件作为一个源嵌入到了Docx格式的文档中,这样导致docx文件在打开时是自动去远程获取包含0199漏洞的rtf文件,再触发后面的一连串攻击行为,这样的攻击增加了安全软件的查杀难度,一些杀毒软件毫无察觉!
如下图,我们会发现docx格式的文档嵌入了一个远程的文档对象:

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

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

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

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

图10
该样本使用powershell下载执行shell.exe
下载地址为hxxp://192.166.218.230:3550/ratman.exe
Shell.exe 是一个混淆的.NET程序

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

图12

图13
如,窃取Firefox信息

图14
窃取chrome 360Browser等浏览器信息

图 15
窃取各类FTP软件的信息

图16
最后提交窃取的相关数据到远程服务器
hxxp://www.allstroyka.eleko.by/libraries/domit/dub/fre.php

图17
“乌龙”样本IOC
url
hxxp://[www.allstroyka.eleko.by/libraries/domit/dub/fre.php](http://www.allstroyka.eleko.by/libraries/domit/dub/fre.php)
hxxp://192.166.218.230:3550/ratman.exe
hxxp://192.166.218.230:3550/logo.doc
md5:
f2260d063e3aa2275acc59687e263e9c Shell.exe
e8ad2a5650ba9b89c44389f78da205c8 <span style="font-size: 10pt; color: rgb(51, 51, 51);">ppsx</span>
总结和漏洞防护建议
目前流行的office高级威胁漏洞趋向于稳定的逻辑漏洞,CVE-2017-0199仍然是主流利用漏洞类型,该漏洞会针对不同文档格式利用有不同变种,同时新的CVE-2017-8570漏洞也在蠢蠢欲动。面对恶意文档攻击,广大用户需要提高安全意识,不要轻易打开不明来路的office文档,同时针对如下流行的office办公软件,使用360安全卫士安装最新的安全补丁,修复CVE-2017-0199和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) |
Office高级威胁漏洞在野利用分析的更多相关文章
- CVE-2015-1641 Office类型混淆漏洞及shellcode分析
作者:枕边月亮 原文来自:CVE-2015-1641 Office类型混淆漏洞及shellcode分析 0x1实验环境:Win7_32位,Office2007 0x2工具:Windbg,OD,火绒剑, ...
- Java反序列化漏洞通用利用分析
原文:http://blog.chaitin.com/2015-11-11_java_unserialize_rce/ 博主也是JAVA的,也研究安全,所以认为这个漏洞非常严重.长亭科技分析的非常细致 ...
- Lib之过?Java反序列化漏洞通用利用分析
转http://blog.chaitin.com/ 1 背景 2 Java反序列化漏洞简介 3 利用Apache Commons Collections实现远程代码执行 4 漏洞利用实例 4.1 利用 ...
- 【转】cve2014-3153 漏洞之详细分析与利用
背景学习: Linux Futex的设计与实现 使用者角度看bionic pthread_mutex和linux futex实现 By kernux TopSec α-lab 一 漏洞概述 这个漏洞是 ...
- SMB协议利用之ms17-010-永恒之蓝漏洞抓包分析SMB协议
SMB协议利用之ms17-010-永恒之蓝漏洞抓包分析SMB协议 实验环境: Kali msf以及wireshark Win7开启网络共享(SMB协议) 实验步骤: 1.查看本机数据库是否开启,发现数 ...
- CVE-2015-3864漏洞利用分析(exploit_from_google)
title: CVE-2015-3864漏洞利用分析(exploit_from_google) author: hac425 tags: CVE-2015-3864 文件格式漏洞 categories ...
- CVE-2013-2551漏洞成因与利用分析(ISCC2014 PWN6)
CVE-2013-2551漏洞成因与利用分析 1. 简介 VUPEN在Pwn2Own2013上利用此漏洞攻破了Win8+IE10,5月22日VUPEN在其博客上公布了漏洞的细节.它是一个ORG数组整数 ...
- CVE-2014-0322漏洞成因与利用分析
CVE-2014-0322漏洞成因与利用分析 1. 简介 此漏洞是UAF(Use After Free)类漏洞,即引用了已经释放的内存,对指定内存处的值进行了加1.其特点在于攻击者结合flash实现了 ...
- CVE-2013-3897漏洞成因与利用分析
CVE-2013-3897漏洞成因与利用分析 1. 简介 此漏洞是UAF(Use After Free)类漏洞,即引用了已经释放的内存.攻击者可以利用此类漏洞实现远程代码执行.UAF漏洞的根源源于对对 ...
随机推荐
- [转]Android开发要看的网站(不断更新中)
Android网址或Blog Android官网 身为Android开发者不知道这个网站就太说不过去了,上面有你任何你需要的东西 Android Developers Blog Android官网博客 ...
- Win7系统32位和64位的区别
Win7系统32位和64位的区别已经是一个老话题了,可是还是有很多朋友不明白.这两者到底有什么区别呢?下面本文与大家通俗的介绍下Win7系统32位和64位的区别,其他一些深入的理论讲述,大家可以看看文 ...
- Farseer.net轻量级ORM开源框架 V1.5版本升级消息
SHA-1: 0ede88104f269f108b68be1e87ffcead4a354ec6 * 提交V1.5版本1.新增:整表缓存的实现方式(提取接口,可由客户端算定义实现)2.新增:SQL配置化 ...
- (转)淘淘商城系列——MyBatis分页插件(PageHelper)的使用以及商品列表展示
http://blog.csdn.net/yerenyuan_pku/article/details/72774381 上文我们实现了展示后台页面的功能,而本文我们实现的主要功能是展示商品列表,大家要 ...
- python学习第三次
while循环 表示当条件成立的时候就循环适用于不知道具体循环次数,但是确定在某个条件成立的情况下就循环while语法:while 条件表达式:语句块#另一种表达方式while 条件表达式:语句块1e ...
- jQuery 开始动画,停止动画
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 5-Java-C(小题答案)
1. a[i][j]=a[i-1][j-1]+a[i-1][j] 2.1835421 3.93 4.1572836
- Asp.Net MVC中Controller、Action、View是如何激活调用的
上篇我们介绍了MVC的路由,知道在注册路由的时候会创建一个MvcHandler将其和Url规则一起放入到了RouteCollection中,之后请求通过UrlRoutingModule,根据当前的UR ...
- python3+beautifulSoup4.6抓取某网站小说(一)爬虫初探
本次学习重点: 1.使用urllib的request进行网页请求,获取当前url整版网页内容 2.对于多级抓取,先想好抓取思路,再动手 3.BeautifulSoup获取html网页中的指定内容 4. ...
- 洛谷 2187 小Z的笔记
[题解] DP. 设f[i]表示前i个字母,保留第i个字母,最多可以保留多少个字母:设g[i]为当前字母为i的位置对应的f的最大值. 转移方程就是f[i]=max(f[i], g[j]+1) (j与 ...