Web 扫描神器:Gobuster 保姆级教程(附链接)

一、介绍

Gobuster 是一款用于目录和文件枚举的开源工具。它主要用于在Web应用程序或网站上查找隐藏的目录和文件,从而进行信息收集或渗透测试。以下是 Gobuster 的一些主要特点和功能:

  1. 快速且高效: Gobuster 被设计为快速、高效的工具,能够迅速扫描目标网站上的目录和文件。

  2. 多种扫描模式: 支持多种扫描模式,包括目录枚举、子域名枚举等。用户可以根据需要选择合适的模式。

  3. 多种字典支持: Gobuster 支持使用自定义字典文件进行扫描,用户可以根据需要选择合适的字典来提高扫描效果。

  4. 多线程支持: 工具使用多线程技术,能够同时处理多个请求,提高扫描效率。

  5. HTTP 头部支持: Gobuster 允许用户指定自定义的 HTTP 头部信息,以便更好地模拟不同的请求场景。

  6. 递归扫描: 可以进行递归扫描,深度探索目标网站的目录结构。

  7. 指定 HTTP 方法: 用户可以指定使用的 HTTP 方法,如 GET、POST 等。

  8. 结果输出: 扫描结果可以输出到终端或保存到文件中,支持多种输出格式。

  9. 代理支持: 可以配置代理,用于在扫描中使用代理服务器。

  10. 自动化和集成: 可以通过脚本或其他工具集成 Gobuster 进行自动化扫描任务。

Gobuster 是一个通用的目录和文件枚举工具,适用于多种场景,包括渗透测试、漏洞评估以及网站信息搜集。在使用 Gobuster 进行扫描任务时,请确保遵循法律和道德准则,并在有授权的范围内使用。

二、安装 Gobuster

apt-get install gobuster

三、使用 Gobuster

参考文章icon-default.png?t=N7T8https://blog.csdn.net/B_l_a_nk/article/details/135109164

3.1 全局参数

--debug                                              打开debug模式(调试模式)
--delay duration          每个线程在请求之间等待的时间(举例:--delay 1500ms)
--no-color                                                      禁用颜色输出
--no-error                                                        不显示错误
-z,--no-progress                                                 不显示进度
-o,-output string                                             输出结果到文件
-p,--pattern string                                        包含替换模式的文件
-q,--quiet                                      不打印banner信息和其他无用信息
-t,--threads int                                        指定线程数量(默认10)
-v,--verbose                                    详细输出日志(错误信息也会展示)
-w,--wordlist string                   指定字典路径,指定-可以通过标准输入中读取
--wordlist-offset int           从字典的指定位置继续(默认偏移量为0,从第一个开始)

3.2 模式

dir         经典目录暴力破解模式
dns        DNS子域暴力破解模式
s3         枚举打开的 S3 存储桶并查找是否存在和存储桶列表
gcs        枚举打开的谷歌云存储桶
vhost     虚拟主机暴力破解模式(与DNS不同!)
fuzz        使用模糊测试模式。替换URL、Headers和请求体中的关键词FUZZ
tftp          暴力破解 tftp 文件

3.2.1 dir 模式

-f,--add-slash                                        为每个请求添加/--client-cert-p12 string                           用于配置TLS客户端证书的p12文件--client-cert-p12-password string                  p12文件的密码--client-cert- PEM string                          可选TLS客户端证书的PEM格式公钥--client-cert-pem-key string                       可选TLS客户端证书的PEM格式私钥(这个密钥不需要密码)
-c,--cookies string                                   请求使用的cookie
-d,--discovery -backup                                通过追加多个备份扩展名搜索备份文件--exclude-length string                            排除以下内容长度(完全忽略状态)可以用逗号分隔多个长度,它也支持像203-206这样的范围
-e,--expanded                                         扩展模式,打印完整的url
-x,--extensions string                                要搜索的文件扩展名
-X,--extensions-file string                           从文件中读取要搜索的文件扩展名
-r,--Follow -redirect Follow                          重定向
-H,--headers stringArray                              指定 HTTP 标头,-H 'Header1: val1' -H 'Header2: val2'
-h,--help                                             dir帮助--hide -length                                     在输出中隐藏正文的长度
-m, --method string                                    使用以下HTTP方法(默认"GET")--no-canonicalize-headers                          不规范化HTTP头名称。如果设置的报头名称按原样发送。
-n,--no-status                                        不打印状态码
-k,--no-tls-validation                                跳过TLS证书验证
-P,--password string                                  基本认证密码--proxy string                                     请求使用的代理[http(s)://host:port]或[socks5://host:port]--random-agent                                     使用随机的User-Agent字符串--retry                                            应该在请求超时时重试--retry-attempts int                               请求超时时重试的次数(默认为3)
-s,--status-codes                                     字符串正状态码(如果设置了status-codes-blacklist,将被覆盖)。也可以处理类似200,300-400,404的范围。
-b,--status-codes-blacklist string                    负面状态码(如果设置了,将覆盖状态码)。也可以处理类似200,300-400,404的范围。(默认值“404”)--timeout durationHTTP                             超时时间(默认为10秒)
-u,--url string                                       目标url
-a,--useragent string                                 设置用户代理字符串(默认为"gobuster/3.6")
-U,--username string                                  基本身份验证用户名

-w        指定字典

-t         指定线程

3.2.2 dns 模式

-d,--domain string                          目标域
-h,--help                                   DNS帮助
-r,--resolver string                        使用自定义DNS服务器(格式server.com或server.com:端口)
-c,--Show - CNAME                           显示CNAME记录(不能与-i选项一起使用)
-i,--Show -ips                              显示IP地址

3.2.3 Vhost 模式

--append-domain                       从URL添加主域名到wordlist中的单词。否则,完全限定域需要在            词表中指定。
-c,--cookies string                  请求使用的cookie--domain string                   使用IP地址作为URL时附加的域。如果是空的,你指定一个基于域            名的URL,从URL中提取主机名--exclude-length                  整数排除下面的内容长度(完全忽略状态)。多次供应以排除多个尺寸。
-r,--Follow -redirect Follow         重定向
-H,--headers stringArray             指定 HTTP 标头,-H 'Header1: val1' -H 'Header2: val2'
-h,--help                            vhost帮助
-m, --method string                   使用以下HTTP方法(默认"GET")
-k,--no-tls-validation               跳过TLS证书验证
-P,--password string                 基本认证密码--proxy string                    请求使用的代理[http(s)://host:port]--random-agent                    使用随机的User-Agent字符串--retry                           应该在请求超时时重试--retry-attempts int              请求超时时重试的次数(默认为3)--timeout duration                HTTP超时时间(默认为10秒)
-u,--url string                      目标url
-a,--useragent string                设置用户代理字符串(默认为"gobuster/3.6")
-U,--username string                 基本身份验证用户名

3.2.4 fuzz 模式

-B,--body                                        请求体--client-cert-p12 string                      用于配置TLS客户端证书的p12文件--client-cert-p12-password string             p12文件的密码--client-cert- PEM string                     可选TLS客户端证书的PEM格式公钥--client-cert-pem-key string                  可选TLS客户端证书的PEM格式私钥(这个密钥不需    要密码)
-c,--cookies string                              请求使用的cookie--exclude-length string                       排除以下内容长度(完全忽略状态)可以用逗号分隔     多个长度,它也支持像203-206这样的范围
-b,--excludestatuscodes                          字符串排除的状态码。也可以处理类似200,300-                                             400,404的范围。
-r,--Follow -redirect                            重定向
-H,--headers stringArray                         指定 HTTP 标头,-H 'Header1: val1' -H 'Header2: val2'
-h,--help                                        fuzz帮助
-m, --method string                               使用以下HTTP方法(默认"GET")--no-canonicalize-headers                     不规范化HTTP头名称。如果设置的报头名称按原样 发送。
-k,--no-tls-validation                           跳过TLS证书验证
-P,--password string                             基本认证密码--proxy string                                请求使用的代理[http(s)://host:port]或[socks5://host:port]--random-agent                                使用随机的User-Agent字符串--retry                                       应该在请求超时时重试--retry-attempts int                          请求超时时重试的次数(默认为3)--timeout durationHTTP                        超时时间(默认为10秒)
-u,--url string                                  目标url
-a,--useragent string                            设置用户代理字符串(默认为"gobuster/3.6")
-U,--username string                             基本身份验证用户名

FUZZ=test 是一个占位符,它表示将在每次请求中用字典文件(在下文中指定)中的不同值替换 FUZZ。所以,实际请求将是类似于 https://www.hubstc.com.cn? 

剩余三个模式因为没有实验环境所以不干了!

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

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

相关文章

3月第一批次❗教资认定流程简易版来啦

📝材料准备 1、身份证 2、户口本/学生证/居住证/毕业证 3、考试合格证明(免试人员需要师范生职业能力证书) 4、普通话证书 5、学历证书或认证报告 6、近期一寸白底证件照 7、有效期内体检报告 8、个人承诺书(网上签署) 网上申报 1、上传个人承诺书 2、校验普通话证书…

【图论】【树形dp】【深度优先搜索】2538. 最大价值和与最小价值和的差值

作者推荐 【深度优先搜索】【树】【图论】2973. 树中每个节点放置的金币数目 本文涉及知识点 深度优先搜索 LeetCode2538. 最大价值和与最小价值和的差值 给你一个 n 个节点的无向无根图,节点编号为 0 到 n - 1 。给你一个整数 n 和一个长度为 n - 1 的二维整数…

算法沉淀——分治算法(leetcode真题剖析)

算法沉淀——分治算法 快排思想01.颜色分类02.排序数组03.数组中的第K个最大元素04.库存管理 III 归并思想01.排序数组02.交易逆序对的总数03.计算右侧小于当前元素的个数04.翻转对 分治算法是一种解决问题的算法范式,其核心思想是将一个大问题分解成若干个小问题&a…

去除vue自带的边距

使用vue时发现总有去不掉的外边距&#xff0c;在index.vue里面怎样设置样式都不管用 查阅资料后发现要在vue项目自带的index.html文件内添加下面的样式代码才行 <style>*{margin: 0;padding: 0;}body,html{margin: 0;padding: 0;} </style>

揭秘外观模式:简化复杂系统的关键设计策略

前言 外观模式&#xff08;Facade Pattern&#xff09;是一种结构型设计模式&#xff0c;它隐藏了系统的复杂性&#xff0c;并向客户端提供了一个可以访问系统的接口。这种类型的设计模式向现有的系统添加一个接口&#xff0c;来隐藏系统的复杂性。这种模式涉及到一个单一的类…

全国计算机技术与软件专业技术资格(水平)考试软考中级高级报名步骤

第一步&#xff1a; 1、登陆全国的计算机网上报名平台 http://bm.ruankao.org.cn/sign/welcome 根据自己所在地区&#xff0c;选择报考城市入口&#xff08;例如&#xff1a;北京考区考生&#xff0c;直接选择北京就 可以&#xff09; 第二步&#xff1a;用户登录 1、已有…

数据湖的整体思路

湖本质上是一个集中化&#xff0c;中心化的&#xff0c;一体化的存储技术&#xff0c;并且在其之上追求技术架构的统一化&#xff0c;如流批一体&#xff0c;服务分析一体化。 当数据湖成为中心&#xff0c;那么就可以围湖而建“数据服务环”&#xff0c;环上的服务包括了数仓、…

微服务多级缓存

多级缓存 1.什么是多级缓存 传统的缓存策略一般是请求到达Tomcat后&#xff0c;先查询Redis&#xff0c;如果未命中则查询数据库&#xff0c;如图&#xff1a; 存在下面的问题&#xff1a; •请求要经过Tomcat处理&#xff0c;Tomcat的性能成为整个系统的瓶颈 •Redis缓存…

【Docker】私有仓库

目录 1.搭建 2. 上传镜像 3.拉取镜像 1.搭建 1.拉取私有仓库的镜像 docker pull registry 2.创建私有仓库容器 docker run -id --nameregistry -p 5000:5000 registry 3.打开浏览器,输入地址&#xff08;http:私有仓库服务器ip:5000/v2/_catalog&#xff09; 出现如图表示私…

【程序设计竞赛】C++与Java的细节优化

必须强调下&#xff0c;以下的任意一种优化&#xff0c;都应该是在本身采用的算法没有任何问题情况下的“锦上添花”&#xff0c;而不是“雪中送炭”。 如果下面的说法存在误导&#xff0c;请专业大佬评论指正 读写优化 C读写优化——解除流绑定 在ACM里&#xff0c;经常出现…

Spring Boot 笔记 008 创建接口_获取用户信息

1.1.1 编写userinfo接口 1.1.2 User实体类中增加转json忽略password注释 package com.geji.pojo;import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.Data;import java.time.LocalDateTime;//lombok 在…

使用matplotlib库在Python中绘制折线图

一.使用matplotlib库在Python中绘制一个简单的折线图 # codingutf-8 from matplotlib import pyplot as plt # 导入matplotlib库中的pyplot模块&#xff0c;并重命名为plt# 设置图片大小&#xff0c;dpi是每英寸点数&#xff0c;figsize是图像的宽和高 plt.figure(figsize(20…