win11+python3.9+pycurl39+wfuzz3.1.0

免責事項:この記事は学習のみを目的としており、不正な侵入テストに使用してはならず、違法な使用は禁止されています。


コンセプトの紹介:

  • WFuzz は、Python に基づいて開発された Web セキュリティ ファジング ツールです。任意の入力値を HTTP リクエストに挿入でき、さまざまな WEB アプリケーション コンポーネントに対してさまざまな複雑なブラスト攻撃を実行できます。例: パラメータ、認証、フォーム、ディレクトリ/ファイル、ヘッダーなど。

  • これは単なる Web スキャナーではありません。wfuzz は、Web サイトの弱点/脆弱性を見つけて悪用することで、Web サイトの安全性を高めるのに役立ちます。wfuzz の脆弱性スキャン機能はプラグインによってサポートされています

  • wfuzz は、wfuzz または Burpsuite によって取得された HTTP リクエストとレスポンスを処理するための簡潔なプログラミング言語インターフェイスを提供します。これにより、Web ベースのスキャナーに依存せずに、適切なコンテキストで手動または半自動のテストを実行できます。

原理の紹介:

格式:wfuzz -w 字典 地址 #https://bbskali.cn/FUZZ

如上命令使用-w参数指定字典位置,然后跟上一个要测试的地址,所列的例子中有一个FUZZ单词,
这个单词可以理解是一个 占位符,这样就大概了解了wfuzz的基本运行原理。

ダウンロードリンク:

https://github.com/xmendez/wfuzz

インストールプロセス:

Windows に wfuzz をインストールする前に、まず pycurl をインストールする必要があります。対応する Python バージョンの pycurl をインストールする必要があることに注意してください ( kali には wfuzz が付属しており、そのまま使用できます)

対応するバージョンの pycurl を見つけてダウンロードしてインストールします

https://www.lfd.uci.edu/~gohlke/pythonlibs/      //pycurl下载地址
python3.9 -m pip install pycurl-7.45.1-cp39-cp39-win_amd64.whl  //拷贝下载好的
pycurl到wfuzz的安装目录下,使用python3.9执行安装
我这里已经安装过了,所以会提示已经存在相同版本的pycurl,直接安装会提示successfully的。

wfuzzをインストールする

python3.9 -m pip install wfuzz       //使用pip安装。如果你存在多个版本的python,就使用对应版本的pip进行安装即可,直接输入pip安装可能会出现安装位置错位问题;如果你仅有一个python,则请忽略。

インストール成功!


使用方法の紹介:

https://wfuzz.readthedocs.io/en/latest/

パラメータの詳細な説明:

选项:

-h/--help:帮助
--help:高级帮助
--filter-help:筛选器帮助
--version:Wfuzz版本详细信息
-e<type>:可用编码器/有效负载/迭代器/打印机/脚本列表

--recipe<filename>:从配方中读取选项。对各种食谱重复上述步骤。
--dump recipe<filename>:将当前选项打印为配方
--oF<filename>:将模糊结果保存到文件中。这些可以稍后使用wfuzz有效负载来使用。

-c:带颜色的输出
-v:详细信息。
-f filename,printer:使用指定的打印机(如果省略了原始打印机)将结果存储在输出文件中。
-o printer:使用指定的打印机显示结果。
--interact:(beta)如果选中,则捕获所有按键。这允许您与程序交互。
--dry-run:打印应用请求的结果,而不实际发出任何HTTP请求。
--prev:打印以前的HTTP请求(仅当使用生成模糊结果的有效负载时)
--efield<expr>:显示指定的语言表达式以及当前负载。对各个字段重复上述操作。
--field<expr>:不显示有效负载,只显示指定的语言表达式。对各个字段重复上述操作。

-p addr:使用ip:port:type格式的代理。重复使用各种代理的选项。如果省略,类型可以是SOCKS4、SOCKS5或HTTP。

-t N:指定并发连接数(默认值为10)
-s N:指定请求之间的时间延迟(默认值为0)
-R depth:递归路径发现深度是最大递归级别。
-D depth:最大链接深度级别。
-L, --follow:遵循HTTP重定向
--ip-host:port:以ip:port格式指定要连接的ip,而不是URL的主机
-Z:扫描模式(将忽略连接错误)。
--req delay N:设置请求允许的最长时间(以秒为单位)(CURLOPT_TIMEOUT)。默认值90。
--conn-delay N:设置服务器连接阶段要花费的最长时间(以秒为单位)(CURLOPT_CONNECTTIMEOUT)。默认值90。

-A, --AA, --AAA: --script=default,verbose,discovery-v-c的别名
--no-cache:禁用插件缓存。将扫描每个请求。
--script=:相当于--script=默认值
--script=<plugins>:运行脚本的扫描<plugins>是以逗号分隔的插件文件或插件类别列表
--script help=<plugins>:显示有关脚本的帮助。
--script-args n1=v1,…:为脚本提供参数。即--script args grep.regex=“<A href=\”(.*?)\“>”

-u url:指定请求的url。
-m iterator:指定用于组合有效载荷的迭代器(默认为product)
-z payload:以名称[,参数][,编码器]的形式为每个FUZZ关键字指定有效负载。可以使用编码器列表,即md5-sha1。编码器可以是链式的,即。md5@sha1.可以使用编码器类别。即url
使用帮助作为有效负载来显示有效负载插件的详细信息(您可以使用--slice进行过滤)

--zP<params>:指定有效负载的参数(必须以-z或-w开头)。
--zD<default>:指定有效负载的默认参数(必须以-z或-w开头)。
--zE<encoder>:指定有效负载的编码器(它必须以-z或-w开头)。
--slice<filter>:使用指定的表达式过滤有效负载的元素。它必须以-z开头。
-w wordlist:指定wordlist文件(-z文件的别名,wordlist)。
-V alltype:所有参数brutforming(allvars和allpost)。不需要FUZZ关键字。
-X method:指定请求的HTTP方法,即HEAD或FUZZ

-b cookie:为请求指定cookie。对各种cookie重复选项。
-d postdata:使用postdata(例如:“id=FUZZ&catalog=1”)
-H header:使用header(例如:“Cookie:id=1312321&user=FUZZ”)。对各种标题重复选项。
--basic/ntlm/digest auth:格式为“user:pass”或“FUZZ:FUZZ”或

--hc/hl/hw/hh N[,N]+:隐藏具有指定代码/行/字/字符的响应(使用BBB从基线获取值)
--sc/sl/sw/sh N[,N]+:显示具有指定代码/行/字/字符的响应(使用BBB获取基线值)
--ss/hs正则表达式:显示/隐藏内容中具有指定正则表达式的响应
--filter<filter>:使用指定的筛选器表达式显示/隐藏响应(使用BBB从基线获取值)
--prefilter<filter>:使用指定的表达式在模糊化之前过滤项目。对串联过滤器重复上述步骤。

テスト例:

wfuzz --script=robots -z list,robots.txt http://www.webscantest.com/FUZZ

python3.9 ディレクトリでテストを実行します。コマンド: wfuzz を直接使用します。 

wfuzz インストール ディレクトリで使用され、パスは src の下にあります。


使用上のヒント:追加予定! 同時に、誰もが貢献し、一緒に学ぶことを歓迎します~


参考記事:

https://blog.csdn.net/qq_43368538/article/details/120430714

https://www.cnblogs.com/Cx330Lm/p/17005800.html

https://www.bilibili.com/read/cv21726081


お役に立てましたら、高評価をお願いします!

おすすめ

転載: blog.csdn.net/woai_zhongguo/article/details/129672733
39
おすすめ