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

阅读量    28376 | 评论 2

分享到: QQ空间 新浪微博 微信 QQ facebook twitter

 

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

有用的工具:

Brup Suite Pro(collaborator客户端)

Inveigh

Responder (哈希抓取)

7zip(打开文档)

 

链接一个图像

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

链接后,图像大小就可被压缩成0。如果你的恶意文档用于红队或者社工活动,这就是一个优势了。记得将更改保存到文档中。现在不管何时打开文档,微软 Word 都会尝试在文档中解析这个链接图像。这些请求记录在 Burp Collaborator 客户端上。

 

通过 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 路径。

 

通过 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 的关系。

 

参考资料

Microsoft Office – NTLM Hashes via Frameset

分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
|发表评论
|评论列表
加载更多