
Mimikatz是由法国安全研究员 Benjamin Delpy(网名 Gentil Kiwi)开发的开源凭证提取工具,自 2007 年首次发布以来,已成为渗透测试和红队行动中的核心工具。其核心功能是读取 Windows 系统内存中的认证数据,提取明文密码、密码哈希、PIN 码及 Kerberos 票据等敏感信息。该工具通过利用 Windows 在内存中处理认证数据的固有机制,绕过传统安全防护,成为攻击者进行横向移动和权限提升的关键手段。
一、核心功能详解
-
凭证提取
- 明文密码获取:直接从
lsass.exe 进程内存中提取当前活动用户的明文密码(需系统支持 WDigest 协议或配置允许明文存储)。
- 哈希值捕获:提取 NTLM、SHA1 等密码哈希,用于后续的哈希传递攻击(Pass-the-Hash)。
- Kerberos 票据操作:
- 查看票据:通过
kerberos::list 命令列出内存中的所有 Kerberos 票据(TGT/TGS)。
- 票据注入:使用
kerberos::ptt 将票据文件(如 .kirbi)注入当前会话,实现无密码认证。
- 黄金票据生成:通过
kerberos::golden 伪造域控制器(DC)签发的 TGT,实现长期的域内权限维持。
- 白银票据生成:针对特定服务(如 CIFS、LDAP)伪造服务票据(TGS),绕过 DC 认证。
-
LSA 密码抓取
- DCSync 攻击:通过
lsadump::dcsync 模拟域控制器同步协议,远程导出域内用户密码哈希(包括 krbtgt 账户哈希,用于生成黄金票据)。
- 本地 SAM 文件读取:从
sam.hive 和 system.hive 文件中提取本地用户密码哈希(需管理员权限)。
-
令牌操作
- 令牌窃取:通过
token::elevate 窃取高权限进程(如 System、域管理员)的访问令牌,实现权限提升。理解 Windows 访问令牌与权限管理 是深入利用此功能的基础。
- 令牌列表:使用
token::list 查看当前系统中的所有访问令牌,辅助选择目标令牌。
-
SID 操作
- SID 查询与修改:通过
sid::lookup 和 sid::modify 查询或修改用户/组的 SID(安全标识符),可用于权限绕过或辅助横向移动。
二、部署与基础使用
-
下载工具
-
运行环境要求
- 系统版本:支持 Windows XP 至 Windows 11 及对应的服务器版本。部分功能需特定系统配置,例如 WDigest 明文存储在 Windows 8.1/Server 2012 R2 之后默认禁用,可能需要手动启用。
- 权限要求:大多数核心功能需要管理员权限运行。工具内置的
privilege::debug 命令可用于尝试获取调试权限。
-
基础使用示例
以管理员身份运行 mimikatz.exe,常见操作序列如下:
privilege::debug # 尝试提升调试权限
sekurlsa::logonpasswords # 提取内存中的所有登录凭证(包括明文密码、哈希等)
kerberos::list # 查看当前会话中的 Kerberos 票据
lsadump::dcsync /domain:test.com /user:krbtgt # 执行DCSync攻击,导出krbtgt账户哈希
三、防御与检测建议
-
禁用 WDigest 协议
通过组策略或注册表禁用 WDigest 的明文凭据存储功能,这是防御明文密码提取的关键。
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest" /v UseLogonCredential /t REG_DWORD /d 0 /f
-
启用 LSA 保护
配置 LSA 保护(RunAsPPL),防止非受保护进程读取 lsass.exe 的内存。
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\lsass.exe" /v Debugger /t REG_SZ /d "C:\Windows\System32\lsass.exe" /f
-
监控异常行为
部署 Sysmon 或商业 EDR 解决方案,重点监控对 lsass.exe 进程的注入、内存读取操作,以及敏感 API(如 OpenProcess、ReadProcessMemory)的调用。对域内异常的 Kerberos 票据请求和 DCSync 复制行为保持警觉。
-
定期轮换凭证
对域管理员、krbtgt 等高权限账户实施严格的定期密码轮换策略,可以有效限制黄金票据等攻击的有效期和影响范围。
四、开源资源与法律声明
法律与伦理声明:Mimikatz 应严格用于获得合法授权的渗透测试、安全研究及企业红队演练。未经授权使用该工具攻击他人系统违反了《中华人民共和国网络安全法》等相关法律法规,将承担严重的法律后果。所有安全研究与实践都应在合法合规的 安全测试 框架内进行。
|