密码破解基本有三种方法:第一种是人工猜解(垃圾桶工程和被动信息收集);

第二种是基于字典暴力破解(主流)

在kali里,是默认自带了字典的,分别放在下面三个文件中:/usr/share/wordlist

/usr/share/wfuzz/wordlist

/usr/share/seclists,有一个password

第三种是键盘空间字符爆破

全键盘空间字符

部分键盘空间字符(基于规则)

数字,小写字母,大写字母,符号,空格,瑞典字符,高位ASCII码.

在kali中我们用crunch来制作密码(注意生成字典的大小,小心撑爆磁盘! 以单纯的8位大小写英文+数组组合,生成的txt大概是1787 TB
):

可以通过图形界面进入crunch目录下面或者直接cd到/pentest/passwords/crunch,然后再执行制作字典操作。
进入crunch的安装目录下面可以看到里面有一个charset.lst文件,里面定义了一些名词 用于简写用于制作字典的字符
如:numeric 表示0123456789 Lalpha表示26位小写字母 Ualpha表示26为大写字母
所以可以在制作字典之前看一下该文件,这样可以简写命令
用法:
./crunch 6 6  0123456789 –o num6.dic//制作6位纯数字字典
其中第一个6表示minnum密码最小长度,第二个6密码最大长度,如果两者一样表示指定长度
-o表示输出。
  ./crunch 8 8 charset.lst numeric –o num8.dic  //制作8位纯数字字典 表示引用charset.lst中的名词简写,其中numeric表示0123456789
./crunch 1 6 charset.lst ualpha –o test.dic     //制作1~6位纯大写字母字典  

具体案例:

crunch 1 8

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

案例2:

crunch 1 6 abcdefg

#生成 最小为1,最大为6.由abcdefg为元素的所有组合

案例3:

crunch 1 6 abcdefg\

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

案例4:

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 查看所有密码库

案例5:

crunch 8 8 -f charset.lst mixalpha-numeric-all-space -o wordlist.txt -t @@dog @@@ -s cbdogaaa

#调用密码库 charset.lst,生成8位密码;其中元素为 密码库 charset.lst中 mixalpha-numeric-all-space的项;格式为“两个小写字母+dog+三个小写字母”,并以cbdogaaa开始枚举(@代表小写字母)

案例6:

crunch 2 3 -f charset.lst ualpha -s BB

#调用密码库charset.lst,生成2位和3位密码;其中元素为密码库charset.lst中ualpha的项;并且以BB开头

案例7:

crunch 4 5 -p abc

#crunch将会生成abc, acb, bac, bca, cab, cba,虽然数字4和5这里没用,但必须有

案例8:

crunch 4 5 -p dog cat bird

#crunch将生成以“dog”“cat”“bird”为元素的所有密码组合:birdcatdog,birddogcat,catbirddog,   catdogbird,  dogbirdcat, dogcatbird

案例9:

crunch 1 5 -o START -c 6000 -z bzip2

# 生成最小为1位,最大为5位元素为所有小写字母的密码字典,其中每一个字典文件包含6000个密码,并将密码文件保存为bz2文件,文件名将以  "第一个密码" + " - " + "最后一个密码" + " .txt.bz2 " 保存(比如000-999.txt.bz2);下面是生成几种格式的压缩文件所用的时间和体积大小对比:

# time ./crunch 1 4 -o START -c 6000 -z gzip

real    0m2.729s

user    0m2.216s

sys     0m0.360s

# time ./crunch 1 4 -o START -c 6000 -z bzip2

real    0m3.414s

user    0m2.620s

sys     0m0.580s

# time ./crunch 1 4 -o START -c 6000 -z lzma

real    0m43.060s

user    0m9.965s

sys     0m32.634s

size  filename

30K   aaaa-aiwt.txt

12K   aaaa-aiwt.txt.gz

3.8K  aaaa-aiwt.txt.bz2

1.1K  aaaa-aiwt.txt.lzma

案例10:

crunch 4 5 -b 20mib -o START

# 生成最小为4位,最大为5位元素为所有小写字母的密码字典,并以20M进行分割;这时会生成4个文件:aaaa-gvfed.txt,  gvfee-ombqy.txt,  ombqz-wcydt.txt, wcydu-zzzzz.txt:其中前三个大概每个20M,最后一个10M左右(因为总共70M)

案例11:

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

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

案例12:

crunch 3 3 abc + 123 @#! -t @%^

#生成3位密码,其中第一位由“a,b,c”中的一个;第二位为“1,2,3”中的一个;第三位为“!,@,#”中的一个。比如1a!   2a#      3b@   ......

案例13:

crunch 3 3 abc + 123 @#! -t ^%@

#生成3位密码,其中格式为“字符+数字+字母”,这里字符范围为!@# ,数字范围为 1 2 3 , 字母范围为a b c

比如!1c    @3b       @2a       ......

案例14

crunch 5 5 -t ddd@@  -p dog cat bird

#生成5个元素组成的密码,其中前三个为 dog cat bird任意组合,后两个为两个小写字母的任意组合。比如birddogcatuz         catdogbirdab         birdcatdogff           ......

案例15:

crunch 7 7 -t p@ss,%^ -l a@aaaaa

#生成7位密码,格式为“字符p@ss”+大写字母+数字+符号     比如  p@ssZ9>  ......

案例16:

crunch 5 5 -s @4#S2 -t @%^,% -e @8 Q2 -l @dddd -b 10KB -o START

#生成5位密码,格式为小写字母+数字+符号+大写字母+数字,并以 @4#S2开始,分割为10k大小。。。

案例17:

crunch 5 5 -d 2@ -t @@@%%

#生成5位密码,格式为三个字母+两个数字,并限制每个密码最少出现2种字母

案例18:

crunch 10 10 -t @@@^%%%%^^ -d 2@ -d 3% -b 20mb -o START

#生成10位密码,格式为三个小写字母+一个符号+四个数字+两个符号,限制每个密码至少2种字母和至少3种数字

案例19:

crunch 8 8 -d 2@

#生成8位密码,每个密码至少出现两种字母

案例20:

crunch 4 4 -f unicode_test.lst the-greeks -t @@%% -l @xdd

#调用密码库 unicode_test.lst中的 the-greeks项目字符,生成4位密码,其中格式为两小写字母+两数字,同样kali_linux中 unicode_test.lst 在/usr/share/crunch目录

案例21:
字符集 crunch 4 4 -f /usr/share/crunch/charset.lst lalpha-sv -o 1.txt
案例22:
无重复字符:
crunch 1 1 -p 1234567890 | more   (10位数字颠倒位置,1 1 无效但必须存在)
必须是最后一个参数;
案例23
crunch 5 5 abc DEF + \!@# -t ,@^%,     (特殊符号只从!@#这三个选择,加右斜线可以\\)
案例24
crunch 5 5 -d 2@ -t @@@%%

看了这么多案例再来看命令参数是不是有种豁然开朗的感觉!

命令参数:

-b              #按大小分割字典文件,比如后跟20mib

-c              #密码个数(行数),比如8000

-d              #限制出现相同元素的个数(至少出现元素个数),-d 3就不会出现zzfffffgggg之类的

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

-f               #调用密码库文件,比如/usr/share/crunch/charset.lst

-i                #改变输出格式

-l                #与-t搭配使用

-m              #与-p搭配使用

-o               #保存为

-p               #定义密码元素(最大最小长度失效,所有组合尝试一遍,字符串加空格以字符串为单位)

-q               #读取字典(指定文本文件,最大最小长度失效,每行之间相互排序)

-r                #定义从某一个地方重新开始

-s                #第一个密码,从xxx开始

-t                #定义输出格式

@代表小写字母 lalpha

,代表大写字母    ualpha

%代表数字  numeric

^代表符号  symbols
         + 占位符
          \ 转义符(空格,负号)

-z                   #打包压缩,格式支持 gzip, bzip2, lzma, 7z(压缩率最大)

组合应用(不用把庞大的字典保存在硬盘上,生成一个密码用一个,不过消耗的时间多,比较占用cpu)

crunch 2 4 0123456789 | aircrack -ng a,cap -e MyESSID -w -

crunch 10 1012345 --stodout | airolib -ng testdlb -import passwd -    (最后面的-表示引用crunch生成的密码)

crunch字典生成的更多相关文章

  1. linux字典生成工具crunch

    安装 tar zxvf crunch-3.6.tgz cd crunch-3.6 gcc -Wall -lm -pthread -std=c99 -m64 -D_LARGEFILE_SOURCE -D ...

  2. linux下字典生成工具-crunch与rtgen

    所谓的密码字典主要是配合密码破解软件所使用,密码字典里包括许多人们习惯性设置的密码.这样可以提高密码破解软件的密码破解成功率和命中率,缩短密码破解的时间.当然,如果一个人密码设置没有规律或很复杂,未包 ...

  3. 密码字典生成工具crunch的简单使用

      案例1: crunch 1 8 #生成最小1位,最大8位,由26个小写字母为元素的所有组合   案例2: crunch 1 6 abcdefg #生成最小为1,最大为6.由abcdefg为元素的所 ...

  4. PJzhang:crunch,一个很好的字典生成工具

    猫宁!!! 之前收集子域名的时候使用过子域名挖掘机这个windows软件,查看了它所使用的字典,基本上是小写字母数字1-4位的一个合集.   36+36*36+36*36*36+36*36*36*36 ...

  5. linux下用crunch工具生成密码

    crunch是一款linux下的压缩后仅仅38k的小程序,crunch程序在2004年及以前由email为的作者编写mimayin@aciiid.ath.cx,后续版本由bofh28@gmail.co ...

  6. SQL Server2005+、MySQL、Oracle 数据库字典生成工具

    之前找的数据库字典生成工具基本上都依赖于 Office Com 组件,在不安装 Office的情况下无法使用.怒,于是自己用C# 写了一个.     特征如下:         一.支持的数据库 MS ...

  7. [FUZZ]文件上传fuzz字典生成脚本—使用方法

    文件上传fuzz字典生成脚本-使用方法 原作者:c0ny1 项目地址:https://github.com/c0ny1/upload-fuzz-dic-builder 项目预览效果图: 帮助手册: 脚 ...

  8. 文件上传漏洞fuzz字典生成脚本小工具分享

    前言 学习xss的时候翻阅资料发现了一个文件上传漏洞fuzz字典生成脚本小工具,试了试还不错,分享一下 配置 需要python2环境 工具地址:https://github.com/c0ny1/upl ...

  9. HttpRunner3源码阅读:4. loader项目路径加载,用例文件转换、方法字典生成

    loader.py 这个文件中主要是对yaml,json用例加载转换成用例处理, 预置函数加载成方法字典,路径加载等 可用资料 [importlib]. https://docs.python.org ...

随机推荐

  1. 互评Beta版本

    作业要求[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2448] 基于NABCD评论作品,及改进建议 1.杨老师粉丝群.作品:<P ...

  2. mysql_query — 发送一条 MySQL 查询

    仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回 一个资源标识符,如果查询执行不正确则返回 FALSE.对于 其它类型的 SQL 语句,在执行成功时返回 TRUE,出错时返 ...

  3. 开源项目ScriptGate,Delphi与JavaScript相互调用的神器

    ScriptGate是一个实现TWebBrowser上的JavaScript和Delphi代码相互调用的库,具体在这里:https://bitbucket.org/freeonterminate/sc ...

  4. Vue.js更改调试地址端口号

    Vue项目一般使用自带的脚手架工具vue-cli和webpack打包方式进行项目构建运行.开发中,我们在控制台输入命令行npm run dev部署项目后,默认开启的页面调试地址是8080端口.但是有时 ...

  5. HDU 1591 Encoded Love-letter(简单字符串)

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...

  6. Remastersys---制作当前的ubuntu系统镜像iso,自定义ubuntu系统

    Remastersys---制作当前的ubuntu系统镜像iso,自定义ubuntu系统 Remastersys则款软件,我们就是使用他来将当前的系统制作成iso镜像,一方面可以用来备份系统,二来可以 ...

  7. TreeMap源码学习

    这是看过的第一个jdk源码(从立下目标以来):TreeMap.说实话断断续续的看了有好几天了,我觉得我犯了一个错误,就像一开始说的那样,我打算完完全全看懂TreeMap关于红黑树的实现方式,后来我想了 ...

  8. Oracle text组件安装

    1.目标:在数据库中,安装Oracle Text组件: 970473.1 MOS文档ID     2.组件相关视图:查询验证 #查询DB中的组件: #视图:USER_REGISTRY (注册) COM ...

  9. 猎豹免费WiFi-随身WiFi共享热点,永久免费的无线路由器 - imsoft.cnblogs

  10. 初次实践数据库--SQL Server2016

    初学数据库使用 安装了SQL Server2016的开发者版本,本来以为就可以愉快地开始数据库的挖坑了,发现开出来之后除了创建数据库.选择数据库以外,并没有什么操作. 后来才发现还需要再安装SSMS( ...