售前咨询
技术支持
渠道合作

如何使用pFuzz以多种方法验证Web应用程序防火墙的安全性

关于pFuzz
pFuzz是一款功能强大的Web应用程序防火墙安全检测/绕过工具,可以帮助广大研究人员同时通过多种方式绕过目标Web应用程序防火墙,以测试WAF的安全性。
pFuzz本质上是一款高级红队模糊测试工具,主要用于研究目的。pFuzz基于Python编程语言开发,可以帮助广大研究人员在Web应用程序安全研究方面提供高级模糊测试能力。该工具采用模块化结构开发,因此我们可以快速向pFuzz添加新的功能模块或绕过方法,并对其他WAF进行测试。除了模块化结构之外,pFuzz还使用了多线程、多处理和队列结构,使工具更加灵活,并为未来的开发奠定了强大而稳定的基础设施。
工具机制流程

支持绕过的Web应用防火墙
• FortiWeb
• Cloudflare
• Sucuri
• Akamai
• Imperva
• F5 WAF

依赖组件
• cffi==1.14.3
• cryptography==3.1.1
• numpy==1.19.2
• pandas==1.1.3
• pycparser==2.20
• pyOpenSSL==19.1.0
• python-dateutil==2.8.1
• pytz==2020.1
• six==1.15.0
• xlrd==1.2.0
工具安装和使用

sudo pip3 install virtualenv
python3 -m venv myvenv
source myvenv/bin/activate
pip3 install -r requirements.txt
python3 pfuzz.py –help
使用样例
查看帮助信息

python3 pfuzz.py –help
修改Header模块

python3 pfuzz.py -r request.txt -m
字符模糊测试模块

python3 pfuzz.py -r request.txt -cf
模糊测试模块

python3 pfuzz.py -r request.txt -f
添加代理

python3 pfuzz.py -r request.txt -f –proxy 127.0.0.1:8080
在请求间添加延迟间隔

python3 pfuzz.py -r request.txt -f -d 3
启用TLS/SSL连接

python3 pfuzz.py -r request.txt -f -s
启用日志

python3 pfuzz.py -r request.txt -f -l
启用Payload编码/完整编码

python3 pfuzz.py -r request.txt -f -e
python3 pfuzz.py -r request.txt -f -fe
设置多线程

python3 pfuzz.py -r request.txt -f -t 5
将结果输出至终端窗口

python3 pfuzz.py -r request.txt -f -o terminal
python3 pfuzz.py -r request.txt -f -od terminal
将结果输出至文件

python3 pfuzz.py -r request.txt -f -o ~/Desktop/
python3 pfuzz.py -r request.txt -f -od ~/tmp/
工具帮助

_____
_ __ | ___|_ _ ____ ____
| ‘_ \ | |_ | | | ||_ /|_ /
| |_) || _| | |_| | / / / /
| .__/ |_| \__,_|/___|/___|
|_|
————————————
@EmreOvunc | @merttasci | @xsuperbug
————————————
v0.2.4
————————————

usage: pfuzz.py [-h] [–request REQUEST] [–proxy PROXY] [–log] [–ssl]
[–threads THREADS] [–output OUTPUT] [–delay TIME]
[–output-details OUTPUT] [–full-encode] [–encode]
[–fuzz] [–charfuzz] [–manipulate] [–version]optional arguments:
–help/-h 显示帮助信息并退出
–proxy/-p PROXY 设置代理[IP:PORT]
–log/-l 启用日志
–ssl/-s 启用
–threads/-t NUMBER 多线程数量[默认=1]
–version/-v 显示程序版本信息并退出
[Request Options]:
–request/-r REQUEST 请求文件
–delay/-d TIME 请求之间的延迟间隔[默认=0.05]
–encode/-e 编码URI/Body中的空格字符
–full-encode/-fe 编码URI/Body中的所有字符

[Output Options]:
–output/-o OUTPUT 输出重要信息[终端/文件夹名称]
–output-details/-od OUTPUT
输出所有详细信息[终端/文件夹名称]
[Modules]:
–fuzz/-f 运行模糊测试模块
–charfuzz/-cf 运行字符模糊测试模块
–manipulate/-m 运行Header篡改模块
Usage: python3 pfuzz.py -r req.txt –log -s –fuzz -d 1 –encode -o terminal –threads 2
Usage: python3 pfuzz.py -r req.txt -f -l –proxy 127.0.0.1:8080 –output-details ~/output

 

上一篇:

下一篇:

相关新闻

 

领取优惠
免费预约

申请试用SSL证书

提交成功!

咨询客服