如何使用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 virtualenvpython3 -m venv myvenvsource myvenv/bin/activatepip3 install -r requirements.txtpython3 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 -epython3 pfuzz.py -r request.txt -f -fe設置多線程
python3 pfuzz.py -r request.txt -f -t 5將結果輸出至終端窗口
python3 pfuzz.py -r request.txt -f -o terminalpython3 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 2Usage: python3 pfuzz.py -r req.txt -f -l --proxy 127.0.0.1:8080 --output-details ~/output總結
以上是生活随笔為你收集整理的如何使用pFuzz以多种方法验证Web应用程序防火墙的安全性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何跟踪log4j漏洞原理及发现绕WAF
- 下一篇: 【安全漏洞】SRC另类思路分享:不受限制