Crunch是一种创建密码字典工具,按照指定的规则生成密码字典,可以灵活的制定自己的字典文件。使用Crunch工具生成的密码可以输出到屏幕,保存到文件、或另一个程序。crunch程序在2004年及以前由email为 mimayin@aciiid.ath.cx 的作者编写,后续版本由 bofh28@gmail.com 负责维护,因此在github上有两个版本:
https://github.com/crunchsec/crunch
https://github.com/jaalto/external-sf--crunch-wordlist
Crunch其实最厉害的是知道密码的一部分细节后,可以针对性的生成字典,这在渗透中就特别有用,比如知道用户密码的习惯是taobao2013(taobao+数字年),这可以通过Crunch生成taobao+所有的年份字典,用来进行暴力破解攻击其效果尤佳!
其最新版本为3.6,现已支持:
- Crunch可以以组合和排列的方式生成字典
- 它可以通过行数或文件大小中止输出
- 现在支持恢复
- 现在支持数字和符号模式
- 现在分别支持大小写字符模式
- 在生成多个文件时添加状态报告
- 新的-l选项支持@,%^
- 新的-d选项可以限制重复的字符,可以通过man文件查看详细信息
- 现在支持unicode
安装
$ sudo apt-get install crunch -y
使用
$ crunch --help
Usage: crunch <min> <max> [options]
where min and max are numbers
参数详解
min 设定最小字符串长度(必选)
max 设定最大字符串长度(必选)
options
-b 指定文件输出的大小,避免字典文件过大
-c 指定文件输出的行数,即包含密码的个数
-d 限制相同元素出现的次数
-e 定义停止字符,即到该字符串就停止生成
-f 调用库文件(/etc/share/crunch/charset.lst)
-i 改变输出格式,即aaa,aab -> aaa,baa
-I 通常与-t联合使用,表明该字符为实义字符
-m 通常与-p搭配
-o 将密码保存到指定文件
-p 指定元素以组合的方式进行
-q 读取密码文件,即读取pass.txt
-r 定义重某一字符串重新开始
-s 指定一个开始的字符,即从自己定义的密码xxxx开始
-t 指定密码输出的格式
-u 禁止打印百分比(必须为最后一个选项)
-z 压缩生成的字典文件,支持gzip,bzip2,lzma,7z
特殊字符
% 代表数字
^ 代表特殊符号
@ 代表小写字母
, 代表大写字符
使用案例
生成1-6位小写字母与数字混合的密码字典
crunch 1 6 -f /usr/share/crunch/charset.lst lalpha-numeric -o 6a-z-num.txt
生成11位纯数字的密码字典
crunch 11 11 -f /usr/share/crunch/charset.lst numeric -o 11num.txt
生成以1开头的11位数密码
./crunch 11 11 -t 1%%%%%%%%%% -o /home/byy/VpnDec-v1.0/lib/dict/11num_1.txt
转载:
https://www.cnblogs.com/wpjamer/p/9913380.html