高级威胁漏洞背景

在高级威胁攻击中,黑客远程投递入侵客户端最喜欢的漏洞是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高级威胁漏洞在野利用分析的更多相关文章

  1. CVE-2015-1641 Office类型混淆漏洞及shellcode分析

    作者:枕边月亮 原文来自:CVE-2015-1641 Office类型混淆漏洞及shellcode分析 0x1实验环境:Win7_32位,Office2007 0x2工具:Windbg,OD,火绒剑, ...

  2. Java反序列化漏洞通用利用分析

    原文:http://blog.chaitin.com/2015-11-11_java_unserialize_rce/ 博主也是JAVA的,也研究安全,所以认为这个漏洞非常严重.长亭科技分析的非常细致 ...

  3. Lib之过?Java反序列化漏洞通用利用分析

    转http://blog.chaitin.com/ 1 背景 2 Java反序列化漏洞简介 3 利用Apache Commons Collections实现远程代码执行 4 漏洞利用实例 4.1 利用 ...

  4. 【转】cve2014-3153 漏洞之详细分析与利用

    背景学习: Linux Futex的设计与实现 使用者角度看bionic pthread_mutex和linux futex实现 By kernux TopSec α-lab 一 漏洞概述 这个漏洞是 ...

  5. SMB协议利用之ms17-010-永恒之蓝漏洞抓包分析SMB协议

    SMB协议利用之ms17-010-永恒之蓝漏洞抓包分析SMB协议 实验环境: Kali msf以及wireshark Win7开启网络共享(SMB协议) 实验步骤: 1.查看本机数据库是否开启,发现数 ...

  6. CVE-2015-3864漏洞利用分析(exploit_from_google)

    title: CVE-2015-3864漏洞利用分析(exploit_from_google) author: hac425 tags: CVE-2015-3864 文件格式漏洞 categories ...

  7. CVE-2013-2551漏洞成因与利用分析(ISCC2014 PWN6)

    CVE-2013-2551漏洞成因与利用分析 1. 简介 VUPEN在Pwn2Own2013上利用此漏洞攻破了Win8+IE10,5月22日VUPEN在其博客上公布了漏洞的细节.它是一个ORG数组整数 ...

  8. CVE-2014-0322漏洞成因与利用分析

    CVE-2014-0322漏洞成因与利用分析 1. 简介 此漏洞是UAF(Use After Free)类漏洞,即引用了已经释放的内存,对指定内存处的值进行了加1.其特点在于攻击者结合flash实现了 ...

  9. CVE-2013-3897漏洞成因与利用分析

    CVE-2013-3897漏洞成因与利用分析 1. 简介 此漏洞是UAF(Use After Free)类漏洞,即引用了已经释放的内存.攻击者可以利用此类漏洞实现远程代码执行.UAF漏洞的根源源于对对 ...

随机推荐

  1. YOLOv3模型识别车位图片的测试报告(节选)

    1,YOLOv3模型简介 YOLO能实现图像或视频中物体的快速识别.在相同的识别类别范围和识别准确率条件下,YOLO识别速度最快. 官网:https://pjreddie.com/darknet/yo ...

  2. Redis缓存Object,List对象

    一.到目前为止(jedis-2.2.0.jar),在Jedis中其实并没有提供这样的API对对象,或者是List对象的直接缓存,即并没有如下类似的API jedis.set(String key, O ...

  3. c# 导出DataSet到excel

    public static bool ExportToExcel_dataSet(string queryNo, string conditions) { bool _bl = false; try ...

  4. 【分享】4412开发板POP烧写ubuntu出错,如何挂载emmc分区解决方法

    本文转自:http://bbs.topeetboard.com 平台:4412精英版系统:ubuntu系统 按照教程烧写ubuntu文件系统,TF卡和EMMC分区都完成(总之之前的操作试了几遍都是没问 ...

  5. 拼字符串 showArray.push(data); showArray.join(",")

    //---// var showColumns = getShowColsRows("table");// var showArray = [];// $.each(showCol ...

  6. jvm中的内存溢出与内存泄露

    内存溢出: 就是我们通常遇到的OutOfMemoryError异常,它俗理解就是内存不够,通常在运行大型程序时发生,当程序所需要的内存远远超出了JVM内存所承受大小,就会报出OutOfMemoryEr ...

  7. 了解Java密码扩展的基础

      了解Java密码扩展的基础     Java密码扩展(The Java Cryptography Extension),是JDK1.4的一个重要部分,基本上,他是由一些包构成的,这些包形成了一个框 ...

  8. mysql安装及navicat连接

    1.下载mysql官方连接:https://dev.mysql.com/downloads/mysql/ 下载成功后,解压到自己想要的路径下并创建my.ini文件和配置环境变量 然后我们在根目录下创建 ...

  9. Java 序列化Serializable详解(附详细例子)

    Java 序列化Serializable详解(附详细例子) 1.什么是序列化和反序列化Serialization(序列化)是一种将对象以一连串的字节描述的过程:反序列化deserialization是 ...

  10. IOS开发之关键字synchronized

    static Config * instance = nil; +(Config *) Instance { @synchronized(self)  { if(nil == instance)  { ...