域渗透之中继攻击
(一)NTLM hash
NTLMhash通常是指Windows系统下SecurityAccount Manager中保存的用户密码hash。
通常Mimikatz是通过读取lsass.exe进程来获得已登录用户的NTLMhash
NTLMhash的产生
将明文口令转换成十六进制,转换成Unicode格式,然后对Unicode字符串进行MD4加密,这个结果就是32位的十六进制NTLMhash
(二)Net-NTLM hash
通常是指网络环境下NTLM认证中的hash,在挑战/响应中产生。Responder获取的也就是Net-NTLMhash。
NTLM协议认证过程
①客户端向服务器发送一个包含登录用户名的请求
②服务器接收到请求后,生成一个16位的随机数,这个随机数被称为Challenge,明文发送回客户端。使用登录用户名对应的NTLMHash加密Challenge,获得Challenge1,生成challeng1同时将challenge发送到客户端
③客户端接受到Challenge后,使用将要登录到账户对应的NTLMHash加密Challenge生成Response,然后将Response发送至服务器端。
PS:经过NTLMHash加密的Challenge称为NetNTLM Hash。
④服务器端收到客户端的Response后,比对Chanllenge1与Response是否相等,若相等,则认证通过。
更多资料参考如下https://www.secpulse.com/archives/94848.html
(三)利用responder获取Net-NTLMhash
命令:responder-I eth0 -wrf
当受害者使用了远程连接服务器的命令,responder便能捕获该hash
上图就是responder捕获到的Net-NTLMv2hash
(四)利用hashcat破解该hash
可以看到,密码被成功破解,破解成功的密码是Net-NTLMhash,接下来,我们用这个密码来攻击这台机器
攻击失败,无法利用hash传递来进行攻击,如果攻击成功可以获取到NTLMhash来进行hash传递攻击,所以这里换个思路进行。
(五)利用responder来进行中继攻击(MultiRelay)
该攻击不需要对responder获取到hash进行破解,可以直接利用该hash攻击其他机器,禁用Responder.conf文件中的http服务和smb服务
运行responder
命令:responder-I eth0 -v -F
同时运行该工具
./MultiRelay.py-t 192.168.1.110 -u ALL
需要注意的是,需要中继的机器必须要有域管理员权限或本地管理员权限,否则,是无法利用的
这里通过中继拿到了这台机器的shell
MultiRelay提供了自带的命令例如mimil命令来调用Mimikatz函数
这里我们通过该shell来加载一个meterpreter。使用exploit/multi/script/web_delivery并按下图进行设置
加载payloadwindows/x64/meterpreter/reverse_https并运行之后会生成一段powershell代码
将该powershell代码放在该主机的shell里运行
不久就会弹回一个meterpreter
总结:这是一个常规的方法来拿到一个域内的主机,要想拿到域控还得不断的进行信息收集以及利用。
参考资料:
https://blog.csdn.net/nzjdsds/article/details/94314995
https://www.secpulse.com/archives/94848.html
(六)相关实操推荐
解密WindowsNTLMHash:hashcat号称世界上最快的密码破解,世界上第一个和唯一的基于GPGPU规则引擎,免费多GPU(高达128个GPU),多哈希,多操作系统(Linux和Windows本地二进制文件),多平台(OpenCL和CUDA支持),多算法,资源利用率低,基于字典攻击,支持分布式破解等等。
长按下面二维码,或点击合天网安实验室,可预览学习(PC端操作最佳哟)
长按开始学习