OSCP 实战笔记:获取并破解 Net-NTLMv2 哈希(上)
安全声明:本文涉及的安全技术仅用于合法研究与学习目的,严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任,由使用者自行承担。

在渗透测试的横向移动阶段,凭证获取往往是关键突破口。Windows 环境下的 NTLM 认证机制虽然经过多次迭代,但在特定场景下仍存在被捕获和破解的风险。本文将聚焦于 Net-NTLMv2 哈希的捕获与破解实践,梳理从协议分析到实际工具使用的完整链路。
1. 密码破解概览
密码攻击的核心在于将抓取的哈希值转化为明文密码。对于 Windows 系统,常见的哈希类型包括 LM、NT、NTLMv1 以及更安全的 NTLMv2。其中,Net-NTLMv2 由于引入了挑战响应机制,比前代更难破解,但并非不可攻破。
1.1 破解 Windows 哈希实践
1.1.1 Net-NTLMv2 协议概述
要有效攻击,首先得理解它是怎么工作的。以访问 SMB 共享为例,身份验证流程通常包含三个阶段:客户端发起请求、服务器返回挑战、客户端计算响应。在这个过程中,Net-NTLMv2 会生成一个包含用户名、域名、时间戳等信息的哈希值发送给服务器。如果攻击者能拦截到这个响应包,就能拿到 Net-NTLMv2 哈希。
1.1.1.1 身份验证流程(以访问 SMB 共享为例)
当用户尝试连接远程共享文件夹时,SMB 服务会触发 NTLM 握手。客户端发送用户名,服务端返回随机数(Challenge),客户端用用户的密码哈希加密这个随机数并返回。我们最终截获的就是这个加密后的响应部分。
1.1.1.2 Net-NTLMv2 协议潜在弱点
尽管协议本身设计较为严谨,但在实际网络环境中,存在几个可利用的点:
- 被动监听:如果网络中存在 ARP 欺骗或中间人位置,可以直接嗅探流量。
- 主动诱骗:通过伪造可信的服务端(如 SMB 服务器),诱导目标主机发起认证请求。
1.1.2 Net-NTLMv2 哈希捕获思路
1.1.2.1 核心攻击逻辑
攻击的本质是'诱使'目标向我们的机器发起认证请求。一旦目标认为我们在提供 SMB 服务,它就会尝试登录,从而发送哈希。
1.1.2.2 两种攻击场景与触发方式
根据当前权限的不同,捕获哈希的策略也有所区别:
-
场景一:已获得代码执行权限 如果你已经在目标机器上拿到了 Shell,那么直接运行本地工具即可。这种情况下,你可以控制网卡配置,或者利用现有的进程进行代理转发。
-
场景二:无代码执行权限 这是最常见的情况。你需要在外网搭建监听服务,利用 LLMNR、NBT-NS 等协议的漏洞,让目标主机误以为你的机器是域控制器或文件服务器,从而主动发起认证。
1.1.3 捕获 Net-NTLMv2 哈希实践
1.1.3.1 使用 Responder 模拟 SMB 服务器(在 Kali 上)
Responder 是这一领域最常用的工具之一,它能同时监听 LLMNR、NBT-NS 和 mDNS 请求。
1. 环境准备与确认
确保你的 Kali 机处于同一局域网段,并且防火墙允许相关端口通信。检查网卡名称,例如 eth0。
2. 启动 Responder 监听
运行命令开启监听模式。默认情况下,它会绑定所有接口。


