【內網(wǎng)學習筆記】20、Hashcat 的使用

1跑慕、介紹

Hashcat 是一款用于破解密碼的工具万皿,據(jù)說是世界上最快最高級的密碼破解工具摧找,支持 LM 哈希、MD5牢硅、SHA 等系列的密碼破解蹬耘,同時也支持 Linux、Mac减余、Windows 平臺综苔。

工具地址:https://hashcat.net

項目地址:https://github.com/hashcat/hashcat

2、安裝

Mac

Mac 用戶直接使用 brew 安裝即可

brew install hashcat

Linux

對于 Debain 的 Linux位岔,比如 Kali如筛、Ubuntu 可以直接使用 apt 進行安裝

apt install hashcat

或者下載官方二進制文件進行安裝

https://github.com/hashcat/hashcat/releases 里下載最新版壓縮包,這里以 6.2.4 版為例

tar zxvf hashcat-6.2.4.7z
cd hashcat-6.2.4
chmod +x hashcat.bin
./hashcat.bin

Windows

https://github.com/hashcat/hashcat/releases 里下載最新版壓縮包抒抬,解壓后可以看到 hashcat.exe

3杨刨、使用

常用參數(shù):

-r  使用自定義破解規(guī)則
-o  指定破解成功后的 hash 及所對應的明文密碼的存放位置
-m  指定要破解的 hash 類型,如果不指定類型擦剑,則默認是 MD5
-a  指定要使用的破解模式妖胀,其值參考后面對參數(shù)∽ビ冢“-a 0” 字典攻擊做粤,“-a 1” 組合攻擊;“-a 3” 掩碼攻擊
-D  指定 opencl 的設備類型
--show      顯示已經(jīng)破解的 hash 及該 hash 所對應的明文
--force     忽略破解過程中的警告信息,跑單條 hash 可能需要加上此選項
--remove    刪除已被破解成功的 hash
--username      忽略 hash 文件中的指定的用戶名,在破解 linux 系統(tǒng)用戶密碼 hash 可能會用到
--increment     啟用增量破解模式,你可以利用此模式讓 hashcat 在指定的密碼長度范圍內執(zhí)行破解過程
--increment-min         密碼最小長度,后面直接等于一個整數(shù)即可,配置 increment 模式一起使用
--increment-max         密碼最大長度,同上
--outfile-format        指定破解結果的輸出格式 id ,默認是 3
--self-test-disable 關閉啟動自檢

-a 破解模式:

0 | Straight    (字段破解)
1 | Combination (組合破解)
3 | Brute-force (掩碼暴力破解)
6 | Hybrid Wordlist + Mask(字典+掩碼破解)
7 | Hybrid Mask + Wordlist(掩碼+字典破解)

-D 指定設備類型

1 | CPU
2 | GPU
3 | FPGA, DSP, Co-Processor

一般使用 -D 2 指定 GPU 破解

掩碼設置:

l | abcdefghijklmnopqrstuvwxyz              純小寫字母
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ              純大寫字母
d | 0123456789                              純數(shù)字
h | 0123456789abcdef                        十六進制小寫字母和數(shù)字
H | 0123456789ABCDEF                        十六進制大寫字母和數(shù)字
s |  !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~       特殊字符
a | ?l?u?d?s                                鍵盤上所有可見的字符
b | 0x00 - 0xff                             匹配密碼空格

掩碼設置舉例:

八位數(shù)字密碼:?d?d?d?d?d?d?d?d
八位未知密碼:?a?a?a?a?a?a?a?a
前四位為大寫字母捉撮,后面四位為數(shù)字:?u?u?u?u?d?d?d?d
前四位為數(shù)字或者是小寫字母,后四位為大寫字母或者數(shù)字:?h?h?h?h?H?H?H?H
前三個字符未知妇垢,中間為admin巾遭,后三位未知:?a?a?aadmin?a?a?a
6-8位數(shù)字密碼:--increment --increment-min 6 --increment-max 8 ?d?d?d?d?d?d?d?d
6-8位數(shù)字+小寫字母密碼:--increment --increment-min 6 --increment-max 8 ?h?h?h?h?h?h?h?h

自定義掩碼規(guī)則:

--custom-charset1 [chars]等價于 -1
--custom-charset2 [chars]等價于 -2
--custom-charset3 [chars]等價于 -3
--custom-charset4 [chars]等價于 -4

在掩碼中用 ?1、?2闯估、?3灼舍、?4 來表示

注意:

  • --custom-charset1 abcd ?1?1?1?1?1 等價于 -1 abcd ?1?1?1?1?1
  • -3 abcdef -4 123456 ?3?3?3?3?4?4?4?4 表示前四位可能是 adbcdef,后四位可能是 123456

另外 Hash 模式與 ID 的對照表由于太長涨薪,這里就不放了骑素,可以直接 hashcat -h 進行查看

4、示例

MD5

密碼為 8 位數(shù)字

hashcat -a 3 --force d54d1702ad0f8326224b817c796763c9 ?d?d?d?d?d?d?d?d

密碼為 4 位小寫字母+數(shù)字

hashcat -a 3 --force 4575621b0d88c303998e63fc74d165b0 -1 ?l?d ?1?1?1?1

密碼為 1-4 位大寫字母+數(shù)字

hashcat -a 3 --force 8fb5a3e7338ce951971d69be27fc5210 -1 ?u?d ?1?1?1?1 --increment --increment-min 1 --increment-max 4

指定特定字符集:123456abcdf!@+- 進行破解

hashcat -a 3 -1 123456abcdf!@+- 8b78ba5089b11326290bc15cf0b9a07d ?1?1?1?1?1

由于在終端里可能會把部分字符識別為特殊字符刚夺,因此需要轉義一下

hashcat -a 3 -1 123456abcdf\!\@+- 8b78ba5089b11326290bc15cf0b9a07d ?1?1?1?1?1

如果不知道目標密碼的構成情況献丑,可以直接使用 ?a 表示使用所有字符進行破解

hashcat -a 3 19b9a36f0cab6d89cd4d3c21b2aa15be --increment --increment-min 1 --increment-max 8 ?a?a?a?a?a?a?a?a

使用字典破解

hashcat -a 0 e10adc3949ba59abbe56e057f20f883e password.txt

使用字典批量破解

hashcat -a 0 hash.txt password.txt

字典組合破解

hashcat -a 1 77b3e6926e7295494dd3be91c6934899 pwd1.txt pwd2.txt

經(jīng)過測試,這里的字典組合破解侠姑,不是說簡單的將兩個字典的內容合并去重形成 1 個字典進行去重创橄,而是說字典 1 的內容加上字典 2 的內容組合成一個字典,例如:

pwd1.txt 字典為:

admin
test
root

pwd2.txt 字典為:

@2021
123

那么組合后的字典就是這樣的:

admin@2021
admin123
test@2021
test123
root@2021
root123

字典+掩碼破解莽红,也是和上面一樣的組合方法妥畏,只不過 pwd2.txt 換成了掩碼

hashcat -a 6 e120ea280aa50693d5568d0071456460 pwd1.txt ?l?l?l

Mysql4.1/5

hashcat -a 3 -m 300 --force 6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 ?d?d?d?d?d?d

可以使用 select authentication_string from mysql.user; 查看當前數(shù)據(jù)庫中的密碼哈希值邦邦。

sha512crypt 6, SHA512 (Unix)

sha512crypt 6, SHA512 (Unix) 破解,為了避免系統(tǒng)誤識別到特殊字符醉蚁,這里為哈希值加了單引號

hashcat -a 3 -m 1800 --force '$6$mxuA5cdy$XZRk0CvnPFqOgVopqiPEFAFK72SogKVwwwp7gWaUOb7b6tVwfCpcSUsCEk64ktLLYmzyew/xd0O0hPG/yrm2X.' ?l?l?l?l

可通過 cat /etc/shadow 獲取哈希值

或者不刪除用戶名燃辖,直接使用 --username 參數(shù)

hashcat -a 3 -m 1800 --force 'qiyou:$6$QDq75ki3$jsKm7qTDHz/xBob0kF1Lp170Cgg0i5Tslf3JW/sm9k9Q916mBTyilU3PoOsbRdxV8TAmzvdgNjrCuhfg3jKMY1' ?l?l?l?l?l --username

NTLM

NT Hash

hashcat -a 3 -m 1000 209C6174DA490CAEB422F3FA5A7AE634 ?l?l?l?l?l

LM Hash

hashcat -a 3 -m 3000 F0D412BD764FFE81AAD3B435B51404EE ?l?l?l?l?l

NetNTLM Hash

hashcat -a 3 -m 5500 teams.six::::822795daaf96s0a811fs6dd7b01dscssc601635cc1339basda6:e125cddcf51337asc7 -1 ?l?u ?1?1?1?1?d?d?d?d  --force

MSSQL (2005)

hashcat -a 3 -m 132 --force 0x01008c8006c224f71f6bf0036f78d863c3c4ff53f8c3c48edafb ?l?l?l?l?l?d?d?d

WordPress 密碼 hash

hashcat -a 3 -m 400 --force '$P$BYEYcHEj3vDhV1lwGBv6rpxurKOEWY/' ?d?d?d?d?d?d

具體加密腳本在 ./wp-includes/class-phpass.php 的 HashPassword 函數(shù)

Discuz 用戶密碼 hash

hashcat -a 3 -m 2611 --force 14e1b600b1fd579f47433b88e8d85291: ?d?d?d?d?d?d

其密碼加密方式 md5(md5(pass).salt)

RAR 壓縮密碼

首先獲取 rar 文件的 hash 值,我們可以使用另一款哈希破解工具 John 提供的 rar2john 工具將 rar 文件里的 hash 提取出來网棍。

rar2john 下載地址:http://openwall.info/wiki/_media/john/johntheripper-v1.8.0.12-jumbo-1-bleeding-e6214ceab-2018-02-07-win-x64.7z

# 獲取 rar 文件 hash
rar2john.exe 1.rar

hashcat 支持 RAR3-hp 和 RAR5

對于 RAR5郭赐,示例如下:

hashcat -a 3 -m 13000 --force '$rar5$16$b06f5f2d4c973d6235e1a88b8d5dd594$15$a520dddcc53dd4e3930b8489b013f273$8$733969e5bda903e4' ?d?d?d?d?d?d

對于 RAR3-hp

hashcat -a 3 -m 12500 --force '$RAR3$*0*5ba3dd697a8706fa*919ad1d7a1c42bae4a8d462c8537c9cb' ?d?d?d?d

RAR3-hp 哈希頭為 RAR3*0*,而不是 RAR3*1*确沸,中間的數(shù)值是0(-hp)而不是1(-p)捌锭,-p 尚未得到支持,只支持 -hp

關于 RAR 參數(shù) -p 和 -hp 的區(qū)別:
-p:只對 RAR 文件加密罗捎,里面的目錄和文件名沒加密观谦;
-hp:對目錄中的文件名和子目錄都進行加密處理

ZIP 壓縮密碼

和 rar 破解過程一樣,我們需要先提取 zip 文件的哈希值桨菜,這里可以使用 zip2john 進行獲取豁状,zip2john.exe 在上面下載的 rar2john.exe 的同級目錄下。

# 獲取 zip 文件 hash
zip2john.exe 1.zip
hashcat -a 3 -m 13600 '$zip2$*0*3*0*18b1a7e7ad39cb3624e54622849b23c7*5b99*3*5deee7*a418cee1a98710adce9a*$/zip2$' --force ?d?d?d?d?d?d

這里 ZIP 的加密算法使用的 AES256

office 密碼

和 rar 與 zip 破解過程一樣倒得,我們需要先提取 office 文件的哈希值泻红,這里可以使用 office2john.py 進行獲取,office2john.py 在上面下載的 rar2john.exe 和 zip2john.exe 的同級目錄下霞掺。

# 獲取 office 文件 hash
python office2john.py 1.docx

測試中發(fā)現(xiàn) python 會出現(xiàn)告警信息谊路,不過這個告警信息不會影響程序執(zhí)行

hashcat -a 3 -m 9600 '$office$*2013*100000*256*16*cd8856416b1e14305a0e8aa8eba6ce5c*18cada7070f1410f3a836c0dfc4b9643*befcde69afeafb3e652719533c824413b00ce4a499589e5ac5bd7a7a0d3c4f3d' --force ?d?d?d?d?d?d

這里哈希頭為 2013 所以使用 9600 破解模式,如果是 2010 則要使用 9500 破解模式菩彬,2007 則使用 9400 破解模式缠劝。

WIFI 密碼

要破解 WIFI 密碼,首先要抓到 WIFI 的握手包骗灶,要想得到 WIFI 的握手包惨恭,就需要在監(jiān)聽時剛好有設備連接了該 WIFI,但這就需要運氣加成耙旦,因此可以我們可以主動將該 WIFI 的設備踢下去脱羡,一般設備就會自動連接該 WIFI,此時我們就抓到握手包了免都。

抓取 WIFI 握手包

1锉罐、將網(wǎng)卡處于監(jiān)聽狀態(tài)

airmon-ng check 
airmon-ng check kill // 關閉影響監(jiān)聽狀態(tài)的進程
airmon-ng start wlan0

wlan0 是網(wǎng)卡名稱,一般都是 wlan0琴昆,如果不是則需要根據(jù)自己的情況進行修改氓鄙,可通過 iwconfig 進行查看網(wǎng)卡的名稱

當使用 iwconfig 查看網(wǎng)卡名稱變?yōu)?wlan0mon 說明此時網(wǎng)卡已經(jīng)處于監(jiān)聽模式了

2、掃描可用 WIFI

airodump-ng wlan0mon
image

3业舍、獲取wifi的握手包

airodump-ng -c (上一步掃描的 CH ) --bssid (想要破解 WIFI 的 bssid ) -w (握手文件存放目錄) wlan0mon

這里以 ssid 為 teamssix 的 WIFI 為例

airodump-ng -c 1 --bssid 5E:C1:1B:A2:37:F1 -w ./ wlan0mon

為了順利得到 WIFI 的握手包抖拦,可以將該 WIFI 下的設備強制踢下去

aireplay-ng -0 0 -a (要破解的 wifi 的 bssid ) -c (強制踢下的設備的 MAC 地址) wlan0mon
image

可以看到 teamssix 這個 WIFI 有一個設備正在連接升酣,該設備的 MAC 地址為:38:26:2C:13:D3:33,使用以下命令可以將其強制踢下去

aireplay-ng -0 0 -a 5E:C1:1B:A2:37:F1 -c 38:26:2C:13:D3:33 wlan0mon

等待設備重新連接后态罪,當右上角出現(xiàn) WPA handshake 的時候說明獲取成功

image

4噩茄、破解密碼

使用 aircrack-ng 將握手包轉換成 hccapx 格式

aircrack-ng 1.cap -j 1
hashcat -a 3 -m 2500 1.hccapx ?d?d?d?d?d?d?d?d --force

或者使用 hashcat 官網(wǎng)提供的在線工具進行格式轉換:https://hashcat.net/cap2hashcat/

hashcat -a 3 -m 22000 1.hc22000 ?d?d?d?d?d?d?d?d --force
image

5、其他

  • Hashcat 在有時破解的時候會提示 All hashes found in potfile!复颈,這表明該 hash 已經(jīng)被破解出來過了绩聘,可以使用 hashcat [哈希值] --show 查看已破解出來的明文密碼。

  • 如果想再次破解已經(jīng)破解過的密碼耗啦,刪除 ~/.hashcat/hashcat.potfile 文件里的對應記錄即可凿菩。

  • 在使用GPU模式進行破解時,可以使用 -O 參數(shù)自動進行優(yōu)化

  • 在實際破解過程中帜讲,可以先使用 top 字典進行破解衅谷,不行再試試社工字典,比如姓名+生日的組合字典

  • Hashcat 參數(shù)優(yōu)化:

--gpu-accel 160         可以讓GPU發(fā)揮最大性能
--gpu-loops 1024        可以讓GPU發(fā)揮最大性能
--segment-size 512      可以提高大字典破解的速度

參考文章:

https://xz.aliyun.com/t/4008

https://bipy.me/post/crack-rar/

https://www.sqlsec.com/2019/10/hashcat.html

https://blog.csdn.net/weixin_44064908/article/details/103920329

https://mysock.net/2021/01/03/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95/%E7%94%A8%20rar2john+hashcat%20%E7%A0%B4%E8%A7%A3%20RAR%20%E6%96%87%E4%BB%B6%E5%AF%86%E7%A0%81/

原文鏈接:
https://teamssix.com/210831-122611.html

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末似将,一起剝皮案震驚了整個濱河市获黔,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌在验,老刑警劉巖玷氏,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異腋舌,居然都是意外死亡盏触,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門侦厚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來耻陕,“玉大人,你說我怎么就攤上這事刨沦。” “怎么了膘怕?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵想诅,是天一觀的道長。 經(jīng)常有香客問我岛心,道長来破,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任忘古,我火速辦了婚禮徘禁,結果婚禮上,老公的妹妹穿的比我還像新娘髓堪。我一直安慰自己送朱,他們只是感情好娘荡,可當我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著驶沼,像睡著了一般炮沐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上回怜,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天大年,我揣著相機與錄音,去河邊找鬼玉雾。 笑死翔试,一個胖子當著我的面吹牛,可吹牛的內容都是我干的复旬。 我是一名探鬼主播垦缅,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼赢底!你這毒婦竟也來了失都?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤幸冻,失蹤者是張志新(化名)和其女友劉穎粹庞,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體洽损,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡庞溜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了碑定。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片流码。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖延刘,靈堂內的尸體忽然破棺而出漫试,到底是詐尸還是另有隱情,我是刑警寧澤碘赖,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布驾荣,位于F島的核電站,受9級特大地震影響普泡,放射性物質發(fā)生泄漏播掷。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一撼班、第九天 我趴在偏房一處隱蔽的房頂上張望歧匈。 院中可真熱鬧,春花似錦砰嘁、人聲如沸件炉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽妻率。三九已至乱顾,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宫静,已是汗流浹背走净。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留孤里,地道東北人伏伯。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像捌袜,于是被迫代替她去往敵國和親说搅。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內容