NTLMRelay2Self: 技术分析与应用推荐
项目地址:https://gitcode.com/med0x2e/NTLMRelay2Self
NTLMRelay2Self 是一个基于 NTLM 中继技术的密码破解工具。它可以通过捕获网络流量来实现对 Windows 网络的攻击,从而获取目标系统的凭据。本文将从技术角度对其进行分析,并介绍其特点以及适用场景。
技术分析
NTLM 中继技术
NTLM(NT LAN Manager)是一种基于挑战 - 响应认证机制的协议。在 NTLM 认证过程中,客户端向服务器发送一个带有用户名和密码哈希的消息。服务器接收到消息后,返回一个随机的 16 字节字符串,称为“challenge”。客户端接收到 challenge 后,将其与密码哈希一起进行哈希运算,并将结果发送回服务器。服务器将客户端发送的响应与其本地存储的密码哈希进行比较,以验证用户身份。
NTLM 中继技术利用了 NTLM 认证的一个缺陷:在 NTLM 版本 1 和 2 中,如果服务器没有启用“NTLM2 Session Security”选项,则可以使用捕获到的 NTLM 消息来模拟客户端进行认证。这意味着,如果攻击者能够捕获到网络流量中的 NTLM 消息,就可以使用中继攻击来获取目标系统的凭据。
NTLMRelay2Self 工作原理
NTLMRelay2Self 利用了 NTLM 中继技术的漏洞,通过捕获网络流量中的 NTLM 消息来获取目标系统的凭据。其工作流程如下:
- 拦截网络流量:NTLMRelay2Self 通过在网络接口上设置嗅探器,拦截网络流量。
- 捕获 NTLM 消息:当 NTLMRelay2Self 捕获到一个 NTLM 消息时,它会对消息进行分析,并提取出其中的用户名和域信息。
- 构造 NTLM 响应:NTLMRelay2Self 使用捕获到的用户名和域信息,构造一个 NTLM 响应消息。
- 发送 NTLM 响应:NTLMRelay2Self 将构造好的 NTLM 响应消息发送回目标系统。
- 获取凭据:如果目标系统没有启用“NTLM2 Session Security”选项,则服务器会使用捕获到的 NTLM 消息来验证用户身份,并将凭据发送回 NTLMRelay2Self。
- 存储凭据:NTLMRelay2Self 将获取到的凭据存储在本地,供后续使用。
技术特点
- NTLMRelay2Self 基于 Python 开发,易于使用和扩展。
- 支持多线程处理,能够同时捕获和分析多个网络流量。
- 支持多种操作系统,包括 Windows、Linux 和 macOS。
应用推荐
NTLMRelay2Self 可以应用于以下场景:
- 红队攻击:NTLMRelay2Self 可以用于模拟中