Responder捕获哈希类型及重复问题的技术咨询
关于Responder捕获Win7哈希的问题解析
嘿,我来帮你拆解这个Responder测试的问题!咱一步步来理清楚:
一、你捕获的是什么哈希?
你在场景里捕获的大概率是NTLMv2哈希——因为Win7默认启用NTLMv2认证,同时禁用了安全性较低的LM和NTLMv1。这里要注意:你看到的"5个不同哈希"其实不是密码本身的哈希,而是NTLMv2的响应值:每次Win7访问不存在的共享时,Responder会生成一个随机的「挑战字串」,Win7用自己的密码哈希+这个挑战字串计算出唯一的响应值,所以每次的结果都不一样,这是NTLMv2的安全机制,用来防止重放攻击,完全正常。
二、怎么验证哈希类型&正确破解?
1. 先找到Responder的日志
Responder默认把捕获的哈希存在/usr/share/responder/logs/目录下,文件名一般是SMB-NTLMv2-SSP-<你的Win7IP>.txt。打开后你会看到类似这样的格式:
WIN7-USER::WORKGROUP:12345678abcdef:ABCDEF1234567890ABCDEF1234567890:1234567890abcdef
这就是完整的NTLMv2哈希格式,包含用户名、域名、随机串、响应值、挑战值,破解工具需要完整的这一行才能识别。
2. 用工具破解NTLMv2哈希
推荐用Kali自带的hashcat或者john,这里以hashcat为例:
- 先确保你有合适的密码字典,比如Kali自带的
rockyou.txt(需要先解压):gunzip /usr/share/wordlists/rockyou.txt.gz - 然后执行破解命令(
-m 5600是NTLMv2对应的哈希类型编号):hashcat -m 5600 /usr/share/responder/logs/SMB-NTLMv2-SSP-192.168.1.100.txt /usr/share/wordlists/rockyou.txt
如果你的Win7密码是"password1",rockyou字典里肯定有这个值,很快就能破解出来。
三、为什么你之前没破解成功?
大概率是这两个原因:
- 哈希格式不对:你可能只复制了响应值的一部分,没有包含前面的用户名、域名等信息,工具无法识别为NTLMv2哈希。
- 密码字典里没有目标密码:如果用的是自定义小字典,刚好没包含"password1",那肯定解不出来,换rockyou这种大字典试试。
额外测试小技巧
如果你想测试捕获NTLMv1哈希(更容易破解,但实际环境很少用),可以修改Win7的本地安全策略:
- 打开「本地组策略编辑器」(运行
gpedit.msc) - 找到「计算机配置->Windows设置->安全设置->本地策略->安全选项」
- 修改「网络安全: LAN管理器身份验证级别」为「发送LM和NTLM响应」
- 重启Win7后再访问不存在的共享,Responder就能捕获NTLMv1哈希了,用hashcat的话对应
-m 100类型。
内容的提问来源于stack exchange,提问作者Andy
相关产品推荐
相关产品推荐

