花式跑 hash
May 22, 2016
最近抓到一堆的 hash, 那么自然要想办法把它们跑出来咯.
JTR
首先自然老生常谈的 john, 或者 jtr,john the ripper.
这东西 kali 里面有自带, 然后大多数包管理器里面也都有, 也是可以直接装. 问题是, 他们不带 cuda/opencl 支持… 所以就编译一个吧.
这里我们使用 jtr 的社区版, john-jumbo.
wget https://github.com/magnumripper/JohnTheRipper/archive/bleeding-jumbo.zip
unzip bleeding-jumbo.zip
cd JohnTheRipper-bleeding-jumbo/src
./configure
这里注意看输出, 有没有类似 OpenCL:yes CUDA:yes 的字样, 若有就意味成功检测到了驱动 / 库, 如果没有就重新装驱动吧.
make clean && make -sj
我们编译之. 完成之后就可以破解了, 简单.
../run/john hash.txt
Hashcat
Hashcat, 他们标榜说自己是最快的… 实际上我也不知道.
这个倒是不需要编译了, 直接装就行.
hashcat -m num -a num -1 hash.txt -o result.txt
这个具体问题就是必须指定 hash 类型, 攻击模式的话就那么几种, 最无脑的就是 brute-force.
hashcat -m num -a 3 hash.txt "?l" #使用内置的 charset
具体类型的话在 -h 里面有.
Brute-force 就是根据给出的 charset 来破解.
Mask 则是根据一个规律来组合的 brute-force.
Straight 和 Combination 都是需要字典的,S 是直接过字典,而 C 会再次组合.
自定义 charset 的话则是 -1 -2 -3 -4 后面加上 charset.
#eg
-1 abcdefghijklmnopqrstuvwxyz0123456789 #a-z 0-9
-1 loweralpha_numeric.hcchr #等同
-1 ?dabcdef #0123456789abcdef
-1 ?l?d?s?u #abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=~`[]{}|\:;"'<>;,.?/
PS:可以跑包(
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.