Microsoft Outlook 漏洞:可允许远程代码执行

近期,微软发布了一系列补丁,修复了自身产品中一些影响广泛以及关键的Bug,其中包括更新了微软Office套件版本,解决了其中的部分安全问题。而安全专家研究发现,其中的一个漏洞(cve-2015-6172),攻击者通过以“特定打包的微软Office文件”作为附件,由Outlook 发送邮件给目标用户,可允许远程代码执行。

来自微软的安全公告提及,此次更新解决了微软办公软件的安全漏洞。其中威胁级别最高的漏洞,可允许远程代码执行。如果用户打开一个专门制作的微软办公文件,攻击者可以利用该漏洞在当前用户目录下运行任意代码。而具有较小权限的用户帐户受到的影响可能会比拥有管理员权限的用户所受影响要小得多。

影响范围

该漏洞主要影响范围涉及到Outlook 2007/2010/2013/2016 等版本。

Outlook 的安全机制

我们可以先来了解下 Outlook 的一般安全机制,

1、对于邮件的附件,Outlook有其安全检测方式,比如对可执行文件,Outlook会自动进行阻断。

41

2、对于存在安全风险的文件格式,Outlook会以告警弹窗的方式提醒用户,

42

3、对于Word/Excel/PPT等格式的附件,当用户双击运行或者进行预览的时候,Outlook会在其沙盒中打开这些文档。以下是通过监控相关进程,我们可以看到沙盒进程的存在。

43

漏洞的发现

在安全专家李海飞(音译,原称为HaiFei Li,以下均称为李海飞)一篇名为“BadWinMali:隐藏在 Microsoft Outlook中的企业级攻击向量”中提到,攻击者能够利用上述漏洞,通过邮件发送特定的office文档,利用微软的对象连接和嵌入技术(OLE)以及TNEF技术来绕过Outlook多重安全防护层面(如在沙盒中进行文件预览等),从而进行攻击。

FreeBuf百科

对象连接和嵌入技术(OLE)

OLE,是一种面向对象的技术,利用这种技术可开发可重复使用的软件组件,也可以用来创建复合文档,复合文档包含了创建于不同源应用程序,有着不同类型的数据,因此它可以把文字、声音、图像、表格、应用程序等组合在一起。简而言之,在平时一般应用于Office  中的Word/Excel/PPT等,例如我们在PPT中插入图片,之后可通过双击打开该图片,并在这过程中调用图像应用程序。

TNEF技术

全称为传输不确定封装格式 ,Microsoft Outlook和Microsoft Exchange Server的专有邮件附件格式。 用TNEF编码附加的邮件最常见文件名为Winmail.dat或win.dat。 TNEF 以 application/ms-tnef 类型的 MIME 附件的形式出现在邮件中。该附件的名称为 Winmail.dat。它包含完整的邮件内容以及所有附加文件。只有 MAPI 客户端(如 Outlook)能够对 Winmail.dat 附件进行解码。非 MAPI 客户端无法对 TNEF 进行解码,并且可能将 Winmail.dat 显示为典型但无用的文件。

接着我们继续以上的漏洞分析,经研究发现,当winmail文件中‘PidTagAttachMethod’的值被设置为ATTACH_OLE (6),该附件(另外一个文件包含着winmail.dat文件)将会被当作一个 OLE对象使用。接着,攻击者可以创建一个特定的TNEF邮件,将其发送给目标用户实施攻击。

我们也可以再了解下具体的TNEF以及winmail.dat文件格式内容是怎样的?

TNEF邮件的内容如下,

44

winmail.dat文件样本如下,

45

而一个包含OLE对象的恶意winmail.dat如下,

46

其中“06 00”定义了包含在winmail.dat中的附件将被作为一个OLE 对象使用。

面对这样的一个情况,通过“新建”一个TNEF编码邮件,接着将之发送给用户,当用户读取该邮件的时候,嵌入的OLE对象将会被自动加载,从而触发攻击。根据测试,多种 OLE对象都能通过邮件被自动加载,而这也导致了一个大问题。

47

主要的攻击方式

据安全专家李海飞所称,

“由于Flash 0day 漏洞容易为攻击者所获取,那么通过启用了OLE的TNEF邮件中植入一个Flash exp,当受害者阅读邮件时,攻击者便能够实现任意代码执行。我们通过使用Flash OLE 对象作为一个测试样本,也成功实现了代码运行,但还需要提到的是其他的OLE对象也有可能被攻击者利用。”

例如,因为 Outlook会将.msg格式的文件自动识别为安全文件,并且一般默认是在Outlook信息查看器中查看附件而不是在沙盒中查看。这意味着嵌入在邮件附件中的内容,当用户查看邮件时将会被自动打开。

我们也可以在视频中看到攻击的效果:观看视频

安全防范措施

1、建议在注册表中更改配置,阻断Flash 通过OLE对象自动加载,方法如下,

2、请尽快下载安全补丁进行修复。(补丁链接:path

[作者:affairs 翻译via@寰者]