01、簡介
簡單介紹一下,LSASS(本地安全機構子系統服務)在本地或域中登錄Windows時,用戶生成的各種憑證將會存儲在LSASS進程的內存中,以便用戶不必每次訪問系統時重新登錄。
攻擊者在獲得起始攻擊點後,需要獲取目標主機上的相關憑證,以便通過用戶憑證進行橫向移動,這個技術點最容易關聯到的就是獲取LSASS內存中保存的用戶憑證。
一般LSASS竊取憑證有兩種方式,第一種就是直接從LSASS內存解析獲取密碼,第二種是將LSASS進程轉儲到本地進行離線解析。
02、LSASS竊取憑證
(1)mimikatz
mimikatz僅需一行命令,就可以直接從lsass內存中提取用戶hash。
在眾多的Windows安全日誌中,通過監測訪問lsass,exe的進程,可發現異常進程,因此可以將事件ID:4663 作為關鍵日誌特徵。
事件ID:4663 顯示已使用訪問權限,4663是沒有失敗事件的,可以看到進程名mimikatz.exe 嘗試訪問內存對象lsass.exe。
(2)Procdump轉儲
procdump是微軟官方提供的一個小工具,可以將lsass.exe進程轉儲為dump文件,將lsass.dmp文件下載到本地進行離線破解。
在Windows事件ID:4663 中,可以看到進程名Procdump64.exe 嘗試訪問內存對象lsass.exe。
(3)MSF中的mimikatz
MSF加載mimikatz模塊,抓取明文密碼
在Windows事件ID:4663 中,可以看到進程名shell.exe 嘗試訪問內存對象lsass.exe。
(4)CS模塊獲取用戶哈希
使用hashdump或logopasswords 獲取用戶密碼哈希值
在Windows事件ID:4663 中,可以看到進程名rundll32.exe 嘗試訪問內存對象lsass.exe。
03、LSASS憑證竊取攻擊檢測
基於幾種常見的LSASS進程竊取憑證的方式以及識別到的AD Event日誌特徵,可以實時監測異常進程訪問lsass,exe,找到哪個用戶什麼時間執行了異常進程訪問了lsass.exe進程,從而實現LSASS憑證竊取攻擊的檢測。
安全告警效果如下圖: