存在这样一种场景,A主机访问了B主机共享的一个文件夹,然后A主机的登录密码就被B主机暴破出来了,并且是在A主机完全不知情的情况下被暴破的。下面具体复现一下这个场景。
首先在A主机上创建一个新用户SambaTest,并创建一个文件夹进行共享,如下图所示:
文件共享成功后,打开wireshark进行抓包,然后在另一台机器上访问这个共享文件夹。在打开共享地址之后,还没有输入密码时,已经弹出了如下的登录失败的提示。问题就出在这里,这是客户端在尝试用本地用户名和密码尝试访问共享文件,这一点从服务端的抓包也能印证。(网上有人说会使用匿名账户登录,但我没有复现出来)
服务端抓包:
下面的abcde用户名就是客户端当前的登录名。
下面参考“九步曲”——从.pcap文件破解NTLMv2 Hash - SecPulse.COM | 安全脉搏这个链接暴破abcde这个用户名对应的密码:
从数据包中提取下面的信息并进行拼接:
username::domain:ServerChallenge:NTproofstring:modifiedntlmv2response
提取username:
提取domain name:
提取server challenge:
提取 NTproofstring:
提取 modifiedntlmv2response:
即提取ntlmv2response后,剔除NTproofstring
最后提取的字段名拼接后如下:
abcde::WIN-FILDP297CD8:7c0232b6c295d5e2:644081d2fc3c57bfe3a2944774bbc65b:0101000000000000508ce913f944d9015b2052b1cd49b6b80000000002001e004400450053004b0054004f0050002d0049004600500031004c0048004f0001001e004400450053004b0054004f0050002d0049004600500031004c0048004f0004001e004400450053004b0054004f0050002d0049004600500031004c0048004f0003001e004400450053004b0054004f0050002d0049004600500031004c0048004f0007000800508ce913f944d9010600040002000000080030003000000000000000000000000020000071ab3af19e9c67721d9b950595eabc2201242d425139b6396a2abb72713f81c20a001000000000000000000000000000000000000900280063006900660073002f003100390032002e003100360038002e003200340031002e00310035003900000000000000000000000000
最后用hashcat工具结合彩虹表进行暴破
.\hashcat -m 5600 smbInfo.txt rockyou.txt
客户端的登录用户名abcde对应的密码为Admin123456。
至于能不能禁用自动使用客户端的用户名和密码尝试登录,我没有找到在哪个地方设置,如果有人知道,欢迎大家告诉我。