WFUZZ模糊测试

news/2024/9/28 18:07:48/文章来源:https://www.cnblogs.com/schneider/p/18438233

WFUZZ模糊测试

使用指南

选项:
-h/--help                   :这个帮助
--help                      : 高级帮助
--filter-help               : 过滤语言规范
--version                   : Wfuzz 版本详细信息
-e <type>                   :可用编码器/有效负载/迭代器/打印机/脚本的列表--recipe <文件名>            :从配方中读取选项。对各种食谱重复此操作。
--dump-recipe <filename>    :将当前选项打印为配方
--oF <文件名>                :将模糊结果保存到文件中。这些可以稍后使用 wfuzz 有效负载使用。-c :带颜色的输出
-v:详细信息。
-f filename,printer         :使用指定的打印机(如果省略则为原始打印机)将结果存储在输出文件中。
-o Printer                  :使用指定打印机显示结果。
--interact                  :(测试版)如果选择,则捕获所有按键。这允许您与程序交互。
--dry-run                   :打印应用请求的结果,而不实际发出任何 HTTP 请求。
--prev                      :打印之前的 HTTP 请求(仅当使用有效负载生成模糊结果时)
--efield <expr>             :显示指定的语言表达式以及当前的有效负载。对各个字段重复此操作。
--field <expr>              :不显示负载,仅显示指定的语言表达式。对各个字段重复此操作。-p addr                     :使用 ip:port:type 格式的代理。重复使用各种代理的选项。-t N                        :指定并发连接数(默认10)
-s N                        :指定请求之间的时间延迟(默认为 0)
-R 深度                      :递归路径发现的深度是最大递归级别。
-D 深度                      :最大链接深度级别。
-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              :分别为 -v -c 和 --script=default、verbose、discover 的别名
--no-cache                  :禁用插件缓存。每个请求都会被扫描。
--script=                   :相当于 --script=default
--script=<plugins>          :运行脚本的扫描。 <plugins> 是逗号分隔的插件文件或插件类别列表
--script-help=<plugins>     :显示有关脚本的帮助。
--script-args n1=v1,...     : 为脚本提供参数。 IE。 --script-args grep.regex="<A href=\"(.*?)\">"-u url                      :指定请求的 URL。
-m iterator                 :指定用于组合有效负载的迭代器(默认产品)
-z有效负载                    :以名称[,参数] [,编码器]的形式为使用的每个FUZZ关键字指定有效负载。--zP <params>               :指定有效负载的参数(前面必须带有 -z 或 -w)。
--zD <default>              :指定负载的默认参数(前面必须带有 -z 或 -w)。
--zE <encoder>              :指定有效负载的编码器(前面必须带有 -z 或 -w)。
--slice <filter>            :使用指定表达式过滤有效负载的元素。它前面必须带有 -z。
-w wordlist                 :指定一个单词列表文件(-z file,wordlist 的别名)。
-V alltype                  :暴力破解所有参数(allvars 和 allpost)。不需要 FUZZ 关键字。
-X method                   : 指定请求的HTTP方法,即。头或毛茸茸的-b cookie                   :为请求指定 cookie。对各种 cookie 重复选项。
-d postdata                 :使用发布数据(例如:“id=FUZZ&catalogue=1”)
-H header                   :使用标头(例如:“Cookie:id=1312321&user=FUZZ”)。各种标题的重复选项。
--basic/ntlm/digest auth    :格式为“user:pass”或“FUZZ:FUZZ”或“domain\FUZ2Z:FUZZ”--hc/hl/hw/hh N[,N]+        :隐藏具有指定代码/行/单词/字符的响应(使用 BBB 从基线获取值)
--sc/sl/sw/sh N[,N]+        :显示具有指定代码/行/单词/字符的响应(使用 BBB 从基线获取值)
--ss/hs regex               :显示/隐藏内容中指定正则表达式的响应
--filter <filter>           :使用指定的过滤表达式显示/隐藏响应(使用 BBB 从基线获取值)
--prefilter <filter>        :使用指定表达式在模糊测试之前过滤项目。重复连接过滤器。

文件发现

打开kali,进行第一步配置环境变量

export URL="http://192.168.70.138/FUZZ"
echo $URL

image-20240928164709247

使用 -c 来显示颜色输出,使用 -z 来指定输入源,并使用 -hc 来避免不存在和错误的响应。

wfuzz -c -z file,/usr/share/wordlists/wfuzz/general/common.txt --hc 404,301,403 "$URL"

image-20240928165811496

目录发现

查找目录,需要使用尾部正斜杠来重新导入环境变量

image-20240928170054221

也要换个字典,这里没换

image-20240928170323109

参数发现

export URL="http://192.168.70.138/index.php?FUZZ=data"
echo $URL
wfuzz -c -z file,/home/fuzz-db/Web-Fuzzing-Box/Web/Parameters/Top100_Parameters.txt --hc 404,301,403 "$URL"

image-20240928174804260

尽管在这种情况下无法直接利用这些参数,但我们仍然了解了检查端点是否存在隐藏参数所需的过程,这些参数可能已被遗漏,不用于最终用户交互,或用于数据处理目的。

参数值发现

export URL="http://192.168.70.138:80/index.php?url=FUZZ"
echo $URL
wfuzz -c -z file,/home/fuzz-db/Web-Fuzzing-Box/Web/Parameters/Top100_Parameters.txt --hc 404,301,403 "$URL"

image-20240928175324797

POST参数值发现

image-20240928180209793

另外,hh 参数可以抑制指定字节的响应大小值

注意:其中-d的值是通过burp抓包得来的

命令技巧

查询指定文件路径(可以用于查找指定字典的绝对路径)

realpath <filename>

注意:可以用tab键来补全命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/805301.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2. 两数相加题解

题目描述 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例 1:输入:l1 = [2,4,3]…

一些cookie的知识点

cookie属性: 1.domain:指定了cookie应该被发送到哪些域,默认情况下,cookie只会被发送到设置它的那个域。可以设置更广泛的域,比如 .example.com,这样所有子域都可以访问这个cookie。这里我们简单来了解一下域名和子域名。子域名定义:子域名是在域名前面添加的一个前缀,…

Himax 10.36寸 incell触摸调试

触摸是带笔的,数据比较大,用的是spi接口。一、添加驱动:drivers/input/touchscreen/hxchipset二、dts配置&spi4 {status = "okay";pinctrl-0 = <&spi4m1_cs0 &spi4m1_cs1 &spi4m1_pins>;himax_touch@0 {compatible = "himax,hxcommon&…

加塞

加塞 rnk7,\(100+30+10+15=155\)。 题目来源:2022 牛客 OI 赛前集训营-提高组(第三场) T1 一般图最小匹配 说的很复杂,实际水题。就是从 \(n\) 个数中选 \(2m\) 个数,两个两个求差后,求这个差的和的最小值。 显然排序之后求差是最小的,但显然不能直接贪心,考虑 DP。 先…

『模拟赛』CSP-S模拟6

『模拟赛记录』CSP-S模拟6Rank 一般 恼了怎么又狠狠挂分啊啊啊啊A. 一般图最小匹配 签。(这么多天终于签上了是吧) 结论是,跟图完全没关系。题意转换完就是从 \(n\) 个数中选出 \(m\) 对差的绝对值之和最小的数。显然我们选的每一对数都应该是这 \(n\) 个数中相邻的一组,so…

ESXi 5.5 系统克隆到SD卡或USB磁盘上

对于如何将安装在本地磁盘上的ESXi系统克隆到SD卡或USB磁盘上,以便快速实现ESXi主机的VSAN-Ready状态。正好猫猫也有点兴趣,所以,就研究了下这个方式,大致的工作思路就是“先通过dd命令将ESXi系统克隆到VMFS Datastore成为一个文件,然后再从文件弄到SD卡或USB磁盘即可”。…

昆明理工大学计算机考研专业课答题卡

--昆工昆明理工大学、计算机技术、人工智能、软件工程、网络空间安全、891计算机专业核心综合、计算机系统结构、计算机软件与理论、网络与信息安全、计算机应用技术、综合程序设计

BUUCTF(PWN)- rip

BUUCTF(PWN)- rip 打开题目得到靶机信息: node5.buuoj.cn:29045 和附件 pwn1查看文件信息为 64-bit ,用 ida 打开附件 首先 shift+f12 查找字符串,能看见 system、/bin/sh 字样,点击 please input 或者 ok,bye!!! 跳转直接进入 main 函数查看gets 并没有限制输入,gets 函…

Springboot实战——黑马点评之秒杀优化

Springboot实战——黑马点评之 秒杀优化 1 秒杀优化 先来复习以下,秒杀优惠券业务的现有实现逻辑:以上流程图中的操作串行执行,效率极低。 其中 判断秒杀库存 以及 校验一人一单 属于对数据库的读取,耗时较少;扣减库存 以及 创建订单 属于对数据库的写操作,耗时相对较久。…

PARTVI-Oracle数据库管理与开发-数据库管理员的概念

18. 数据库管理员的概念 18.1. 数据库管理员的职责 数据库管理员(DBA)的主要责任是使企业数据对其用户可用。DBA必须与开发人员紧密合作,确保他们的应用程序有效地使用数据库,并与系统管理员合作,确保物理资源充足且使用高效。Oracle DBA负责了解Oracle数据库架构以及数据…

实验作业1

实验一 任务一 源代码#include<stdio.h> int main() {printf(" o \n");printf("<H>\n");printf("I I\n");printf(" o \n");printf("<H>\n");printf("I I\n");return 0; }效果 源代码#incl…