Crunch是一款运行在linux中的字典生成工具,可以灵活的定制自己的密码字典文件。
密码字典能干吗?懂的都懂!
kali系统中默认安装有Crunch工具。
下载地址:https://sourceforge.net/projects/crunch-wordlist/
[root@lidabai-master ~]# tar zxvf crunch-3.6.tgz
[root@lidabai-master ~]# cd crunch-3.6/
[root@lidabai-master ~]# ls
charset.lst COPYING crunch.1 crunch.c Makefile unicode_test.lst
进入crunch的安装目录下面可以看到里面有一个charset.lst文件,里面定义了一些名词用于简写用于制作字典的字符如:
[root@lidabai-master ~]# gcc -Wall -lm -pthread -std=c99 -m64 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 crunch.c -o crunch -lm
[root@lidabai-master ~]# make install
在安装完成后,就开始学习如何使用Crunch工具了。
crunch min-len max-len [opention]
min-len:开始的最小长度字符串(这个选项是必须的)
max-len:结束的最大长度字符串(这个选项是必须的)
charset string 要生成密码包含的字符集(小写字符、大写字符、数字、符号),这个选项是可选的,如果你不写这个选项,将使用默认字符集(默认为小写字符)。如果你想生成的密码包含空格字符,你可以使用来代替,你可以把带有空格的字符集放在双引号“”中,如“123abc ”
例子:按每个文件20mib分割字典文件
[root@lidabai-master ~]# crunch 4 5 -b 20mib -o START
说明:
单位有 kb, mb, gb, kib, mib, gib ,前三个单位是以1000单位计算的,后三个是以1024计算的。
注意数字和单位之间没有空格,例如:500mb 是正确的, 500 mb 格式是不对的(中间有空格),-b参数必须和-o START结合使用
[root@lidabai-master ~]# crunch 8 8 -f /root/crunch-3.6/charset.lst mixalpha-numeric-all-space -o mima-8wei.txt
输出结果:
Crunch will now generate the following amount of data: 59707838816015625 bytes
56941832366 MB
55607258 GB
54303 TB
53 PB
数据量54303TB,文件太大。
2、生成10位密码,格式为“三个小写字母+一个符号+四个数字+两个符号”,限制每个小写字母最多连续出现2次,数字最多连续出现3次
[root@lidabai-master ~]# crunch 10 10 -t @@@^%%%%^^ -d 2@ -d 3% -b 20mb -o START
3、生成8位密码,每个小写字母最多连续出现两个
[root@lidabai-master ~]# crunch 8 8 -d 2@