CVE-2017-0199:分析 Microsoft Office RTF 漏洞。FireEye最近检测到利用CVE-2017-0199安全漏洞的恶意Microsoft Office RTF文档,要知道CVE-2017-0199可是此前尚未公开的漏洞。当用户打开包含该漏洞利用代码的文档时,恶意代码就会下载并执行包含PowerShell命令的Visual Basic脚本。 FireEye已经发现了一些通过CVE-2017-0199漏洞下载并执行各种臭名昭著的恶意软件系列的有效载荷的Office文档。
FireEye与Microsoft分享了该漏洞的详细信息,并通过协调,根据Microsoft公司发布相应的补丁程序的时间来选择该漏洞的公开披露时机,具体情况读者可以从这里找到。
在该漏洞的补丁发布之前,该漏洞的利用代码能够绕过大多数安全措施;然而,FireEye电子邮件和网络产品仍然检测到了相关的恶意文件。 FireEye建议Microsoft Office用户从Microsoft下载安装相应的补丁程序。 攻击场景
攻击的具体方式如下所示:
1. 攻击者通过电子邮件向目标用户发送含有OLE2嵌入式链接对象的Microsoft Word文档
2. 当用户打开文档时,winword.exe将会向远程服务器发出HTTP请求,以索取恶意HTA文件
3. 服务器返回的文件是一个带有嵌入式恶意脚本的假RTF文件
4. Winword.exe通过COM对象查找application / hta的文件处理程序,从而导致Microsoft HTA应用程序(mshta.exe)加载并执行恶意脚本
根据我们之前发现的两个文档来看,其恶意脚本将终止winword.exe进程,下载额外的有效载荷,并加载诱饵文件。之所以要终止原始的winword.exe进程,是为了掩盖OLE2link生成的用户提示。该提示具体如图1所示。
图1:Visual Basic脚本隐藏的用户提示
文件1——(MD5: 5ebfd13250dd0408e3de594e419f9e01)
对于FireEye发现的第一个恶意文件来说,攻击过程分为三个阶段。 首先,嵌入的OLE2链接对象会令winword.exe通过以下URL下载第一阶段的恶意HTA文件:
1
http[:]//46.102.152[.]129/template.doc下载之后,这个恶意的HTA文件将由“application / hta”处理程序进行处理。在图2中高亮显示的行展示了其第一次下载,其后是附加的恶意有效载荷。
图2:实际攻击情形
一旦下载完成,模板文件将被存储在用户的临时Internet文件中,并将其命名为[?] .hta,其中[?]是在运行时才被确定的。逻辑错误
Mshta.exe程序负责处理Content-Type为“application / hta”的文件,解析文件内容并执行脚本。 图3展示的是winword.exe正在查询“application / hta”处理程序的CLSID的注册表值。
图3:Winword查询注册表值
Winword.exe向DCOMLaunch服务发出请求,这将导致托管DCOMLaunch的svchost.exe进程执行mshta.exe。之后,Mshta.exe就会执行嵌入在恶意HTA文档中的脚本。 图4显示了第一阶段下载的、经过反混淆处理后的VBScript。
图4:第一个文件,即第一阶段的VBScript
在图4中所示的脚本将执行以下恶意操作:
1. 使用taskkill.exe终止winword.exe进程,以隐藏图1所示的提示。
2. 从http [:]//www.modani [.] com/media/wysiwyg/ww.vbs下载一个VBScript文件,并将其保存到%appdata%\Microsoft\windows\maintenance.vbs文件中3. 从http [:]//www.modani [.] com/media/wysiwyg/questions.doc下载诱饵文件,并将其保存到%temp%\document.doc文件中
4. 清理15.0和16.0版本Word的Word Resiliency keys,以便Microsoft Word可以正常重新启动
5. 执行恶意攻击第二阶段的VBScript:%appdata%\Microsoft\Windows\maintenance.vbs
6. 打开诱饵文档%temp%\ document.doc,以隐藏用户的恶意活动
一旦执行,前面下载的第二阶段的VBScript(ww.vbs/maintenance.vbs)脚本将执行以下操作:
1. 将嵌入式的、经过混淆处理的脚本写入%TMP%/ eoobvfwiglhiliqougukgm.js
2. 执行脚本