Crunch是密码一种创建密码字典工具,按照指定的字典规则生成密码字典 ,可以灵活的生成制定自己的字典文件
。使用Crunch工具生成的工具密码可以输出到屏幕
,保存到文件、密码或另一个程序。字典知道密码的生成一部分细节后
,可以针对性的工具生成字典,目前版本3.6 。密码其开源代码地址 : https://github.com/jaalto/external-sf--crunch-wordlist https://github.com/crunchsec/crunch (1)kali默认安装 (2)centos安装 说明 : (1)如果是工具基于32版本编译,需要安装相应的密码组件,否则编译会出错,字典如下图所示。生成 图 编译出错 (2)分别安装相应的库文件 crunch <min-len> <max-len> [<charset string>] [options] crunch 密码最小长度 密码最大长度 [字符集] [命令选项] [命令选项] -b number[type] 指定输出文件的大小
,只有在使用 -o START 时才有效
,例如 :60MB,云计算输出文件将以起始字母-结束字母的格式命名,例如 :./crunch 4 5 -b 20mib -o START 将生成4个文件:aaaa-gvfed.txt, gvfee-ombqy.txt, ombqz-wcydt.txt, wcydu-zzzzz.txt 。类型的有效值为 kb, mb, gb, kib, mib, 和 gib 。前三种类型基于1000 ,而后三种类型基于1024。注意数字和类型之间没有空格。例如 500mb 是正确的 ,而 500 mb 是不正确的
。 -c number 指定写入输出文件的行数,源码下载只有在使用 -o START 时才有效,例如:60 ,输出文件将以起始字母-结束字母的格式命名 ,例如:./crunch 1 1 -f /pentest/password/crunch/charset.lst mixalpha-numeric-all-space -o START -c 60 将生成2个文件 :a-7.txt 和 8-\ .txt
。第二个文件名中的斜杠是因为结束字符是空格,ls 必须转义它才能打印出来 。当指定文件名时 ,确实需要输入 \,因为最后一个字符是空格 。 -d numbersymbol 限制重复字符的数量
。高防服务器-d 2@ 会将小写字母限制为输出类似 aab 和 aac。aaa 不会被生成
,因为这是3个连续的 a 字母 。格式是数字后跟符号,其中数字是最大连续字符数
,符号是你想要限制的字符集的符号,例如 @,%^ -e string 指定 crunch 应该提前停止的时间点
。 -f /path/to/charset.lst charset-name 指定一个来自 charset.lst 的建站模板字符集。 -i 反转输出,所以不是 aaa,aab,aac,aad, 等等
,而是得到aaa,baa,caa,daa,aba,bba, 等等
。 -l 当使用 -t 选项时
,此选项告诉 crunch 哪些符号应被视为字面量。这允许你在模式中将占位符用作字母。-l 选项的长度应该与 -t 选项相同。参见示例15 。 -m 已合并到 -p 中
。请改用 -p。 -o wordlist.txt 指定要写入输出的文件,模板下载例如:wordlist.txt -p charset 或 -p word1 word2 ... 告诉 crunch 生成没有重复字符的单词。默认情况下,crunch 会生成一个字符集中的字符数量的幂次方(#of_chars_in_charset ^ max_length)大小的单词表
。此选项将生成字符集中的字符数量的阶乘(#of_chars_in_charset!)。! 表示阶乘。例如,如果字符集是 abc,最大长度是 4,crunch 默认会生成 3^4 = 81 个单词。此选项将生成 3! = 3x2x1 = 6 个单词(abc, acb, bac, bca, cab, cba)
。这必须是最后一个选项!此选项不能与 -s 一起使用,并且它忽略了最小和最大长度,但你仍然必须指定两个数字
。 -q filename.txt 告诉 crunch 读取 filename.txt 并排列读取的内容 。这类似于 -p 选项
,但它从 filename.txt 获取输入。 -r 告诉 crunch 从中断的地方继续生成单词。-r 仅在使用 -o 时有效。你必须使用与最初生成单词时相同的命令。唯一的例外是 -s 选项。如果你最初的命令使用了 -s 选项,在恢复会话之前你必须移除它。只需在原始命令的末尾添加 -r 即可 。 -s startblock 指定一个起始字符串,例如:03god22fs -t @,%^ 指定一个模式,例如 :@@god@77yM@@@其中只有 @, , %, 和 ^ 会发生变化
。 @ 将插入小写字母 , 将插入大写字母 % 将插入数字 ^ 将插入符号 -u -u 选项禁用打印百分比线程@@@44CC 44CC l)^~,q)ޅ蠆4^֥ yfj"-Ҝs8o8\kngnh44CC8o8\k44CC 877yM44CCo877yM
44CC77yM44CC
wܥzױby^~ٚnmmtwܥy'ȳ{_)XzxҜm{Z('홪v&Jqrrv44CCur"|b^mJqmjXWf)ۢh})uiܥy'ȳ{_)XzxҜm{Z('홪v&Jqrr<<44CCr"|b^mJqmjXWf)ۢh})vuul)^~,q)ޅ蠆4^֥ yfj"-Ҝgn\܅uj 44CC@@@ crunch 1 6 abcdefg\ 字符串末尾有一个空格@@@44CCrr77yM44CC77yM77yM77yM
iy44CCrrqן44CC8r"|b^mJqmjXWf)ۢh})vu!j[-,ZZ鞮'[)iǨݖ+--W{l7ewz(!)ױby^~ٚnmm۲+w!re٢ũiqe77yMݖ+-44CC77yM
))))44CC
yr"|b^mJqmjXWf)ۢh})v|!j[-,ZZ鞮'[)iǨݖ+-mv -s cbdogaaa crunch 将使用 charset.lst 中的 mixalpha-numeric-all-space 字符集生成一个 8 个字符的单词列表
,并将单词列表写入名为 wordlist.txt 的文件
。文件将从 cbdogaaa 开始 ,以 " dog " 结束。 crunch 2 3 -f charset.lst ualpha -s BB crunch 将从 BB 开始生成单词列表,以 ZZZ 结束 。这在你需要中途停止生成单词列表时很有用 。只需执行 `tail wordlist.txt` 并将 -s 参数设置为序列中的下一个单词
。开始前确保重命名原始单词列表,因为 crunch 会覆盖现有的单词列表
。 crunch 4 5 -p abc crunch 将生成 abc, acb, bac, bca, cab, cba。 crunch 4 5 -p dog cat bird crunch 将生成 birdcatdog, birddogcat, catbirddog, catdogbird, dogbirdcat, dogcatbird
。 crunch 1 5 -o START -c 6000 -z bzip2 crunch 将生成每个包含 6000 个单词的 bzip2 压缩文件 。压缩文件的文件名将是 first_word-last_word.txt.bz2 。 crunch 4 5 -b 20mib -o START 将生成 4 个文件:aaaa-gvfed.txt, gvfee-ombqy.txt, ombqz-wcydt.txt, wcydu-zzzzz.txt。前三个文件是 20MB(实际为 2 的幂次兆字节),最后一个文件是 11MB。 crunch 3 3 abc + 123 !@# -t @%^ 将生成一个 3 个字符长的单词,第一个字符是一个字母 ,第二个字符是一个数字 ,第三个字符是一个符号 。你指定想要使用的字符的顺序很重要 。你必须按小写字母、大写字母
、数字和符号的顺序指定。如果你不打算使用特定的字符集,你可以使用加号作为占位符
。如上所示,我未使用大写字母集,因此我使用了加号占位符
。这将从 a1! 开始
,以 c3# 结束。 crunch 3 3 abc + 123 !@# -t ^%@ 将生成从 !1a 开始到 #3c 结束的 3 个字符的单词
。 crunch 4 4 + + 123 + -t %%@^ 加号 (+) 是一个占位符 ,因此你可以为字符类型指定字符集。当 crunch 在命令行中遇到加号时,它将使用默认的字符集。你必须为每个字符类型指定值或使用加号。所以在这个例子中
,字符集将是: abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 123 !@#$%^&*()-_+=~`[]{ }|\:;"<>,.?/ 字符串末尾有一个空格 输出将从 11a! 开始
,以 "33z " 结束。引号显示了字符串末尾的空格
。 crunch 5 5 -t ddd@@ -o j -p dog cat bird 任何除了 @,%^ 之外的字符都是用于排列的单词的占位符。@,%^ 符号具有与 -t 相同的功能 。 如果你想在输出中使用 @,%^,你可以使用 -l 选项来指定你希望 crunch 将哪个字符视为字面量。 所以结果是 birdcatdogaa birdcatdogab birdcatdogac <省略> dogcatbirdzy dogcatbirdzz crunch 7 7 -t p@ss,%^ -l a@aaaaa crunch 将把 @ 符号视为字面量字符,而不是用大写字母替换它 。 这将生成 p@ssA0! p@ssA0@ p@ssA0# p@ssA0$ <省略> p@ssZ9 crunch 5 5 -s @4#S2 -t @%^,2 -e @8 Q2 -l @dddd -b 10KB -o START crunch 将生成从 @4#S2 开始到 @8 Q2 结束的 5 个字符的字符串。输出将被分割成 10KB 大小的文件,文件名基于文件的起始和结束字符串。 crunch 5 5 -d 2@ -t
l)^~,q)ޅ蠆4^֥ yfj"-Ҝgn\܅Ly44CCi44CC|l)^~,q)ޅ蠆4^֥ yfj"-Ҝgn\܇]5^%%%%^^ -d 2@ -d 3% -b 20mb -o START crunch 将生成从 aab!0001!! 开始到 zzy 9998 结束的 10 个字符的字符串。输出将写入 20MB 的文件中 。 crunch 8 8 -d 2@ crunch 将生成限制相同数量的小写字母为 2 个的 8 个字符 。Crunch 将从 aabaabaa 开始,以 zzyzzyzz 结束
。 crunch 4 4 -f unicode_test.lst japanese -t @@%% -l @xdd crunch 将从 unicode_test 字符集文件中加载一些日文字符
。输出将从 @日00 开始,以 @語99 结束。 (1)生成长度为 4 到 6 的所有小写字母组合。 crunch 4 6 abcdefghijklmnopqrstuvwxyz -o dict.txt 或者 crunch 4 6 -f /usr/share/crunch/charset.lst lalpha -o dict2.txt 执行完毕后会显示字典大小为2132MB,一共有321254128个密码,接着会显示生成的进度条
,如图2所示。 图2 生成6位小写字母组合 (2)生成长度为 4 到 6 的密码
,使用小写字母和数字 crunch 4 6 -f /usr/share/crunch/charset.lst lalpha-numeric (3)生成长度为 4 到 6 的密码,使用所有字符(包括符号) crunch 4 6 -f /usr/share/crunch/charset.lst all (1)生成包含特定字符的密码 生成长度为 4 到 6 的密码,包含特定字符 "abc123" crunch 4 6 abc123 (2)某个字符的所以组合 crunch 4 6 -p admin # 生成abc的组合的字典 (3)生成包含特定字符组合的密码 生成长度为 4 到 6 的密码
,包含特定字符组合 "abc123" 和 "def456" crunch 4 6 -p abc123 def456 (1)crunch 1 3 -f /usr/share/crunch/wordlists/english.txt -o /dev/null 1 3 指定最小和最大长度 。 -f 指定使用的字典文件(根据您的需求选择)。 -o /dev/null 表示不实际输出文件
。 (2)crunch 1 3 -o /dev/null -s (3)计算包含#字符+大小写字母+数字八位字符的字典大小 网上一堆人声称该工具非常好用
,确实好用,需要自定义规则
,在以前估计算一个不错的工具
,但国人比较聪明,实用
,操作简单
。后续会继续对一些密码工具进行实际使用和测试。喜欢的朋友可以收藏。
1.1简介
1.Crunch简介
1.2安装及使用
1.安装


1.4比较有用的示例
1.生成简单字典

