密码破解
在 Windows 域环境或混合环境中,Net-NTLMv2 认证机制是常见的身份验证方式。理解其工作原理及潜在风险,对于安全评估和防御加固至关重要。
1.1 破解 Windows 哈希实践
1.1.1 Net-NTLMv2 协议概述
Net-NTLMv2 是 NTLM 协议的增强版本,旨在解决早期版本中的安全性问题。尽管比 LM 和 NTLM 更安全,但在特定网络配置下仍存在被利用的风险。
1.1.1.1 身份验证流程(以访问 SMB 共享为例)
当客户端尝试连接服务器时,会经历挑战 - 响应过程。服务器发送随机挑战值,客户端使用用户密码的哈希值对该挑战进行加密并返回响应。这一过程在网络中传输的是加密后的哈希片段,而非明文密码。
1.1.1.2 Net-NTLMv2 协议潜在弱点
虽然协议本身设计较为严谨,但依赖的基础协议如 LLMNR(链路本地多播名称解析)和 NBT-NS(NetBIOS 名称服务)缺乏认证机制。攻击者可以利用这些协议欺骗客户端向恶意服务器发起认证请求,从而截获哈希值。
1.1.2 Net-NTLMv2 哈希捕获思路
1.1.2.1 核心攻击逻辑
攻击的核心在于诱使目标主机向攻击者控制的服务器发起认证请求。一旦请求发出,攻击者即可捕获包含用户名和哈希值的交互数据包。
1.1.2.2 两种攻击场景与触发方式
场景一:已获得代码执行权限 若攻击者已在内网某台机器上获得执行权限,可直接运行工具监听特定端口,等待其他主机访问共享资源时触发认证。
场景二:无代码执行权限 在无直接执行权限的情况下,通常结合社会工程学或漏洞利用,诱导用户点击链接或访问特定路径,从而触发自动化的认证请求。
1.1.3 捕获 Net-NTLMv2 哈希实践
1.1.3.1 使用 Responder 模拟 SMB 服务器(在 Kali 上)
Responder 是一款广泛使用的工具,用于监听 LLMNR、NBT-NS 和 mDNS 请求,并伪造响应以捕获哈希。
1. 环境准备与确认 确保攻击机处于同一局域网段,且防火墙允许相关端口的入站流量。确认目标网络未禁用 LLMNR 或 NBT-NS。
2. 启动 Responder 监听 通过命令行启动工具,指定监听接口。工具会自动绑定到 53/UDP、137/UDP、138/UDP 等端口,伪装成目标主机。
sudo responder -I eth0
3. 等待并捕获哈希 启动后,工具将进入监听状态。当有主机尝试解析名称时,Responder 会立即响应并提供伪造服务,诱导对方发送认证数据。
4. 预期效果与输出
成功捕获后,终端将显示类似 NTLMv2 的哈希字符串。该字符串包含用户名、域名及加密后的响应信息,可用于后续离线分析。
1.1.3.2 在远程目标主机上执行命令:绑定 Shell(正向 Shell)
除了捕获哈希,部分场景下还需建立会话以便进一步操作。
1. 工作原理 正向 Shell 是指目标主机主动连接攻击者的监听端口,建立双向通信通道。这种方式常用于绕过防火墙对入站连接的限制。
2. 不同系统的实现方式 Windows 系统通常使用 PowerShell 或 CMD 配合 netcat 类工具;Linux 则常用 bash 重定向。具体命令需根据目标环境调整,注意避免触发杀毒软件检测。
注:本文内容仅供安全研究与学习使用,严禁用于非法目的。


