From f535627c75ef0472ec13d81b9daf45b5ad331921 Mon Sep 17 00:00:00 2001 From: M09Ic Date: Mon, 12 Dec 2022 17:07:07 +0800 Subject: [PATCH] update README.md --- README.md | 45 ++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index cee6fbd..488b046 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,8 @@ * 基于掩码的字典生成 * 基于规则的字典生成 * 动态智能过滤 +* 指纹识别 +* 重要信息提取, 如title, hash以及自定义的正则表达式 * 自定义过滤策略 * 自定义输出格式与内容 * *nix的命令行设计, 轻松与其他工具联动 @@ -90,6 +92,42 @@ `spray -u http://example.com -d word.txt -r rule.txt -r rule2.txt` +通用过滤规则, 过滤规则目前与hashcat一致 + +`spray -u http://example.com -d word.txt --rule-filter ">15"` + +这行命令的意思是, 指定字典, 并过滤掉长度大于15的字典. + +因为hashcat是设计用来针对密码的, 后续将会针对http fuzz的场景添加一些spray特有的过滤规则. +### 使用函数装饰字典 +内置了一些函数可以对字典进行装饰. 目前支持的如下: + +mask生成阶段的函数 +1. `--suffix` 在字典后面添加后缀, 可添加多个, 与原有的字典组成笛卡尔积 +2. `--prefix` 在字典前面添加前缀, 可添加多个, 与原有的字典组成笛卡尔积 + +rule阶段的函数 +1. `-L`/`--lowercase` 将字典中的所有字母转换为小写 +2. `-U`/`--uppercase` 将字典中的所有字母转换为大写 +3. `--replace` 替换字典中的字符, 例如`--replace aaa=bbb` 将字典中的a替换为b, 可以添加多个`--replace` +4. `--remove-extension` 删除字典中的文件扩展名, 逗号分割 +5. `--exclude-extension` 排除字典中的文件扩展名, 逗号分割 +6. `-e`/`--extension` 添加拓展名, 逗号分割 + +### 字典生成器的优先级 + +将`-w`与`-d`解析成mask表达式 + +--> 给mask表达式添加上`suffix`与`prefix` 关键字 + +--> mask字典生成器 + +--> rule字典生成器 + +--> rule过滤器 + +--> 函数装饰器 + ### 智能过滤 智能过滤较为复杂, 我只能简单描述一下逻辑, 具体的请看代码. @@ -191,6 +229,7 @@ spray默认输出到终端的格式是human-like文本, 输出到文件的格式 1. [x] fuzzyequal 2. [ ] 断点续传 -3. [ ] 支持http2 -4. [ ] auto-tune, 自动调整并发数量 -5. [ ] 可自定义的递归配置 \ No newline at end of file +3. [ ] 简易爬虫 +4. [ ] 支持http2 +5. [ ] auto-tune, 自动调整并发数量 +6. [ ] 可自定义的递归配置 \ No newline at end of file