Hashcat从入门到入土(一)
Hashcat的官方是這么介紹自己的
Hashcat is a password recovery tool. It had a proprietary code base until 2015, but was then released as open source software. Versions are available for Linux, OS X, and Windows. Examples of hashcat-supported hashing algorithms are LM hashes, MD4, MD5, SHA-family and Unix Crypt formats as well as algorithms used in MySQL and Cisco PIX.
這段話的意思大概是這樣,可以看出它支持的范圍相當(dāng)廣泛
Hashcat是一個(gè)密碼恢復(fù)工具。直到2015年,它都有一個(gè)專有的代碼庫,但隨后作為開源軟件發(fā)布。版本適用于 Linux、OS X 和 Windows。哈希卡支持的哈希算法的示例包括 LM 哈希、MD4、MD5、SHA 系列和 Unix Crypt 格式,以及 MySQL 和 Cisco PIX 中使用的算法。
Hashcat安裝教程
Hashcat的官網(wǎng)是Hashcat.net ,點(diǎn)擊進(jìn)去后會(huì)有兩個(gè)下載選項(xiàng),我們選擇hashcat binaries,這個(gè)是直接可以在Windows下運(yùn)行的,另一個(gè)需要使用Cygwin進(jìn)行編譯,為了快速入門,我們選擇前者。
下載壓縮包后解壓到指定目錄,這里是需要使用命令行運(yùn)行的,我們這里使用power shell在文件夾目錄中打開:
按住shift,單擊鼠標(biāo)右鍵后選擇用powershell運(yùn)行選項(xiàng)卡,可能會(huì)提示你Windows不信任此路徑,這時(shí)候使用.\hashcat --help來查看所有命令,其實(shí)最常用的命令也就那幾個(gè),到時(shí)候有需要再查詢即可。總的來說,Hashcat是一款非常強(qiáng)大的軟件,很值得花時(shí)間來學(xué)習(xí)。
我們可以使用.\hashcat -a來選擇破解密碼的模式,后面接不同的參數(shù)代表著不同的破解方式
| 3 | Brute Force Attack 暴力破解 |
| 1 | Combination attack 聯(lián)合兩個(gè)list進(jìn)行組合破解 |
| 0 | Dictionary attack 就是認(rèn)為的把人們最常使用的密碼譬如寵物名字之類的做成一個(gè)集后暴力破解 |
| 6 or 7 | Mask attack就是另一種暴力破解,只不過你之前提供了你知道的密碼的一些細(xì)節(jié),使得它更精準(zhǔn) |
也可以說的更簡(jiǎn)潔,.\hashcat后面連接的字母表示你要選擇的工作模式,比如說我選擇了a就是要讓Hashcat進(jìn)入密碼破解模式,然后后面接的數(shù)字就選擇更為詳細(xì)的工作模式
如圖所示,你可以選擇你想要的工作模式,官方也對(duì)每個(gè)工作模式給出了十分詳細(xì)的解釋
官方也對(duì)每一個(gè)哈希模式給出了相應(yīng)的數(shù)字代碼
暴力破解演示rar加密演示
在開始之前,只有一個(gè)Hashcat還是不夠的,我們還需要一個(gè)叫做John the Ripper的軟件,下載地址join the ripper它主要是配合Hashcat,由john the ripper解出密文后再使用hashcat轉(zhuǎn)換成明文。
首先使用join-the-ripper獲取hash值
在join-the-ripper的文件夾目錄中使用powershell打開,以我的文件目錄為例:
PS D:\john-1.9.0-jumbo-1-win64\john-1.9.0-jumbo-1-win64\run> .\zip2john.exe C:\Users\gyc\Desktop\test2.zip運(yùn)行結(jié)果如圖所示:
可以看到Hash值為:
復(fù)制這個(gè)哈希值
到這里,我們可以看到我們已經(jīng)知道這個(gè)壓縮包里裝的是什么文件了
下一步,使用Hashcat獲得明文密碼,同樣的,在Hashcat的目錄里打開powershell,以我的為例
現(xiàn)在可以看到它報(bào)了一個(gè)錯(cuò)
這是為什么呢?
查閱資料得知,hashcat對(duì)cpu解密的更新好久沒有更新了。按照提示,下一步我們計(jì)劃安裝CUDA tools。
我們這里選擇local tools進(jìn)行下載CUDA tools 本地端下載,可根據(jù)實(shí)際需要選擇。
安裝CUDA如下
然后我們重啟試一下,運(yùn)行.\hashcat.exe -a 3 -m 17225+你的哈希值
發(fā)現(xiàn)還是不可以,報(bào)錯(cuò)第一行提示cuFuncSetAttribute is missing from CUDA shared library我們上網(wǎng)搜一下,在hashcat的官方論壇找到了這個(gè)答案:
nvrtc64_80.dll means that you have CUDA 8 installed. This is the wrong version because it’s way too old.
Please get fully rid of CUDA 8 (uninstall it completely by also using driver fusion and/or ddu and remove the remaining libs).
what you should have with the correct CUDA 10.1 installed is: nvrtc64_101_0.dll
我們回到Powershell里面也可以發(fā)現(xiàn)
這里顯示這個(gè)CUDA版本為8.0.0,這就奇了怪了,剛剛明明是在官網(wǎng)下載的最新版,怎么會(huì)這樣?
繼續(xù)排查
我們?nèi)indows的system32的文件夾下面查看一下有沒有nvrtc.dll這個(gè)文件,找一下,果然沒有,但是我下載這個(gè)dll文件并把它放入system32文件夾以后,問題并沒有得到解決,我目前這臺(tái)電腦屬于公司的古董臺(tái)式機(jī),實(shí)在不想折騰顯卡驅(qū)動(dòng)什么的,換一種方法。于是又找了一個(gè)word文件加密進(jìn)行解密。
解密加密后的word文件
我們用命令行依次運(yùn)行john the rapper、hashcat。為了方便輸入,我們可以把要提取hash的文件放在D盤的根目錄下面,運(yùn)行命令來提取哈希(在你的john the ripper>run 所在的文件目錄下打開命令行):
office2john.py D:\test.docx補(bǔ)充一點(diǎn),如果你的電腦安裝了pycharm之類的python IDE,你需要在前面加上python,不然會(huì)直接打開pycharm讓你編輯。
python office2john.py D:\test.docx輸出結(jié)果類似于:
后面長(zhǎng)長(zhǎng)的一串就是hash
office后面的2007要記好,這個(gè)代表這個(gè)文件加密采用的office版本,后面使用hashcat是要依次為依據(jù)來查詢hashcat的mode code,可以把這個(gè)hash值保存在txt文件中方便后續(xù)使用。
然后在hashcat的文件夾目錄下打開,我們可以使用hashcat.exe --help命令來查詢mode code,前面求哈希的時(shí)候我們就已經(jīng)知道了hash頭是$office$2007,查表得知mode code 為 9400,然后輸入:
每一個(gè)?d代表一位密碼位,這里相當(dāng)于是告訴程序我的密碼有多少位,減少了計(jì)算的時(shí)間,然后再輸出到hashcat同目錄文件夾下面的out.txt文件中。
算hash值過程如下:
可以看到statue為runing
你可以在下面看到cpu溫度與風(fēng)扇轉(zhuǎn)速
運(yùn)行結(jié)果如下:
可以看到現(xiàn)在的statue為exhausted,表示算力用盡,我目前這個(gè)臺(tái)式機(jī)實(shí)在太垃圾,正常你算完就應(yīng)該顯示cracked。
這個(gè)系列后面有人看再更新,包括爆破wifi密碼什么的,慢慢更新
總結(jié)
以上是生活随笔為你收集整理的Hashcat从入门到入土(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iPhone 12 如何防止锁屏密码被破
- 下一篇: Hashcat从入门到入土(二)