在太阳下
不管你喜不喜欢,高不高兴,爱与不爱;太阳照旧照耀着你!温暖着你!

Crunch Linux密码生成工具

Crunch Linux密码生成工具
TIME 2023-02-16 19:57

▊Crunch
是一个Linux系统下的生成密码字典工具,可以根据用户的实际使用情况,灵活的制定密码生成规则


Debian 11 安装 crunch 命令
apt install -y crunch

查看crunch版本

crunch –version
返回结果
crunch version 3.6

命令语法
crunch 密码最小位数 密码最大位数 参数
❗其中,“密码最小位数”和“密码最大位数”是必不可缺的
参数默认是小写英文字母

命令参数
-b:指定文件输出的大小,避免字典文件过大
-c:指定文件输出的行数,即包含密码的个数
-d:限制相同元素出现的次数
-e:定义停止字符,即到该字符串就停止生成
-i:改变输出格式,即aaa,aab -> aaa,baa (感觉意义不大)
-o:将密码保存到指定文件
-q:读取密码文件,即读取pass.txt
-p:指定元素以组合的方式进行
-s:指定起始字符串
-t:指定密码输出的格式
% / / 代表数字
^ / / 代表特殊符号
@ / / 代表小写字母
, / / 代表大写字母
-f:调用库文件
/usr/share/crunch/charset.lst


范例1:生成1-2位的小写英文字母词典
crunch 1 2   #“1”就是最小密码位数 “2”是最大密码位数 这里的参数缺省那就是默认的小写英文字母
Crunch will now generate the following amount of data: 2080 bytes  #Crunch现在将生成以下数据量:2080字节
Crunch will now generate the following number of lines: 702  #Crunch现在将生成以下行数:702,也就是生成了702个密码
a  #会按顺序从“a”开始生成最小位数的密码
b
c
d
….中间省略若干行
zv
zw
zx
zy
zz #一直到到最大位数密码的最后组合

 


范例2:参数”-c“指定文件输出的行数,即包含密码的个数
crunch 1 2 -c 10  #基于上面那个范例,上面那个范例输出了702个密码,太多了,我只要10个
Crunch will now generate the following amount of data: 82 bytes
  #Crunch现在将生成以下数据量:82字节
Crunch will now generate the following number of lines: 36
#Crunch现在将生成以下数量的行:36,实质上只有10个,原因是最大密码位数没必要是”2″
a
b
c
d
e
f
g
h
i
j
  #以上就是生成的指定的行数,即生成的密码个数


范例3:参数”-e“定义停止字符,即到该字符串就停止生成
crunch 1 1 -e g  #还是基于第一个范例,我们密码生成到”g”的时候就终止生成密码

Crunch will now generate the following amount of data: 14 bytes    #Crunch现在将生成以下数据量:14字节
Crunch will now generate the following number of lines: 7  #Crunch现在将生成以下数量的行:7,也就是7个密码
a
b
c
d
e
f
g  #我们参数设置的是到”g”的时候就终止生成密码


范例4:参数”-o“将密码保存到指定文件
crunch 1 2 -o 1.txt  #生成1-2位的小写字母密码字典,并且将其保存为”1.txt”保存在当前目录
Crunch will now generate the following amount of data: 2080 bytes  #Crunch现在将生成以下数据量:2080字节

Crunch will now generate the following number of lines: 702  #Crunch现在将生成以下行数:702,也就是生成了702个密码
crunch: 100% completed generating output  #Crunch100%完成生成输出
ls -lh  #查看刚刚生成名为“1.txt”的密码字典
-rw-r–r– 1 root root 2.1K Feb 16 20:50 1.txt  #文件占用2.1K


范例5:参数”-p“指定元素以组合的方式进行
crunch 1 3 -p a1A  #“1”就是最小密码位数 “3”是最大密码位数 这里的-p参数就是 a 1 A 三个字母的组合
Crunch will now generate approximately the following amount of data: 24 bytes
  #Crunch现在将生成以下数据量:24字节
Crunch will now generate the following number of lines: 6
  #Crunch现在将生成以下行数:6,也就是生成了6个密码
1Aa
1aA
A1a
Aa1
a1A
aA1 
#这里一共生成了六种组合


范例6:参数”-s“指定起始字符串
crunch 3 3 -s zyx   #”3“是最小密码位数 “3“是最大密码位数 参数-s zyx就是让它从zyx按顺序开始生产密码
Crunch will now generate the following amount of data: 116 bytes
Crunch will now generate the following number of lines: 29
zyx
  #从zyx按顺序开始生产密码
zyy
zyz
…..省略若干
zzx
zzy
zzz
  #一共生成了29个密码


范例7:参数-t指定密码输出的格式
crunch 1 1 -t %    #生成最小1位数,最大1位数的数字密码,将会生成0-9一共10个密码
crunch 4 4 -t %^@,    #生成最小4位数,最大4位数的【数字+特殊符号+大写字母+小写字母】的组合密码,将会生成223080个密码


范例8:生成一组截取手机号码
假设我们要生成以136开头的11位手机号码,并且截取4567-5678段的号码
crunch 11 11 -t 136%%%%%%%% -s 13645670000 -e 13656789999    #这样将生成11120000(一千一百万)个密码

范例8b:生成一组截取手机号码
假设我们要生成以13开头的11位手机号码,并且截至到160段的号码,并且保存为130-160.txt的文本文档
crunch 11 11 -t 1%%%%%%%%%% -s 13000000000 -e 15999999999 -o 130-160.txt     #将会生成3000000000(三十亿)个电话号码,占用33GB空间


范例9:社工张三的密码,并将生成的密码字典保存为zhangsan.txt文档
已知社工对象姓名张三,生日1988年08月08号,最短密码为6位,那么我们将会用到一下关键词
zhangsan zhang san zs 1988 88 08 08
命令就是
crunch 6 16 -o zhangsan.txt -p zhangsan zhang san zs 1988 88 08 08 
密码一共有40320中组合
最小密码6位,一般的最低要求都是6位
最大密码16位,根据最大组合一共是16位,密码再长可能张三自己也不一定能记得住
-o 参数要放在前面,不然它就把-o当作字符串了


范例


返回:《Linux Debian 11 学习笔记》 目录

点击数:12

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
Verified by MonsterInsights