hashcat规则的用法
描述
基于规则的攻击是最为复杂的攻击之一。这样说的原因很简单。基于规则的攻击就像是设计用于产生候选密码的编程语言。例如,它有用于修改、切断、扩展单词的函数,有用于跳过某些单词的条件操作。这些特性使它成为最为灵活、精确和有效的攻击模式。
为何不使用正则表达式
为何要重复造轮子?很简单啊,正则表达式太慢了。通常,我们不得不在赶在hash算法开始之前——10ms内,生成1,000,000,000或更多的新鲜候选密码,而且这一过程要一再重复。只需看一眼你的GPU速度显示就知道该如何决定。
常用规则:
Name | Function | Description | Example Rule | Input Word | Output Word | Note |
---|---|---|---|---|---|---|
Nothing | : | 什么都不做 | : | p@ssW0rd | p@ssW0rd | |
Lowercase | l | 将所有字母转为小写 | l | p@ssW0rd | p@ssw0rd | |
Uppercase | u | 将所有字母转为大写 | u | p@ssW0rd | P@SSW0RD | |
Capitalize | c | 大写首字母,小写其余部分 | c | p@ssW0rd | P@ssw0rd | |
Invert Capitalize | C | 小写首字母,大写其余部分 | C | p@ssW0rd | p@SSW0RD | |
Toggle Case | t | 改变单词中所有字母的大小写 | t | p@ssW0rd | P@SSw0RD | |
Toggle @ | TN | 改变单词中,第N个字母的大小写 | T3 | p@ssW0rd | p@sSW0rd | * |
Reverse | r | 反转整个单词 | r | p@ssW0rd | dr0Wss@p | |
Duplicate | d | 重复整个单词 | d | p@ssW0rd | p@ssW0rdp@ssW0rd | |
Duplicate N | pN | 在单词后再重复N遍此单词 | p2 | p@ssW0rd | p@ssW0rdp@ssW0rdp@ssW0rd | |
Reflect | f | 在单词后重复一遍反转的单词 | f | p@ssW0rd | p@ssW0rddr0Wss@p | |
Rotate Left | { | 将整个单词循环左移一位 | { | p@ssW0rd | @ssW0rdp | |
Rotate Right | } | 将整个单词循环右移一位 | } | p@ssW0rd | dp@ssW0r | |
Append Character |
X|在单词后边 添加一个字符|�|在 单词后边添加一个 字符|1 |
p@ssW0rd | p@ssW0rd1 | |||
Prepend Character | ^X | 在单词前面添加一个字符 | ^1 | p@ssW0rd | 1p@ssW0rd | |
Truncate left | [ | 删除第一个字符 | [ | p@ssW0rd | @ssW0rd | |
Trucate right | ] | 删除最后一个字符 | ] | p@ssW0rd | p@assW0r | |
Delete @ N | DN | 删除第N个位置上的字符 | D3 | p@ssW0rd | p@sW0rd | * |
Extract range | xNM | 取从N开始的M个字符 | x04 | p@ssW0rd | p@ss |
|
Omit range | ONM | 删除从N开始的M个字符 | O12 | p@ssW0rd | psW0rd | * |
Insert @ N | iNX | 在位置N插入一个字符 | i4! | p@ssW0rd | p@ss!W0rd | * |
Overwrite @ N | oNX | 用X重写位置N的字符 |
o3|p@ssW0rd|p @s|�@��� 0��|�@�W0rd |
* | ||
Truncate @ N | ‘N | 在位置N前截断单词 | ‘6 | p@ssW0rd | p@ssW0 | * |
Replace | sXY | 用Y替换所有X | ss$ | p@ssW0rd | p@$$W0rd | |
Purge | @X | 清除所有X | @s | p@ssW0rd | p@W0rd | + |
Duplicate first N | zN | 重复第一个字符N次 | z2 | p@ssW0rd | ppp@ssW0rd | |
Duplicate last N | ZN | 重复最后一个字符N次 | Z2 | p@ssW0rd | p@ssW0rddd | |
Duplicate all | q | 重复每个字符 | q | p@ssW0rd | pp@@ssssWW00rrdd | |
Extract memory | XNMI | 在位置I处插入存储在内存中的词的从N开始的长度为M的子串 | lMX428 | p@ssW0rd | p@ssw0rdw0 | + |
Append memory | 4 | 将保存在内存中的词添加到当前词后面 | uMl4 | p@ssW0rd | p@ssw0rdP@SSW0RD | + |
Prepend memory | 6 | 将保存在内存中的词添加到当前词前面 | rMr6 | p@ssW0rd | dr0Wss@pp@ssW0rd | + |
Memorize | M | 将当前词保存到内存中 | lMuX084 | p@ssW0rd | P@SSp@ssw0rdW0RD | + |
– *代表N从0开始。超过9的字符位置用A-Z来表示(A-10)
转载请保留原文链接:http://blog.hzzx3d.com/3028.html
© 版权声明
免责声明:本站的页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与我们联系(邮箱:3446525391@qq.com)删除或处理。稿件内容仅为传递更多信息之目的,不代表本网观点,也不代表本网站赞同其观点或证实其内容的真实性,更不对您的投资构成建议。
THE END