关于Hashcat

Hashcat是什么呢?Hashcat是当前最强大的开源密码恢复工具,你可以访问Hashcat.net网站来了解这款工具的详细情况。本质上,Hashcat 3.0是一款高级密码恢复工具,可以利用CPU或GPU资源来攻击160多种哈希类型的密码

准备

  • hashcat(5.1)kali自带
  • cap数据包
  • 字典一份(为了节约时间 就不演示枚举了)

cap文件转化为hccap格式

aircrack-ng <out.cap> -J <out.hccap>


需要注意的是:此种方法转换的数据包只适应比较早的hashcat,新版的已经废弃。

如下:我么转换时会提示下面错误!

解决方法:
https://hashcat.net/cap2hccapx/上传我们的数据包
转换后的数据包格式为.hccapx

开始破解

hashcat -m 2500 xxx.hccapx dics.txt

参数说明:

  • xxx.hccapx(转换的数据包)
  • dics.txt (字典)
    但是运行上面命令后,又会报错。

* Device #1: Not a native Intel OpenCL runtime. Expect massive speed loss. 
             You can use --force to override, but do not report related errors.                                                                       
No devices found/left.

不用担心,我们只需要在后面添加一个参数--force即可。

hashcat  -m 2500 11.hccapx  pass.txt --force

显示破解完成的密码

hashcat  -m 2500 11.hccapx  pass.txt --force --show

填坑

因为在VM中安装的kali,所以你会遇到下面错误。

不用担心,解决方法如下:
将处理器改成单处理且单核,增加内存至4G

关于掩码暴力破解

由于wifi密码的破解,我们都是基于字典的破解,成功率的大小和字典有直接的关系。但是在没有字典的情况下我们该怎么办?
这时,我们可以试试枚举破解。
假设我们只知道WiFi密码是8位的纯数字

hashcat -a 3  -m 2500 777.hccapx ?d?d?d?d?d?d?d?d --force


不到10s就破解完成。

Hashcat相关参数说明

下面使常见的参数,想了解更多的参数可以hashcat --help查看

-a  指定要使用的破解模式,其值参考后面对参数。“-a 0”字典攻击,“-a 1” 组合攻击;“-a 3”掩码攻击。
-m  指定要破解的hash类型,如果不指定类型,则默认是MD5
-o  指定破解成功后的hash及所对应的明文密码的存放位置,可以用它把破解成功的hash写到指定的文件中
--force 忽略破解过程中的警告信息,跑单条hash可能需要加上此选项
--show  显示已经破解的hash及该hash所对应的明文
--increment  启用增量破解模式,你可以利用此模式让hashcat在指定的密码长度范围内执行破解过程
--increment-min  密码最小长度,后面直接等于一个整数即可,配置increment模式一起使用
--increment-max  密码最大长度,同上
--outfile-format 指定破解结果的输出格式id,默认是3
--username   忽略hash文件中的指定的用户名,在破解linux系统用户密码hash可能会用到
--remove     删除已被破解成功的hash
-r       使用自定义破解规则

攻击模式

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

掩码设置
这里列一下常见的掩码字符集
?d:数字
?u:大写字母
?l:小写字母

八位数字密码:?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

实例

7位小写字母破解:

hashcat-a 3 -m 0 --force 7a47c6db227df60a6d67245d7d8063f3 ?l?l?l?l?l?l?l

1-8位数字破解:

hashcat -a 3 -m 0 --force 4488cec2aea535179e085367d8a17d75 --increment --increment-min 1 --increment-max 8 ?d?d?d?d?d?d?d?d

1-8位小写字母+数字破解

hashcat -a 3 -m 0 --force ab65d749cba1656ca11dfa1cc2383102 --increment --increment-min 1 --increment-max 8 ?h?h?h?h?h?h?h?h

特定字符集:123456abcdf!@+-

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

注意一下:这里的-1和?1是数字1,不是字母l
1-8为位符集:123456abcdf!@+-

hashcat -a 3 -1 123456abcdf!@+- 9054fa315ce16f7f0955b4af06d1aa1b --increment --increment-min 1 --increment-max 8 ?1?1?1?1?1?1?1?1

1-8位数字+大小写字母+可见特殊符号

hashcat -a 3 -1 ?d?u?l?s d37fc9ee39dd45a7717e3e3e9415f65d --increment --increment-min 1 --increment-max 8 ?1?1?1?1?1?1?1?1

或者:

hashcat -a 3 d37fc9ee39dd45a7717e3e3e9415f65d --increment --increment-min 1 --increment-max 8 ?a?a?a?a?a?a?a?a

字典破解
-a 0是指定字典破解模式,-o是输出结果到文件中

hashcat -a 0 ede900ac1424436b55dc3c9f20cb97a8 password.txt -o result.txt

批量破解

hashcat -a 0 hash.txt password.txt -o result.txt

其他

--hwmon-temp-abort=100 GPU温度达到100后,停止(默认90)
--session=my 将进度存到my.session文件中,断点续解密
Last modification:December 26th, 2019 at 08:39 am
正在沿街乞讨中……