说明
通常我们使用的是 英文字符,abc123 这些,但是如果遇到 俄文、阿拉伯等一些非 ASCII 码的字符集,每次手动输入不现实。所以就可以保存到 .hcchr 文件中
一、先看看,hashcat提供內建字符集
?l = abcdefghijklmnopqrstuvwxyz
?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
?d = 0123456789
?s = «space»!”#$%&’()*+,-./:;<=>?@[\]^_`{|}~
?a = ?l?u?d?s
?b = 0×00 – 0xff
二、自定义字符集
所有的hashcat衍生版都有四个命令行参数用来自定义字符集
–custom-charset1=CS
–custom-charset2=CS
–custom-charset3=CS
–custom-charset4=CS
你可以直接在命令行中使用-1,-2,-3,-4来指定字符集并且直接使用?1,?2,?3,?4来调用,也可以在配置文件(***.hcchr)中指定。在指定时,可以直接使用內建字符集组合,也可以使用纯字符组合甚至是混合的组合。
例如
指定?1代表的字符时,可以使用下面这些方式(他们效果一样):
-1 abcdefghijklmnopqrstuvwxyz0123456789
-1 abcdefghijklmnopqrstuvwxyz?d
-1 ?l0123456789
-1 ?l?d
-1 loweralpha_numeric.hcchr # file that contains alldigits + chars (abcdefghijklmnopqrstuvwxyz0123456789)
下面是在指定“0123456789abcdef”这个字符集时:
-1 ?dabcdef
下面是指定7位ASCII码全字符(“mixalpha-numeric-all-space”)时:
-1 ?l?d?s?u
下面是指定为特殊语言字符集时:
-1 charsets/special/Russian/ru_ISO-8859-5-special.hcchr
例如
下面的命令是创建如下的密码(-a 3表示暴力破解攻击):
command: -a 3 ?l?l?l?l?l?l?l?l
keyspace: aaaaaaaa – zzzzzzzz
command: -a 3 -1 ?l?d ?1?1?1?1?1
keyspace: aaaaa – 99999
command: -a 3 password?d
keyspace: password0 – password9
command: -a 3 -1 ?l?u ?1?l?l?l?l?l19?d?d
keyspace: aaaaaa1900 – Zzzzzz1999
command: -a 3 -1 ?dabcdef -2 ?l?u ?1?1?2?2?2?2?2
keyspace: 00aaaaa – ffZZZZZ
command: -a 3 -1 efghijklmnop ?1?1?1
keyspace: eee – ppp
密码长度增量
默认情况下,使用8位的掩码只能破解8位的密码,不能破解低于8位更不能破解高于8位的,但可以使用increment来实现破解低于8位的(他可以设置最小位数和最大位数,但最大位数不能超过掩码位数)
?l
?l?l
?l?l?l
?l?l?l?l
?l?l?l?l?l
?l?l?l?l?l?l
?l?l?l?l?l?l?l
?l?l?l?l?l?l?l?l
字符集文件
可以将常用的字符集保存为***.hcchr格式的纯文本文件,以后就可以直接调用(像上面例子中使用的charsets/special/Russian/ru_ISO-8859-5-special.hcchr一样)回顾用法:
-1 charsets/standard/German/de_cp1252.hcchr
(可以使用iconv或类似的工具将文件转换到指定语言编码 )
免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。
参考、来源:
https://www.sohu.com/a/112484975_354899