NTLM 认证
在之前的内容中,我们得接触到了多组种类型的凭证,包括了明文密码和 、NTLM 哈希、AES 256 密钥、NetNTLM 等。 知道掌握明文密码显然是一个项优势。 ,然而,我们有时只会不是总能获得到明文密码的,有更多时候我们会得到 NTLM 哈希。 如果用户有一个设置了强密码,我们就无法破解 NTLM 哈希并快速恢复明文密码。 ,但幸运的是,与许多其他类型的哈希不同,我们可以通过多种方式利用 NTLM 哈希进而实现认证。 在谈论 NTLM 的滥用之前,我们应该了解一些有关 Windows 凭据的概念。
NTLM
我们已经讨论过 Kerberos 身份验证,它是 NTLM 身份验证的后继者。 NTLM 是一套 Microsoft 安全协议,用于验证用户身份并确保其活动的完整性和机密性。 当客户端通过 IP 地址向服务器进行身份验证时使用它。 虽然 Kerberos 协议是当今 Windows 网络中的默认身份验证,但仍然支持 NTLM,一些应用程序仍然更喜欢 NTLM 身份验证,如果 Kerberos 在某些情况下无法对用户进行身份验证,NTLM 将作为备份。
NTLM 身份验证协议由多个步骤组成,下面将对其进行深入说明。
1:用户访问客户端电脑,提供域名、用户名、密码; 客户端计算密码的加密哈希并将明文用户名发送到服务器。
2:服务器生成一个称为挑战的随机数,并将其发送回客户端。
3:客户端用用户密码的哈希对质询进行加密,并将结果返回给服务器(响应)。
4:服务器向域控制器发送用户名、质询和响应
5:域控制器根据用户密码查找散列。 它比较加密的质询。
6:服务器将响应发送回客户端。
我们在先前的章节学习过了 Kerberos 认证协议,学员们可以自行体会一下其中的不同。