最近刷题找到了一个一键式的密码破解工具:Hashcat,这个工具可以使用CPU/GPU进行破解,同时支持Windows和Linux两大平台。
Hashcat有三个版本:Hashcat,oclHashcat-lite 和 oclHashcat-plus,HashCat只支持CPU破解,lite使用GPU对单个HASH进行破解,plus就是使用GPU对多个进行破解的区别。
Hashcat工具支持破解windows密码、linux密码、office密码、Wi-Fi密码、mysql密码、sql server密码、以及md5、sha1、sha256等哈希散列。
二、工具以及字典下载Hashcat工具:https://pan.baidu.com/s/1L9ibdeYGNb-HZWN7fM1wOQ?pwd=z5ni
字典:https://pan.baidu.com/s/1v5iHbM5SWJUrr2zirU_esg?pwd=ub9w
三、Hashcat 使用这一次就尝试破解之前获取的 Windows NTLMHash 简单测试一下,我的笔记本虽然是 i7-11,但是显卡是集显,那只能用最简单的 CPU 破解了。
HASH: 3dbde697d71690a769204beb12283678(密码:123)
- [ Options ] -
Options Short / Long | Type | Description | Example
================================+======+======================================================+===
-m, --hash-type | Num | Hash-type, references below (otherwise autodetect) | -m 1000
-a, --attack-mode | Num | Attack-mode, see references below | -a 3
-V, --version | | Print version |
-h, --help | | Print help |
--quiet | | Suppress output |
找一下 -m,这个参数是HASH类型,我们需要指定 NTLM,列表中显示的是 1000;
- [ Hash modes ] -
# | Name | Category
======+=====================================================+=====================================
900 | MD4 | Raw Hash
0 | MD5 | Raw Hash
100 | SHA1 | Raw Hash
1300 | SHA2-224 | Raw Hash
1400 | SHA2-256 | Raw Hash
...
17500 | SHA3-384 | Raw Hash
17600 | 电脑 SHA3-512 | Raw Hash
6000 | RIPEMD-160 | Raw Hash
1000 | NTLM | Operating System
然后是 -a,这个参数是攻击方式,一共有 6 种模式:
- [ Attack Modes ] -
# | Mode
===+======
0 | Straight //字典破解
1 | Combination //组合破解
3 | Brute-force //掩码破解
6 | Hybrid Wordlist + Mask //混合字典 + 掩码
7 | Hybrid Mask + Wordlist //混合掩码 + 字典
9 | Association //这个没找到是什么
这里推荐两个字典下载的地方:推荐字典1,推荐字典2。当然没字典也能用掩码来处理,需要知道密码的长度、类型。
1. http://contest-2010.korelogic.com/wordlists.html
2. https://wiki.skullsecurity.org/Passwords
- [ Built-in Charsets ] -
? | Charset
===+=========
l | abcdefghijklmnopqrstuvwxyz [a-z]
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ [A-Z]
d | 0123456789 [0-9]
h | 0123456789abcdef 电脑 [0-9a-f]
H | 0123456789ABCDEF [0-9A-F]
s | !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
a | ?l?u?d?s
b | 0x00 - 0xff
例如:?d?d?d?d?d?d?d?d代表密码为8位数字,?u?l?l?l?l?d?d?d代表密码为7位,首个字母大写,然后三个小写字母,最后三个数字。当然我这里已经下载好字典了,就使用 -a 0 的字典模式进行破解;
命令:hashcat.exe -a 0 -m 1000 3dbde697d71690a769204beb12283678 Goyasha.txt
E:\hashcat-6.2.5>hashcat.exe -a 0 -m 1000 3dbde697d71690a769204beb12283678 Goyasha.txt
hashcat (v6.2.5) starting
OpenCL API (OpenCL 3.0 ) - Platform #1 [Intel(R) Corporation]
=============================================================
* Device #1: Intel(R) Iris(R) Xe Graphics, 3168/6430 MB (1607 MB allocatable), 96MCU
...
3dbde697d71690a769204beb12283678:123
...
Guess.Base.......: 电脑 File (Goyasha.txt)
Guess.Queue......: 1/1 (100.00%)
Speed.#1.........: 19542.1 kH/s (10.44ms) @ Accel:128 Loops:1 Thr:64 Vec:1
...
Stopped: Thu Nov 10 11:52:09 2022
可以看到我们的密码已经被破解出来了,3dbde697d71690a769204beb12283678:123。
电脑