Crunch

1. 简介

  Crunch可以根据用户指定的输入生成字典列表,并且可以输出到终端、文件中或项目中。

2. 命令格式

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

  <min-len> <max-len>最小和最大字符串的长度,即使不使用该项参数的值,也需要填写。

  [<charset string>]用户可以指定crunch要在命令行上使用的字符集,如果留空,crunch将使用默认字符集。指定字符集的顺序必须是小写字符、大写字符、数字、符号。如果你不遵循这个顺序,你将得不到你想要的结果。必须为字符类型或加号指定值。

  如果要在字符集中包含空格字符,则必须使用\字符对其进行转义,或将字符集括在引号中,即"abc "

  如果有"+"指定,则后续格式中出现的类型从其中取值。

  [options]用户可选选项,下文详细介绍

3. options可选参数

3.1 -b number[type]

  指定输出文件的大小,只有当-o选项被使用时才会生效。数字和自度之间没有空格,50MB时正确的,50 MB是错误的

  例如:-b 60MB

3.2 -c number

  指定要写入到输出文件中的行数,只有当-o选项被使用时才会生效。

3.3 -d numbersymbol

  限制相同字符出现的次数。-d 2@选项只会生成aabaac这样的字符串,而不会出现aaa的字符串。

3.4 -e string

  指定字符串用来提前停止wordlist的生成。遇到该字符串后就停止生成。

3.5 -f /path/to/charset.lst charset-name

  调用库文件。

3.6 -i

  反转输出,这样就可以得到aaa、baa、caa、daa、aba、bba等,而不是aaa、aab、aac、aad等。

3.7 -t @,%^

  指定输出格式。@大写字母,小写字母%数字^特殊符号。

3.8 -l

  当您使用-t选项时,这个选项告诉crunch哪些符号应该被视为文字。这将允许您将占位符用作模式中的字母。-l选项的长度应该与-t选项的长度相同。

3.9 -m

  与-p融合,使用-p

3.10 -o wordlist.txt(/root/wordlist.txt)

  指定输出文件,例如wordlist.txt。前提是该文件存在。

3.11 -p charset OR word1 word2 ...

  -p选项会告诉crunch不要生成重复的字符。

  在-p选项后为字符集时,例如crunch 3 3 -p abc命令将abc作为字符集,但是生成的结果为abc、acb、bac、bca、cab、cba六种结果,即不会出现重复的字符。

  在-p选项后为word1、word2形式的字符串时,就代表了将整个字符串视为1个字符,例如crunch 3 3 -p abc def命令产生的结果为abcdef、defabc两种情况。

  -p选项必须放在整个命令中的最后一个选项。如果出现crunch 3 3 -p abc -o wordlist.txt命令,会将-o``wordlist.txt当成字符串进行处理,这就是为什么要将-p放在最后一个选项。

  -P选项不能与-s选项一起使用。

  -p选项会忽略min和max的限制(但是你还是需要设置)。

3.12 -q filename.txt

  读取filename.txt中的内容并且进行替换,与-p一样,只不过是从文件中读取内容。

3.13 -s startblock

  指定一个开始的字符,即从自己定义的密码abcd开始。

3.14 -r

  该选项会从暂停的地方继续开始生成字典。

  该选项仅在使用-o命令的时候有用。

  在终端字典生成前后所采用的命令需要完全一样。

  唯一例外的是-s选项,当命令中包含-s选项时,你必须把-s选项删除在你恢复生成字典之前。

3.15 -u

  禁止打印百分比。

  必须为最后一个选项,但是还是不能放在-p选项之后,还是会被当做字符串处理,如下图所示。

  

3.16 -z

  压缩生成的字典文件,支持gzip,bzip2,lzma,7z。

Crunch的更多相关文章

  1. Android ant自动打包 crunch 报错

    解决办法: 修改SDK_HOME/tool/ant/build.xml. <property name="aapt.ignore.assets" value="&l ...

  2. use crunch compression

    Crunch is a lossy compression format on top of DXTR texture compression. Textures will be converted ...

  3. crunch字典生成

    密码破解基本有三种方法:第一种是人工猜解(垃圾桶工程和被动信息收集): 第二种是基于字典暴力破解(主流) 在kali里,是默认自带了字典的,分别放在下面三个文件中:/usr/share/wordlis ...

  4. 【厚积薄发】Crunch压缩图片的AssetBundle打包

    这是第133篇UWA技术知识分享的推送.今天我们继续为大家精选了若干和开发.优化相关的问题,建议阅读时间10分钟,认真读完必有收获. UWA 问答社区:answer.uwa4d.com UWA QQ群 ...

  5. 【我的Android进阶之旅】Android目录过长造成错误:Failed to crunch file abc_textfield_search_activated_mtrl_alpha.9.png

    一.编译异常描述 一大早来开发一个新的需求,拉取了一个新的分支,然后导入Android Studio之后,编译就报错了,报错如下所示: 错误具体日志如下所示: Information:Gradle t ...

  6. linux字典生成工具crunch

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

  7. 如何解决 “invalid resource directory name”, resource “crunch”

    Ant and the ADT Plugin for Eclipse are packing the .apk file in a different build chain and temp gen ...

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

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

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

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

  10. Failed to crunch file

    Failed to crunch file 编译时,出现以上错误,经过多次排除验证,原因尽然是因为路径字符太长了... 编译路径不能超过240个字符

随机推荐

  1. Spring Cloud 2020.0.0 正式发布,全新颠覆性版本!

    Spring Cloud 2020.0.0 没错,Spring Cloud 2020.0.0 正式发布了: 感谢Java技术栈群友通知,想入群的在公众号Java技术栈后台回复:wx,正在使用 Spri ...

  2. Android基础工具移植说明

    早前开展的计划因各种杂事而泡汤,而当遇到了具体任务后,在压力下花了两个多周的业余时间把这件事完成了. 这就是我的引以为傲的Mercury-Project,它的核心目标是移植一些Android底层轮子到 ...

  3. C语言I博客作业1

    1 .班级链接: https://edu.cnblogs.com/campus/zswxy/SE2020-3 2 .作业要求链接: https://edu.cnblogs.com/campus/zsw ...

  4. 本地显示Linux服务器的GUI程序

    如果我们UI自动化脚本跑在 Linux 服务器环境上,这个时候我们是看不到界面的,如果不使用浏览器的无头模式,这个时候我们的程序就跑不起来了,如何在服务器环境不使用浏览器的无头模式下进行UI测试呢,我 ...

  5. Hadoop3.2.0+Centos7三节点完全分布式安装配置

    一.环境准备 ①准备三台虚拟机,配置静态IP ②先修改主机名(每个节点统一命名规范) vim /etc/hostname master #重启生效 配置DNS每个节点 vim /etc/hosts 1 ...

  6. java开发手册之哨兵语句

    if(条件判断1){ return; } if(条件判断2){ return; } //do  another things 注意事项:一定要避免多个if else 判断 带来逻辑混乱 可读性变差

  7. js--数组的every()和some()方法检测数组是否满足条件的使用介绍

    前言 阅读本文之前先来思考一个问题,如何如实现判断一个数组中是否存在满足条件的元素,如何去判断数组中是否全部元素都满足判断条件,这里可能能想到使用for循环遍历数组,if()判断每一项是否符合条件,同 ...

  8. react项目中实现搜索关键字呈现高亮状态(一)

    最近有个需求,在一个react项目中,实现搜索关键字呈现高亮状态.这个在普通的html文件中还好操作些,在react项目中有点懵逼了,因为react项目中很少操作dom,有点无从下手.但最后还是实现了 ...

  9. 自定义注解,更优雅的使用MP分页功能

    分页功能使用 MP的分页功能是通过MyBatis的插件实现的,使用起来也非常简单.下面先介绍下使用方式. step1:配置分页插件 @Configuration @EnableTransactionM ...

  10. PostgreSQL WAL日志详解

    wal日志即write ahead log预写式日志,简称wal日志.wal日志可以说是PostgreSQL中十分重要的部分,相当于oracle中的redo日志. 当数据库中数据发生变更时:chang ...