0x00 背景
目前GPU的速度越来越快,使用GPU超强的运算速度进行暴力密码破解也大大提高了成功率,曾经看到老外用26块显卡组成的分布式破解神器让我羡慕不已。要说目前最好的GPU破解HASH的软件,非HashCat莫属了。下面我就为大家具体介绍一下HashCat系列软件。
0x01 所需硬件及系统平台
HashCat系列软件在硬件上支持使用CPU、NVIDIA GPU、ATI GPU来进行密码破解。在操作系统上支持Windows、Linux平台,并且需要安装官方指定版本的显卡驱动程序,如果驱动程序版本不对,可能导致程序无法运行。
如果要搭建多GPU破解平台的话,最好是使用Linux系统来运行HashCat系列软件,因为在windows下,系统最多只能识别4张显卡。并且,Linux下的VisualCL技术(关于如何搭建VisualCL环境,请参考官方文档http://hashcat.net/wiki/doku.php?id=vcl_cluster_howto),可以轻松的将几台机器连接起来,进行分布式破解作业。 在破解速度上,ATI GPU破解速度最快,使用单张HD7970破解MD5可达到9000M/s的速度,其次为NVIDIA显卡,同等级显卡GTX690破解速度大约为ATI显卡的三分之一,速度最慢的是使用CPU进行破解。
0x02 HashCat软件简介
HashCat主要分为三个版本:Hashcat、oclHashcat-plus、oclHashcat-lite。这三个版本的主要区别是:HashCat只支持CPU破解。oclHashcat-plus支持使用GPU破解多个HASH,并且支持的算法高达77种。oclHashcat-lite只支持使用GPU对单个HASH进行破解,支持的HASH种类仅有32种,但是对算法进行了优化,可以达到GPU破解的最高速度。如果只有单个密文进行破解的话,推荐使用oclHashCat-lite。
目前最新的软件版本为HashCat v0.46、oclHashcat-plus v0.15、oclHashcat-lite v0.15。但是经过一段时间的测试,发现有时候版本越高,速度越慢。所以推荐在使用没有问题的情况下,无需升级到最新版本。根据测试,oclHashcat-lite v0.10的运算速度比v0.15的运算速度快20%,所以单个密文破解还是推荐使用oclHashcat-lite v0.10。
0x03 HashCat软件使用
HashCat系列软件拥有十分灵活的破解方式,可以满足绝大多数的破解需求,下面我就为大家简单介绍一下。
1.指定HASH类型
在HashCat中--hash-type ?参数可以指定要破解的HASH类型,运行hashcat主程序加上--help参数,在* Generic hash types:
中可以看到各种HASH类型的代号,如图所示: 
不同版本的HashCat所支持的hash类型有所不同,如果没有指定--hash-type参数,那么程序默认为MD5类型。
2.指定破解模式
在HashCat中--attack-mode ?
参数可以可以指定破解模式,软件一共支持5种破解模式,分别为
0 Straight(字典破解) 1 Combination(组合破解) 3 Brute-force(掩码暴力破解) 6 Hybrid dict + mask(混合字典+掩码) 7 Hybrid mask + dict(混合掩码+字典)
下面为大家介绍两个最常用的破解方式:字典破解和掩码暴力破解。
使用字典破解MD5:
oclHashcat-plus64.exe --hash-type 0 --attack-mode 0 {HASH文件} [字典1] [字典2] [字典3]…
如:
oclHashcat-plus64.exe --hash-type 0 --attack-mode 0 d:md5.txt d:dict1.txt d:dict2.txt
字典破解由于受到磁盘和内存速度的影响,速度无法达到GPU的最大运算速度,基本上一个5GB的字典,对于MD5破解来说10分钟内可以跑完。
使用掩码暴力破解SHA1:
oclHashcat-plus64.exe --hash-type 100 --attack-mode 3 {HASH文件} [掩码]
{掩码的设置}
对于掩码,这边需要稍微做一个说明。Hashcat默认的掩码一共有9种,如图所示:
?l表示a-z,?u表示A-Z,?d表示0-9,?a表示键盘上所有的特殊字符,?s表示键盘上所有的可见字符,?h表示8bit 0xc0-0xff的十六进制,?D表示8bit的德语字符,?F表示8bit的法语字符,?R表示8bit的俄语字符。
那么有同学可能会问了,如果我要用掩码表示小写+数字怎么办呢?这就需要用到自定义字符集这个参数了。软件支持用户最多定义4组字符集,分别用
--custom-charset1 [chars] --custom-charset2 [chars] --custom-charset3 [chars] --custom-charset4 [chars]
来表示,在掩码中用?1、?2、?3、?4来表示。
比如说我要设置自定义字符集1为小写+数字,那么就加上
-- custom-charset1 ?l?d
如果要设置自定义字符集2为abcd1234,那么就加上
--custom-charset2 abcd1234
如果要破解8位的小写+数字,那么需要设置自定义字符集1为
--custom-charset1 ?l?d
设置掩码为?1?1?1?1?1?1?1?1。 如果已知密码的第一位为数字,长度为8位,后几位为大写+小写,那么需要设置自定义字符集1为
--custom-charset1 ?l?u
设置掩码为?d?1?1?1?1?1?1?1。
{掩码的长度}
对于已知长度的密码,可以使用固定长度的掩码进行破解。比如要破解11位数字,就可以这样写掩码?d?d?d?d?d?d?d?d?d?d?d。
对于想要破解一些未知长度的密码,希望软件在一定长度范围内进行尝试的,可以使用--increment参数,并且使用--increment-min ?定义最短长度,使用--increment-max ?定义最大长度。比如要尝试6-8位小写字母,可以这样写
--increment --increment-min 6 --increment-max 8 ?l?l?l?l?l?l?l?l
{举例}
破解8-11位数字+小写
oclHashcat-plus64.exe --hash-type 100 --attack-mode 3 --increment --increment-min 8 --increment-max 11 --custom-charset1 ?l?d d:sha1.txt ?1?1?1?1?1?1?1?1?1?1?1
0x04 HashCat参数优化
HashCat本身考虑到系统资源的分配,默认参数下并没有最大化的来使用硬件资源。如果我们想要让破解速度最大化,就需要对一些参数进行配置。
1.Workload tuning 负载调优。
该参数支持的值有1,8,40,80,160
--gpu-accel 160
可以让GPU发挥最大性能。
2.Gpu loops 负载微调
该参数支持的值的范围是8-1024(有些算法只支持到1000)。
--gpu-loops 1024
可以让GPU发挥最大性能。
3.Segment size 字典缓存大小
该参数是设置内存缓存的大小,作用是将字典放入内存缓存以加快字典破解速度,默认为32MB,可以根据自身内存情况进行设置,当然是越大越好XD。
--segment-size 512
可以提高大字典破解的速度。
0x05 结束语
本文只是简单介绍HashCat的一些常见用法,希望能够让大家更快的学会HashCat的使用。本人刚接触Hashcat不久,如果文章有什么缺点或不足也希望大家能够及时提出,在使用过程当中有什么疑问可以跟帖提问。如果想要更加详细的了解HashCat,请大家参阅官方文档:http://hashcat.net/wiki/。
相关推荐
目前GPU的速度越来越快,使用GPU超强的运算速度进行暴力密码破解也大大提高了成功率,曾经看到老外用26块显卡组成的分布式破解神器让我羡慕 不已。要说目前最好的GPU破解HASH的软件,非HashCat莫属了。下面我就为...
破开它其实很容易!...2、将需要破解的文件复制到打开破解工具文件夹,在文件夹地址输入CMD运行程序,在运行程序中输入:hashcat.exe -m 13000 -a 3 “+破解文件hash值+” -o password.txt,回车获取密码
This version combines the previous CPU-based hashcat (now called hashcat-legacy) and GPU-based oclHashcat. Hashcat is released as open source software under the MIT license. Current Version ...
Hashcat for windows (GPU)
Hashcat is the self-proclaimed world's fastest password recovery tool. It had a proprietary code base until 2015, but is now released as free software. Versions are available for Linux, OS X, and ...
Hashcat Benchmark GPU的 Hashcat中针对不同GPU的基准测试 如何合作 hashcat -b --benchmark-all > benchmark.txt 笔记 请不要在执行此过程时使用GPU WPA基准 哈希模式:2500-WPA-EAPOL-PBKDF2 294.8 显卡 哈希/秒...
Hashcat是一个基于GPU的Hash密码破解工具。在Hashcat诞生之前已经有一些近乎完美的密码破解工具,例如“PasswordsPro”、“John The Ripper”,2009年出世的Hashcat则实现了对于现代CPU多内核的利用。 Hashcat在...
This version combines the previous CPU-based hashcat (now called hashcat-legacy) and GPU-based oclHashcat. Hashcat is released as open source software under the MIT license. Current Version ...
当前最强大的开源密码恢复工具,你可以访问Hashcat.net网站来了解这款工具的详细情况。本质上,Hashcat 3.0是一款高级密码恢复工具,可以利用CPU或GPU资源来攻击160多种哈希类型的密码
hashcat使用CPU/GPU破译(系统密码、wifi,rar、MD5), Cracking WPA/WPA2 with oclHashcat:https://hashcat.net/wiki/doku.PHP?id=cracking_wpawpa2 在线cap转为hccap格式:...
高速破解 CMD5 hash 加密的明文 内附说明
hashcat号称世界上最快的密码破解,世界上第一个和唯一的基于GPGPU规则引擎,免费多GPU(高达128个GPU),多哈希,多操作系统(Linux和Windows本地二进制文件),多平台(OpenCL和CUDA支持),多算法,资源利用率低...
Hashcat系列软件是比较牛逼的密码破解软件,系列软件包含Hashcat、oclHashcat;还有一个单独新出的...其区别为Hashcat只支持cpu破解;oclHashcat和oclGausscrack则支持gpu加速。oclHashcat则分为AMD版和NIVDA版。
比EWSA更好的工具,oclHashcat-plus,支持GPU跑包,速度快40%,强烈推荐使用
hashcat是世界上速度最快,最先进的密码恢复工具,支持五种独特的攻击模式,支持200多种高度优化的哈希...hashcat目前支持Linux,Windows和macOS上的CPU,GPU和其他硬件加速器,并且具有帮助实现分布式密码破解的功能。
在使用“GPU显卡检测神器”时,用户可以: 1. **查看显卡基本信息**:了解显卡的品牌(如NVIDIA、AMD或Intel)、型号、BIOS版本、显存容量等。 2. **监控显卡状态**:实时查看GPU的温度、风扇转速、电压,以及当前...
hashcat是一个极其强大的密码破解工具,通过使用GPU来加速计算hash的速度,从而达到快速破解密码的目的。 Windows上的AMD GPU需要“AMD Radeon Software Crimson Edition”(15.12或更高版本)Linux上的AMD GPU需要...
RAR暴力破解算法源程序,使用GPU进行优化加速。
### GPU并行使用Fortran详解 #### 一、引言 随着高性能计算需求的日益增长,利用GPU(图形处理器)进行大规模并行计算已成为一种趋势。Fortran作为一种历史悠久且广泛应用于科学计算领域的编程语言,其与GPU技术的...