crunch

简介: crunch是一个kali自带生成字典的一个工具,一种创建密码字典工具,该字典通常用于暴力破解。使用Crunch工具生成的密码可以发送到终端、文件或另一个程序。

crunch是一个kali自带生成字典的一个工具,一种创建密码字典工具,该字典通常用于暴力破解。使用Crunch工具生成的密码可以发送到终端、文件或另一个程序。

命令格式:

crunch <min-len> <max-len> [<charset string>] [options]

参数:

min-len crunch要开始的最小长度字符串。即使不使用参数的值,也需要此选项

max-len crunch要开始的最大长度字符串。即使不使用参数的值,也需要此选项

charset string 在命令行使用crunch你可能必须指定字符集设置,否则将使用缺省的字符集设置。缺省的设置为小写字符集,大写字符集,数字和特殊字符(符号),如果不按照这个顺序,你将得到自己指定结果。必须指定字符类型或加号的值。注意:如果你想在你的字符集中包含空格特征,你必须使用“\”字符或用引号括起来你的字符集,例如"abc "。见示例3,11,12,和13。如果有“+”指定,则后续格式中出现的类型从其中取值!

常用的命令:

-c 数字 指定写入输出文件的行数,也即包含密码的个数

-d 数字符号,限制出现相同元素的个数(至少出现元素个数),“-d 2@”限制小写字母输出像aab和aac,aaa不会产生,因为这是连续3个字母,格式是数字+符号,数字是连续字母出现的次数,符号是限制字符串的字符,例如@,%^(“@”代表小写字母,“,”代表大写字符,“%”代表数字,“^”代表特殊字符)(限制每个密码至少出现几种字符)

-e 字符串,定义停止生成密码 ,比如-e 222222:到222222停止生成密码

-f /path/to/charset.lst charset-name,从charset.lst指定字符集,也即调用密码库文件,比如kali中的charset.lst 在/usr/share/crunch/charset.lst,则参数为“-f /usr/share/crunch/charset.lst”。

-i 改变出格式。例如将格式aaa,aab,aac,aad,更换为格式aaa,baa,caa,daa,aba,bba等

-o wordlist.txt,指定输出文件的名称,例如wordlist.txt

-p 字符串 或者-p 单词1 单词2 ...以排列组合的方式来生成字典。

-q filename.txt,读取filename.txt

实例使用方法:

(1) 案例1生成字母组合

runch 1 8

生成最小1位,最大8位,由26个小写字母为元素的所有组合

(2) 案例2生成指定字符组合

crunch 1 6 abcdefg

生成最小为1,最大为6,由字符串abcdefg开头,以字符串gggggg为结束的所有字符组合

(3) 案例3指定字符串加特殊字符的组合

crunch 1 6 abcdefg\

生成最小为1,最大为6,由abcdefg和空格为元素的所有组合(/代表空格)

注:指定字符集设置为占位符:使用 -t命令

-t 命令如下:

-t @,%^,指定模式,@,%^分别代表意义如下:

@ 插入小写字母

, 插入大写字母

% 插入数字

^ 插入特殊符号

使用实例:(当确定使用的对象类型但不具体知道是那些时可以使用占位符)

例一:

生成缺位的手机号码(有可能作为路由器密码或wifi密码(8-11位))

命令:crunch 11 11 -t 1503453%%%% -o 1.txt 或>> 1.txt(以%位数字占位符)

例二:

crunch 4 4 + + 123 + -t %%@^

生成4位密码,其中格式为“两个数字”+“一个小写字母”+“常见符号”(其中数字这里被指定只能为123组成的所有2位数字组合)。比如12f#,32j^,13t$......

加号(+)是一个占位符,以便为字符类型指定一个字符集。crunch将使用默认字符集的字符类型,当crunch遇到一个+(加号)的命令行。您必须为每个字符类型指定值或使用加号。也就是说,如果你有两个字符类型,你要么为每个类型指定值,要么使用加号。

关于+的理解 :在有%@^指定类型时,前面如果先要指定输出的字符范围而不是默认范围就要用到+号 但如果有好几种数据类型但是不确定也需要用到+占个位(如上题)一般来说只有指定数字时前面要用+ ,而字母不用。

例:root@kali:~# crunch 3 3 abc -t 1@@

(1)生成pass01-pass99所有数字组合

crunch 6 6 -t pass%% >>newpwd.txt

(2)生成六位小写字母密码,其中前四位为pass

crunch 6 6 -t pass@@ >>newpwd.txt

(3)生成六位密码,其中前四位为pass,后二位为大写

crunch 6 6 -t pass,, >>newpwd.txt

(4)生成六位密码,其中前四位为pass,后二位为特殊字符

crunch 6 6 -t pass^^ >>newpwd.txt

(5)制作8为数字字典

crunch 8 8 charset.lst numeric -o num8.dic

(6)制作6为数字字典

crunch 6 6 0123456789 –o num6.dic

(7)制作139开头的手机密码字典

crunch 11 11 +0123456789 -t 139%%%%%%%% -o num13.dic

crunch 11 11 +0123456789 -t 139%%%%%%%% -b 20mib -o START

文件大小为1144 MB,还可以每次生成文件大小为20M,自动生成文件:

最后补充一下 关于使用字符集的方法:

字符集在 /usr/share/crunch/charset.lst 下 如果要使用自己可以去查名字

使用方法以及实例:

-f /path/to/charset.lst charset-name,从charset.lst指定字符集,也即调用密码库文件,比如kali中的charset.lst 在/usr/share/crunch/charset.lst,则参数为“-f /usr/share/crunch/charset.lst”

实例:

crunch 1 8 -f charset.lst mixalpha-numeric-all-space -o wordlist.txt

调用密码库charset.lst,生成最小为1,最大为8,元素为密码库charset.lst中 mixalpha-numeric-all-space的项目,并保存为 wordlist.txt;其中 charset.lst在kali_linux的目录为 /usr/share/crunch/charset.lst, charset.lst中mixalpha-numeric-all-space项目包含最常见的元素组合(即大小写字母+数字+常见符号);使用cat /usr/share/crunch/charset.lst 查看所有密码库

crunch集成的密码库都可以按照上述方法调用。

相关文章
|
5月前
|
文字识别 Android开发 C++
Tesseract OCR集成Android Studio实现OCR识别
Tesseract OCR集成Android Studio实现OCR识别
285 0
|
机器学习/深度学习 文字识别 算法
文本识别 (OCR)引擎之Tesseract的使用
esseract是一个开源文本识别 (OCR)引擎,用于识别图片中的文字并将其转换为可编辑的文本。
1524 0
|
人工智能 文字识别 Linux
Tesseract OCR与文本智能识别
Tesseract OCR与文本智能识别
378 0
Tesseract-OCR安装及使用
Tesseract-OCR安装及使用
Tesseract-OCR安装及使用
|
文字识别 计算机视觉 C++
文字识别OCR开源框架的对比--Tesseract vs EasyOCR ​
OCR文字识别在目前有着比较好的应用,也出现了很多的文字识别软件,但软件是面向用户的。对于我们技术人员来说,有时难免需要在计算机视觉任务中加入文字识别,如车牌号识别,票据识别等,因此软件对我们是没用的,我们需要自己实现文字识别。
文字识别OCR开源框架的对比--Tesseract vs EasyOCR  ​
|
XML 文字识别 数据格式
PDF处理、Tesseract-OCR的介绍
PDF处理、Tesseract-OCR的介绍
340 0
|
机器学习/深度学习 分布式计算 大数据
Apache Spark + Intel Analytics Zoo 进行深度学习
Analytics Zoo 是由 Intel 开源,基于 Apache Spark 和 Inte BigDL 的大数据分析和 AI 平台,方便用户开发基于大数据、端到端的深度学习应用。本文简单介绍了如何在阿里云 E-MapReduce 使用 Analytics Zoo 来进行深度学习。
|
文字识别 测试技术 API
[转]Tesseract-OCR (Tesseract的OCR引擎最先由HP实验室于1985年开始研发)
光学字符识别(OCR,Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。OCR技术非常专业,一般多是印刷、打印行业的从业人员使用,可以快速的将纸质资料转换为电子资料。
1465 0
|
自然语言处理 算法
Pyhanlp自然语言处理中的新词识别
本“新词发现”模块基于信息熵和互信息两种算法,可以在无语料的情况下提取一段长文本中的词语,并支持过滤掉系统中已存在的“旧词”,得到新词列表。
1629 0
|
机器学习/深度学习 数据可视化 大数据
NLPIR智能Protege知识图谱实现多场景应用
灵玖软件作为大数据搜索挖掘分析技术领域的领先者,在技术方面不断精进,拥有完整的大数据技术链条,protege的汉化开发并成功实践运用,标志着灵玖软件在知识图谱语义本体建设方面取得重大进展。
3490 0