本文內容:
- 在線解密hash密碼
- hashcat簡介
- 掃描模式
- 常見掩碼設置
- 常用參數
- 實例破解
1,在線解密hash密碼:
* Domain : WIN-06FPCJSH5P8
* LM : 23b982a597a7a732aad3b435b51404ee
* NTLM : 0b6fb439a176cce1fb1d34adfd9571b1
* SHA1 : bfa75eec175e274ae355f7d0c2ed0620a89e84c5
windows系統下的hash密碼格式為:
用戶名:RID
LM-HASH值
NT-HASH值 [存在NT,直接破解 NT]
LM-HASH值都是hash算法
在線解密:https://www.objectif-securite.ch/ophcrack
常見的hash離線解密:
1,hashcat簡介:
hashcat號稱世界上最快的密碼破解,世界上第一個和唯一的基於CPU規則引擎,免費多個CPU[高達128個CPU]。
多哈希、多操作系統[Linux和Windows本地二進制文件],多平台[OpenGl和CUDA支持],多算法,資源利用地,基於字典攻擊,支持分布式破解等等。
hashcat目前支持各類公開算法高達247類,市面上公開的密碼加密算法基本都支持。
官網:https://hashcat.net/hashcat/
wiki:https://hashcat.net/wiki/
下載地址:https://hashcat.net/files/hashcat-5.1.0.7z
在滲透測試中我們往往會得到很多hash,需要去解密,而一些在線的網站無法解密出來,所以我們可以使用hashcat在本地進行密碼恢復。
彩虹表:是一款破解hash算法的技術,是一塊跨平台密碼破解工具,主要可以MD5、HA5H等多種密碼:
https://www.cnblogs.com/bokun-wang/p/3887463.html
https://www.jianshu.com/p/732d9d960411
要從hash逆向得到原始明文密碼有三種方法:
1.暴力破解法:時間成本太高
2.字典法:提前構建一個"明文--->密碼"對應關系的一個大型數據庫。
3.構建彩虹表:在字典法的基礎上改進,以時間換空間,是現在破解hash常用的辦法。
2,掃描模式:-a執行掃描模式:
# | Mode
===+======
0 | Straight(字典破解) :基於字典進行破解
1 | Combination(組合破解) :基於多個字典進行破解
3 | Brute-force(掩碼暴力破解) :基於掩碼設置進行破解
6 | Hybrid Wordlist + Mask(字典+掩碼破解)
7 | Hybrid Mask + Wordlist(掩碼+字典破解)
3,常見掩碼設置:
? | Charset
===+=========
l | abcdefghijklmnopqrstuvwxyz 純小寫字母
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ 純大寫字母
d | 0123456789 純數字
h | 0123456789abcdef 常見小寫字母和數字
H | 0123456789ABCDEF 常見大寫字母和數字
s | !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ 特殊字符
a | ?l?u?d?s 鍵盤上所有可見的字符
b | 0x00 - 0xff 可能是用來匹配像空格這種密碼的
常見的組合:
八位數字密碼:?d?d?d?d?d?d?d?d
八位未知密碼:?a?a?a?a?a?a?a?a
前四位為大寫字母,后面四位為數字:?u?u?u?u?d?d?d?d
前四位為數字或者是小寫字母,后四位為大寫字母或者數字:?h?h?h?h?H?H?H?H
前三個字符未知,中間為admin,后三位未知:?a?a?aadmin?a?a?a
6-8位字母密碼:--increment --increment-min 6 --increment-max 8 ?l?l?l?l?l?l?l?l
6-8位數字+小寫字母密碼:--increment --increment-min 6 --increment-max 8 ?h?h?h?h?h?h?h?h
4,常用參數:
使用命令:hashcat64.exe -h 查看幫助文檔
-a 指定要用的掃描模式,其值參考后面對應的參數,"-a 0" 字典攻擊,"-a 1" 組合攻擊,"-a 3" 掩碼攻擊。
-m 指定掩碼,如果不指定類型,則默認是MD5, [Hash modes ]是類型 ,從來處可以判斷hash類型。
-o 指定破解成功后的hash及所對應的明文密碼的存放位置,可以用它把破解成功的hash寫到指定文件中。
--force 忽略破解過程中的警告信息,跑單條hash可能需要加上此選項。
--show 顯示已經破解的hash及hash所對應的明文。
--increment 啟用增量破解模式,可以利用此模式讓hashcat在指定的密碼長度范圍內執行破解過程。
--increment-max 密碼最大長度,后面直接等於一個整數即可,配置increment模式一起使用。
--increment-min 密碼最小長度,后面直接等於一個整數即可,配置increment模式一起使用。
--outfile-format 指定破解結果的輸出格式 id,默認是3。
5,實例破解:
1.數字破解:[8位:12345678]
hashcat64.exe -m 0 -a 3 25d55ad283aa400af464c76d713c07ad ?d?d?d?d?d?d?d?d
2.小寫字母破解:[6位:abcdef]
hashcat64.exe -m 0 -a 3 e80b5017098950fc58aad83c8c14978e ?l?l?l?l?l?l
3.小寫字母+數字:[6-8位:1a31fa1c]
hashcat64.exe -m 0 -a 3 --force b54e53e2f21b7260df895bc885ceaa3e --increment --increment-min 1 --increment-max 8 ?h?h?h?h?h?h?h?h
4.字典破解:
-a 0 是指定字典破解模式,-o 是輸出結果到文件中
舉例:
hashcat64.exe -m 0 -a 0 ./dict/hash.txt ./dict/password.txt -o result.txt
5.破解Windows hash
1.使用mimikatz獲取windows hash:
windows使用命令需要管理員權限:
mimikatz.exe log
mimikatz # privilege::debug
mimikatz # sekurlsa::logonpasswords
mimikatz # exit
meterpreter >mimikatz_command -f version //查看版本信息
meterpreter > mimikatz_command -f samdump::hashes//讀取本地hash
windows系統下的hash密碼格式為:
用戶名:RID
LM-HASH值
NT-HASH值 [存在NT,直接破解 NT]
LM-HASH值都是hash算法
破解NT-Hash:
hashcat64.exe -a 3 -m 1000 b4814903533072474831d4791b7d4a9c ?l?l?l?d?d?d?s
6.zip壓縮包破解:
使用zip2john獲取密碼哈希值
設置hash類型:win-zip 掃描模式:掩碼模式
hashcat64.exe -m 13600 -a 3 $zip2$*0*3*0*b71633a9a7fc15682a0dad00d17f1a43*2cee*1d*4c55a370878091d08bd637730ae11c1abdcdbcdbe099d14c166826216d*770b0e7ff9bbc5e4149c*$/zip2$ ?d?d?d?d?d?d --show
