密码字典生成工具:crunch

这篇具有很好参考价值的文章主要介绍了密码字典生成工具:crunch。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        现在网络安全的设备层出不穷,各种网络安全设备不管是对于内网还是对于外网的防护达到了细致入微。社会工程学作为渗透中非常重要的一环,有着非常大的威力,社会工程学最重要的就是密码的暴力破解,暴力破解最重要的就是密码字典。字典的质量直接影响到最终的暴力破解速度,对整个渗透工作起着十分重要的作用。

        这里就来介绍一款按照指定规律生成具有针对性字典的工具——crunch

crunch简介

        crunch是一种创建密码字典工具,按照指定的规则生成密码字典,可以灵活地制定自己的字典文件。使用crunch工具生成的密码可以输出到屏幕,保存到文件、或另一个程序。

crunch安装

        现在的kali系统是默认自带crunch的。如果你使用其他系统,可以通过从github的这个地址下载源码:

https://github.com/crunchsec/crunch

crunch参数

        一般拿到这种命令行的工具,都会用参数-h看以下帮助说明:

密码字典,安全,测试工具,安全性测试
crunch -h

         可以看到基本的使用语法:

# min:设定最小字符长度
# max:设定最大字符长度
crunch <min> <max> [options]

        如果要看完整的说明文档,要用man命令:

密码字典,安全,测试工具,安全性测试
man crunch

         最简单的使用就是生成一串固定英文字符跟一串固定数字:

密码字典,安全,测试工具,安全性测试
crunch 14 14 -t zhangsan%%%%%% -o aa.txt

         其中-t参数用于指定输出完整字符串的格式,后面跟的一些固定的字符和有特殊意义的字符,其中有特殊意义的字符对应具体用处如下:

@ 代表小写字母
, 代表大写字母
% 代表数字
^ 代表特殊字符

        除了这些有特殊意义的字符,还可以直接指定要使用的字符,比如这样:

密码字典,安全,测试工具,安全性测试
crunch 1 2 abc

         在设定长度后直接跟一个字符串,输出的字典中的字符串都会用命令中传入的字符进行构造。

        -o参数用于指定将生成的字符串存入到特定的文档。可以直接传文件名,表示输出文件的名称。也可以跟一些参数,让工具自动生成文件名,比如:

密码字典,安全,测试工具,安全性测试
crunch 1 2 abc -o START

         遇到字典特别大,需要限制每个字典文件大小的时候,可以使用-b参数:

密码字典,安全,测试工具,安全性测试
crunch 14 14 -t zhangsan%%%%%% -o START -b 5mb

         除了指定输出字典文件大小外,也可以指定文件中字符串的个数(行数),使用-c参数:

密码字典,安全,测试工具,安全性测试
crunch 14 14 -t zhangsan%%%%%% -o START -c 400000

         当确认字典中的字符串不存在两个连续字符连续的时候(例如是5位的两个中文拼音,中文拼音不会存在两个相同的拼音字符),可以使用-d参数,表示限制相同字符出现的次数,如果传1就表示不会出现连续两个相同的字符:

密码字典,安全,测试工具,安全性测试
crunch 5 5 -t @@@@@ -o START -d 1

         kali提供了一些常用的字符集用于制作字典,字符集文件:

密码字典,安全,测试工具,安全性测试
cat /usr/share/crunch/charset.lst

         crunch可以通过-f参数使用这个字符集:

密码字典,安全,测试工具,安全性测试
crunch 5 5 -t @@@@@ -o START -d 1 -f /usr/share/crunch/charset.lst hex-lower

         -f参数后不仅要传字符集文件,还要传文件中具体的字符集名称。

        当你已经知道目标字符串的组成内容,但是不知道排列顺序时,可以使用-p参数,它的作用是通过指定的字符串,输出所有可能的组合方式:

密码字典,安全,测试工具,安全性测试
crunch 8 8 -p 12345@cy > aa.txt

         需要注意两点,当使用-p参数的时候,入参中的最小、最大字符长度其实是不会生效的,但是必须传;另一个需要注意的是,-p参数必须放在命令行的最后。

        -p参数还有种用法,将特定字符串作为也给整体进行组合:

密码字典,安全,测试工具,安全性测试
crunch 1 1 -p zhang san 123 > aa.txt

         crunch的组合规律其实是能猜测出来的,当你觉得crunch输出的字典在某一个字符串前面的内容是有问题的,不想让这些有问题的字符串出现在字典中,可以使用-s参数,比如这样:

密码字典,安全,测试工具,安全性测试
crunch 8 8 12345@cy -s 1212121c -o aa.txt

         -s参数和-p参数两者是互斥的,虽然同时使用也不会报错,但是-s参数的功能会失效。

        当目标字符串其中的几个字符串是有特殊意义的,肯定是组合在一起使用的,可以使用-q参数,读取一个文件,里面的每一行都会作为一个整体进行组合,例如这样:

密码字典,安全,测试工具,安全性测试
crunch 1 1 -q pass.txt > aa.txt

         如果按照设定的规律生成的字典文件非常大,除了前面的-b参数,将一个字典文件拆分成多个文件,还可以使用-z参数,将字典文件压缩,支持对压缩方式有以下几种:

  • gzip
  • bzip2
  • lzma
  • 7z

        其中7z的压缩比例是最大的。

密码字典,安全,测试工具,安全性测试
crunch 1 1 -q pass.txt -o aa.txt -z 7z

         最后再罗列一些各个参数:

-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

总结

        其实可以生成字典的工具很多,就连python都可以自己手写脚本来生成字典。但是kali中有预装的工具,为什么不用呢,而且crunch的使用也的确非常方便。

        crunch的使用过程中除了几个互斥的参数,其他参数都是可以组合使用的。根据收集到的信息,制定合理的字典生成规则,最终得到的字典文件能够帮助我们更快、更高效地达成目的。文章来源地址https://www.toymoban.com/news/detail-820469.html

到了这里,关于密码字典生成工具:crunch的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MATLAB/ SIMULINK模型在环MIL测试工具,自动化模型测试工具,自动生成测试报告

    MATLAB/ SIMULINK模型在环MIL测试工具,自动化模型测试工具,自动生成测试报告。 软件纯自己编写,经过长时间测试,包教会。 使用简单,可以参考如下截图。 ID:972000 677200256038 悦潮风尚

    2024年02月16日
    浏览(41)
  • 开源安全测试工具 | 网络安全工具列表

    • AttackSurfaceMapper (https://github.com/superhedgy/AttackSurfaceMapper) - 自动化渗透测试工具, 使用手册/测试流程 (https://www.uedbox.com/post/59110/)。 • vajra (https://github.com/r3curs1v3-pr0xy/vajra) - 自动化渗透测试. • Savior (https://github.com/Mustard404/Savior) - 渗透测试报告自动生成工具!. • OneForAll (h

    2024年02月03日
    浏览(40)
  • 安全测试13款免费的测试工具!

    目录 前言: 1. Excercise in a Box 2. Needle 3. DevSlop 4. 移动安全框架(Mobile Security Framework) 5. Frida 6. Nishang 7. Tamper 8. InSpec

    2024年02月13日
    浏览(29)
  • 接口测试用例生成工具介绍及应用

    目前,接口测试是开展项目测试实施过程中非常重要的环节,对于新增接口和修改接口更是需要做到应测必测,但是在实施过程中普遍存在一些问题,经分析总结如下: 1.耗时长: 接口测试整体流程较长,对每个字段都需要进行各种校验,且人工进行基础性字段验证的过程极

    2023年04月11日
    浏览(53)
  • 单元测试自动生成工具Evosuite的安装使用

    1.1介绍 官网: https://www.evosuite.org/ GitHub: https://github.com/EvoSuite 1.2安装插件 (1)直接安装 进入settigs中,点击plugins,搜索Evosuite,点击安装 (2)从官网下载安装 打开网页 https://plugins.jetbrains.com/plugin/18956-evosuite-xenoamess-tpm-/versions ,点击Download按钮下载插件。 选择菜单File

    2024年02月03日
    浏览(39)
  • copilot 产生 python工具函数并生成单元测试

    stock.py 这个文件,我只写了注释(的开头),大部分注释内容和函数都是copilot 再新建一个 stock_test.py,写一行注释,Ctrl+L(或者调用 Open compiletion Panel)产生了很多的单元测试样例。 再装一个 Python Test Explorer 插件用来进行 GUI test 附上我的 python test gui 配置 .vscode/settings.jon 有了

    2024年02月04日
    浏览(33)
  • 有了这几个软件安全测试工具,编写安全测试报告再也不愁

    软件的安全是开发人员、测试人员、企业以及用户共同关心的话题,尤其是软件产品的使用者,因为系统中承载着用户的个人信息、人际互动、管理权限等各类隐私海量关键数据。软件安全测试工作不仅是为了用户,更牵扯到许多的利益共同体。因此软件安全测试必不可少,

    2024年02月03日
    浏览(34)
  • Idea coverage覆盖率测试工具,设置Coverge的Branch,以及生成测试报告遇到的问题

    1、打开Run/Debug Configurations 2、选中该工程的项目() 3、选择以coverge runner结尾的选项,不同版本可能不同 第一种版本: 第二种版本 4、设置branch 可以看到Code Coverge出现了。 选择JaCoCo 5、选择Use tracing 可以看到生成Branch选项了。 1、选择导出 2、选项(根据需要设置) 注意点 :Re

    2024年02月05日
    浏览(35)
  • 运行 Jmeter 文件生成 HTML 测试报告,我选择 ANT 工具

    概述 ant 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于 Java 环境中的软件开发。 在与 Jmeter 生成的 jmx 文件配合使用中,ant 会完成jmx计划的执行和生成jtl文件,并将jtl文件转化为html页面进行查看。 还可与 Jenkins 配合使用。 优点:跨平台

    2024年02月14日
    浏览(36)
  • Goby安全测试工具和Goby联动

    Goby是一款新的网络安全测试工具,由赵武Zwell(Pangolin、JSky、FOFA作者)打造,它能够针对一个目标企业梳理最全的攻击面信息,同时能进行高效、实战化漏洞扫描,并快速的从一个验证入口点,切换到横向。我们希望能够输出更具生命力的工具,能够对标黑客的实际能力,帮

    2024年02月13日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包