Hashcat命令详解-常用 -a 指定要使用的破解模式,其值参考后面对参数。“-a 0”字典攻击,“-a 1” 组合攻击;“-a 3”掩码攻击。 -m 指定要破解的hash类型,如果不指定类型,则默认是MD5 -o 指定破解成功后的hash及所对应的明文密码的存放位置,可以用它把破解成功的hash写到指定的文件中 --force 忽略破解过程中的警告信息,跑单条hash可能需要加上此选项 --show 显示已经破解的hash及该hash所对应的明文 --increment 启用增量破解模式,你可以利用此模式让hashcat在指定的密码长度范围内执行破解过程 --increment-min 密码最小长度,后面直接等于一个整数即可,配置increment模式一起使用 --increment-max 密码最大长度,同上 --outfile-format 指定破解结果的输出格式id,默认是3 --username 忽略hash文件中的指定的用户名,在破解linux系统用户密码hash可
最编程
2024-02-05 19:57:08
...
(1)普通
-m, —hash-type=NUM 哈希类别,其NUM值参考其帮助信息下面的哈希类别值,其值为数字。如果不指定m值则默认指md5,例如-m 1800是sha512 Linux加密。
-a, --attack-mode=NUM 攻击模式,其值参考后面对参数。“-a 0”字典攻击,“-a 1” 组合攻击;“-a 3”掩码攻击。
-V, —version 版本信息
-h, --help 帮助信息。
--quiet 安静的模式, 抑制输出
(2)基准测试
-b, --benchmark 测试计算机破解速度和显示硬件相关信息
(3)杂项
--hex-salt salt值是用十六进制给出的
--hex-charset 设定字符集是十六进制给出
--runtime=NUM 运行数秒(NUM值)后的中止会话
--status 启用状态屏幕的自动更新
--status-timer=NUM 状态屏幕更新秒值
--status-automat 以机器可读的格式显示状态视图
--session 后跟会话名称,主要用于中止任务后的恢复破解。
(4)文件
-o, --outfile=FILE 定义哈希文件恢复输出文件
--outfile-format=NUM 定义哈希文件输出格式,见下面的参考资料
--outfile-autohex-disable 禁止使用十六进制输出明文
-p, --separator=CHAR 为哈希列表/输出文件定义分隔符字符
--show 仅仅显示已经破解的密码
--left 仅仅显示未破解的密码
--username 忽略hash表中的用户名,对linux文件直接进行破解,不需要进行整理。
--remove 移除破解成功的hash,当hash是从文本中读取时有用,避免自己手工移除已破解的hash
--stdout 控制台模式
--potfile-disable 不写入pot文件
--debug-mode=NUM 定义调试模式(仅通过使用规则进行混合),参见下面的参考资料
--debug-file=FILE 调试规则的输出文件(请参阅调试模式)
-e, --salt-file=FILE 定义加盐文件列表
--logfile-disable 禁止logfile
(4) 资源
-c, --segment-size=NUM 字典文件缓存大小(M)
-n, --threads=NUM 线程数
-s, --words-skip=NUM 跳过单词数
-l, --words-limit=NUM 限制单词数(分布式)
(5)规则
-r, --rules-file=FILE 使用规则文件: -r 1.rule,
-g, --generate-rules=NUM 随机生成规则
--generate-rules-func-min= 每个随机规则最小值
--generate-rules-func-max=每个随机规则最大值
--generate-rules-seed=NUM 强制RNG种子数
(6)自定义字符集
-1, --custom-charset1=CS 用户定义的字符集
-2, --custom-charset2=CS 例如:
-3, --custom-charset3=CS --custom-charset1=?dabcdef : 设置?1 为0123456789abcdef
-4, --custom-charset4=CS -2mycharset.hcchr : 设置 ?2 包含在mycharset.hcchr
(7)攻击模式
大小写转换攻击:
--toggle-min=NUM 在字典中字母的最小值
--toggle-max=NUM 在字典中字母的最大值
使用掩码攻击模式:
--increment 使用增强模式
--increment-min=NUM 增强模式开始值
--increment-max=NUM 增强模式结束值
排列攻击模式
--perm-min=NUM 过滤比NUM数小的单词
--perm-max=NUM 过滤比NUM数大的单词
查找表攻击模式:
-t, --table-file=FILE 表文件
--table-min=NUM 在字典中的最小字符值
--table-max=NUM 在字典中的最大字符值
打印攻击模式:
--pw-min=NUM 如果长度大于NUM,则打印候选字符
--pw-max=NUM 如果长度小于NUM,则打印候选字符
--elem-cnt-min=NUM 每个链的最小元素数
--elem-cnt-max=NUM 每个链的最大元素数
--wl-dist-len 从字典表中计算输出长度分布
--wl-max=NUM 从字典文件中加载NUM个单词,设置0禁止加载。
--case-permute 在字典中对每一个单词进行反转
(8)参考
输出文件格式:
1 = hash[:salt]
2 = plain 明文
3 = hash[:salt]:plain
4 = hex_plain
5 = hash[:salt]:hex_plain
6 = plain:hex_plain
7 = hash[:salt]:plain:hex_plain
8 = crackpos
9 = hash[:salt]:crackpos
10 = plain:crackpos
11 = hash[:salt]:plain:crackpos
12 = hex_plain:crackpos
13 = hash[:salt]:hex_plain:crackpos
14 = plain:hex_plain:crackpos
15 = hash[:salt]:plain:hex_plain:crackpos
内置的字符集:
?l = abcdefghijklmnopqrstuvwxyz 代表小写字母
?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ 代表大写字母
?d = 0123456789 代表数字
?s = !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ 代表特殊字符
?a = ?l?u?d?s 大小写数字及特殊字符的组合
?b = 0x00 - 0xff 空格
?h | 0123456789abcdef [0-9a-f]
?H | 0123456789ABCDEF [0-9A-F]
攻击模式
0 = Straight (字典破解)
1 = Combination (组合破解)
2 = Toggle-Case (大小写转换)
3 = Brute-force(掩码暴力破解)
4 = Permutation(序列破解)
5 = Table-Lookup(查表破解)
6 = Hybrid dict + mask 字典加掩码破解
7 = Hybrid mask + dict 掩码+字典破解
- [示例哈希]
(https://hashcat.net/wiki/doku.php?id=example_hashes "example_hashes")