FFUF 用法手册
前言:FFUF是最好用的目录扫描、FUZZ的工具之一,经常使用且用法灵活多样,于是整理一个用法手册方便查询使用命令
简介
FFUF(Fast Unrestricted Web Fuzzer)是一个快速、灵活的Web应用程序扫描工具,用于发现隐藏在Web服务器中的路径或文件。它的主要功能是通过暴力猜测(brute-forcing)来查找目标主机上存在的文件或目录,从而帮助发现可能存在的安全漏洞或配置问题。
主要特点和用途
- 快速和高效:FFUF专注于快速扫描和发现,利用并行化和异步请求以加快扫描速度。
- 灵活的字典支持:支持自定义字典文件,可以根据实际情况灵活调整扫描策略。
- HTTP请求定制:可以通过设置HTTP头、Cookie、代理等来定制每次请求,以便在不同场景下进行测试。
- 过滤器功能:支持根据HTTP状态码、响应内容长度等条件来过滤扫描结果,帮助缩小扫描范围。
- 递归扫描:可以深入探索目标网站的子目录和链接,发现更深层次的潜在目标。
- JSON输出支持:结果可以以JSON格式输出,方便后续分析或集成到其他工具中。
用法
需要自备对应的字典,十分自由灵活
参数
- -w:指定字典路径
- -X:指定请求方法
- -d:指定post传参数据
- -b:指定cookie数据
- -u:指定目标URL
- -H:指定HTTP头部
- -r:遵循重定向
- -c:为输出着色
- -p:请求之间的“延迟”秒数,或随机延迟范围。例如“0.1”或“0.1-2.0”
- -timeout:指定超时时间
- -sf:当 > 95% 的响应返回 403 Forbidden 时停止(默认值:false)
- -t:并发线程数。(默认值:40)
- -v:详细输出,打印完整 URL 和重定向位置(如果有)以及结果。(默认值:false)
- -fs:忽略为该大小的响应包
- -fc:忽略为该状态码的响应包
- -maxtime:指定最大执行时间
- -maxtime-job:指定每个作业的最大时间
- -recursion:启用递归扫描
- -recursion-depth:指定递归扫描的深度
- -recursion-strategy:递归策略“default”表示基于重定向,“greedy”表示对所有匹配项进行递归(默认值:default)
- -mc all:显示所有成功匹配的内容
- –input-cmd:指定了一个输入命令,用来生成FUZZ的替换值
- -o:将输出写入文件
- -of:输出文件格式。可用格式:json、ejson、html、md、csv、ecsv(或,所有格式均为“all”)(默认值:json)
示例
1. FUZZ 目录
1
| ffuf -w /path/to/wordlist -u https://target/FUZZ
|
2. FUZZ HTTP头部
1
| ffuf -w /path/to/vhost/wordlist -u https://target -H "Host: FUZZ" -fs 4242
|
3. FUZZ 参数名
1
| ffuf -w /path/to/paramnames.txt -u https://target/script.php?FUZZ=test_value -fs 4242
|
4. FUZZ 参数值
1
| ffuf -w /path/to/values.txt -u https://target/script.php?valid_name=FUZZ -fc 401
|
5. FUZZ POST Data
1
| ffuf -w /path/to/postdata.txt -X POST -d "username=admin\&password=FUZZ" -u https://target/login.php -fc 401
|
6. FUZZ 最大时间后停止
1
| ffuf -w /path/to/wordlist -u https://target/FUZZ -maxtime 60
|
7. FUZZ 递归
1
| ffuf -w /path/to/wordlist -u https://target/FUZZ -maxtime-job 60 -recursion -recursion-depth 2
|