查看原文
其他

在 Microsoft Word 的图像链接中进行 UNC 路径注入

Thomas Elling 代码卫士 2022-11-15

 聚焦源代码安全,网罗国内外最新资讯!

翻译:360代码卫士团队


微软 Word 是渗透测试中的一个绝佳攻击向量。从网络应用渗透测试到红队渗透,都可通过 Word 文档抓取 NetNTLM 哈希或在网络中证明出口过滤不足。迄今为止已经存在大量高质量的 Word 攻击向量研究。此前netblosX说明了通过框架集抓取 NetNTLM哈希。本文也通过这个相同的核心理念说明一种稍有不同的方法:通过一个链接插入一个图像。


有用的工具:

  • Brup Suite Procollaborator客户端)

  • Inveigh 

  • Responder (哈希抓取)

  • 7zip(打开文档)


01

链接一个图像  


要链接一个图像,首先打开“插入”页签并点击“图片”图表,随后explorer窗口打开。在文件名称字段输入恶意URL,点击“插入”下拉列表选择“链接到文件”。这个Burp Collaborator链接是为了更容易地进行演示。


链接后,破损的图像大小就可被压缩成0。如果你的恶意文档用于红队或者社工活动,这就是一个优势了。


记得将更改保存到文档中。现在不管何时打开文档,微软 Word 都会尝试在文档中解析这个链接图像。这些请求记录在 Burp Collaborator 客户端上。



02

通过 UNC 路径注入捕获 NetNTLM 哈希


再次说明一下,这里讨论的方法跟 netbioX博客中说明的方法十分相似。通过 7zip 提取Word 文档中包含的文件。我们想要修改的文件是位于\your_word_doc.docx\word\_rels\下的 document.xml.rels。这个文件包含一个关系及其相关目标的列表。这里说的“关系”将成为“图像”类型。将“Target”的值设为侦听主机的 UNC 路径。


保存文件并通过 7zip 将其复制到 word 文档中。


用户打开 Word 文档时,inveigh  Responder 将会抓取收到的认证请求。


这种方法的一个主要优势是,终端用户无法获知 Word 试图连接到一个恶意 URL  UNC 路径。文档打开时就会提出请求,而且启动时不会显示 URL  UNC 路径。



03

通过 PowerShell 枚举关系目标


以上方法虽然简单但非常强大,因为它利用的是微软 Office 中受信任的内在功能。以下将说明如何在不使用 7zip 的情况下通过两种极其简单的方法枚举关系列表。很多取证工具集能更加有效地实现这个目标如Yara,而这并非是一种全面的取证方法。

可使用 Word.Application COM 对象访问 Word 文档的内容。仅需一些简单的命令就可实现这个目标。 WordOpenXML 属性包含文档中的 Relationships


如此就能成功地枚举文档中的所有 Relationships 及其相应的目标。问题就在于,当使用 Word.Application COM对象时,就会启动一个 Word 进程而且 URL/UNC 路径会被解析。


为避免这个问题,我们可使用 DocumentFormat.OpenXML 库枚举文档中所有的 External Relationship。在测试中这种方法不会抓取到任何 collaborator 请求或认证请求。


再进一步, DeleteExternalRelationship 方法会通过提供 relationship id $doc.MainDocumentPart.DeleteExternalRelationship("rId4")来删除带有外部 URL 的关系。

参考资料:

https://pentestlab.blog/2017/12/18/microsoft-office-ntlm-hashes-via-frameset/



关联阅读



微软Word 的DDE漏洞遭利用

盯上Word 0day漏洞的不只是犯罪分子


本文由360代码卫士编译,不代表360观点,转载请注明 “转自360代码卫士www.codesafe.cn”。


原文链接:

https://blog.netspi.com/microsoft-word-unc-path-injection-image-linking/

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存