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.rhkb.cn/news/256434.html

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

相关文章

第九个知识点:内部对象

Date对象: <script>var date new Date();date.getFullYear();//年date.getMonth();//月date.getDate();//日date.getDay();//星期几date.getHours();//时date.getMinutes();//分date.getSeconds();//秒date.getTime();//获取时间戳&#xff0c;时间戳时全球统一&#x…

【人工智能】神奇的Embedding:文本变向量,大语言模型智慧密码解析(10)

什么是嵌入&#xff1f; OpenAI 的文本嵌入衡量文本字符串的相关性。嵌入通常用于&#xff1a; Search 搜索&#xff08;结果按与查询字符串的相关性排序&#xff09;Clustering 聚类&#xff08;文本字符串按相似性分组&#xff09;Recommendations 推荐&#xff08;推荐具有…

牛客周赛 Round 32 F.小红的矩阵修改【三进制状态压缩dp】

原题链接&#xff1a;https://ac.nowcoder.com/acm/contest/75174/F 时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C 262144K&#xff0c;其他语言524288K 64bit IO Format: %lld 题目描述 小红拿到了一个字符矩阵&#xff0c;矩阵中仅包含&q…

spring boot学习第十一篇:发邮件

1、pom.xml文件内容如下&#xff08;是我所有学习内容需要的&#xff0c;不再单独分出来&#xff0c;包不会冲突&#xff09;&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"…

《CSS 简易速速上手小册》第3章:CSS 响应式设计(2024 最新版)

文章目录 3.1 媒体查询基础&#xff1a;网页的智能眼镜3.1.1 基础知识3.1.2 重点案例&#xff1a;适应三种设备的响应式布局3.1.3 拓展案例 1&#xff1a;改变字体大小3.1.4 拓展案例 2&#xff1a;暗模式适配 3.2 响应式图片和视频&#xff1a;让内容自由呼吸3.2.1 基础知识3.…

LeetCode周赛——384

1.修改矩阵&#xff08;模拟&#xff09; class Solution { public:vector<vector<int>> modifiedMatrix(vector<vector<int>>& matrix) {int n matrix.size();int m matrix[0].size();vector<int> ans(m);for(int i 0; i < m; i)for(…

操作系统——内存管理(附带Leetcode算法题LRU)

目录 1.内存管理主要用来干什么&#xff1f; 2.什么是内存碎片&#xff1f; 3.虚拟内存 3.1传统存储管理方式的缺点&#xff1f; 3.2局部性原理 3.3什么是虚拟内存&#xff1f;有什么用&#xff1f; 3.3.1段式分配 3.3.2页式分配 3.3.2.1换页机制 3.3.2.2页面置换算法…

计算机网络——08应用层原理

应用层原理 创建一个新的网络 编程 在不同的端系统上运行通过网络基础设施提供的服务&#xff0c;应用进程批次通信如Web Web服务器软件与浏览器软件通信 网络核心中没有应用层软件 网络核心没有应用层功能网络应用只能在端系统上存在 快速网络应用开发和部署 网络应用…

【MySQL】数据库和表的操作

数据库和表的操作 一、数据库的操作1. 创建数据库2. 字符集和校验规则&#xff08;1&#xff09;查看系统默认字符集以及校验规则&#xff08;2&#xff09;查看数据库支持的字符集&#xff08;3&#xff09;查看数据库支持的字符集校验规则&#xff08;4&#xff09;校验规则对…

Powershell Install 一键部署Openssl+certificate证书创建

前言 Openssl 是一个方便的实用程序,用于创建自签名证书。您可以在所有操作系统(如 Windows、MAC 和 Linux 版本)上使用 OpenSSL。 Windows openssl 下载 前提条件 开启wmi,配置网卡,参考 自签名证书 创建我们自己的根 CA 证书和 CA 私钥(我们自己充当 CA)创建服务器…

【蓝桥杯嵌入式】新建工程 | 点亮LED | LCD配置

目录 源代码 硬件资源 产品图片 硬件布局 资源配置表 跳线 下载方式 新建工程 点亮LED code 函数调用 LED初始化 Delay点灯 流水灯 积累流水灯 整合效果 LCD移植 lcd.c lcd.h fonts.h LCD初始化 main.c预览 闲话 源代码 网址&#xff1a;后续会上传…

FL Studio版本升级-FL Studio怎么升级-FL Studio升级方案

已经是新年2024年了&#xff0c;但是但是依然有很多朋友还在用FL Studio12又或者FL Studio20&#xff0c;今天这篇文章教大家如何升级FL Studio21 FL Studio 21是Image Line公司开发的音乐编曲软件&#xff0c;除了软件以外&#xff0c;我们还提供了FL Studio的升级服务&#…

设计模式2-对象池模式

对象池模式&#xff0c;Object Pool Pattern&#xff0c;当你的应用程序需要频繁创建和销毁某种资源&#xff08;比如数据库连接、线程、socket连接等&#xff09;时&#xff0c;Object Pool 设计模式就变得很有用。它通过预先创建一组对象并将它们保存在池中&#xff0c;以便在…

海量数据处理商用短链接生成器平台 - 3

第三章 商用短链平台实战-账号微服务流量包设计 第1集 账号微服务和流量包数据库表索引规范讲解 简介&#xff1a;账号微服务和流量包数据库表索引规范讲解 索引规范 主键索引名为 pk_字段名; pk即 primary key;唯一索引名为 uk_字段名&#xff1b;uk 即 unique key普通索引…

Linux 36.2@Jetson Orin Nano基础环境构建

Linux 36.2Jetson Orin Nano基础环境构建 1. 源由2. 步骤2.1 安装NVIDIA Jetson Linux 36.2系统2.2 必备软件安装2.3 基本远程环境2.3.1 远程ssh登录2.3.2 samba局域网2.3.3 VNC远程登录 2.4 开发环境安装 3. 总结 1. 源由 现在流行什么&#xff0c;也跟风来么一个一篇。当然&…

vue3 中使用pinia 数据状态管理(在Taro 京东移动端框架中的使用)

1.pinia 介绍 pinia 是 Vue 的存储库&#xff0c;它允许您跨组件/页面共享状态。就是和vuex一样的实现数据共享。 依据Pinia官方文档&#xff0c;Pinia是2019年由vue.js官方成员重新设计的新一代状态管理器&#xff0c;更替Vuex4成为Vuex5。 Pinia 目前也已经是 vue 官方正式的…

[机器学习]K-means——聚类算法

一.K-means算法概念 二.代码实现 # 0. 引入依赖 import numpy as np import matplotlib.pyplot as plt # 画图依赖 from sklearn.datasets import make_blobs # 从sklearn中直接生成聚类数据# 1. 数据加载 # 生成&#xff08;n_samples&#xff1a;样本点&#xff0c;centers&…

python+ flask+MySQL旅游数据可视化81319-计算机毕业设计项目选题推荐(免费领源码)

摘要 信息化社会内需要与之针对性的信息获取途径&#xff0c;但是途径的扩展基本上为人们所努力的方向&#xff0c;由于站在的角度存在偏差&#xff0c;人们经常能够获得不同类型信息&#xff0c;这也是技术最为难以攻克的课题。针对旅游数据可视化等问题&#xff0c;对旅游数据…

深入解析 Spring 事务机制

当构建复杂的企业级应用程序时&#xff0c;数据一致性和可靠性是至关重要的。Spring 框架提供了强大而灵活的事务管理机制&#xff0c;成为开发者处理事务的首选工具。本文将深入探讨 Spring 事务的使用和原理&#xff0c;为大家提供全面的了解和实际应用的指导。 本文概览 首…

IAR报错:Error[Pa045]: function “halUartInit“ has no prototype

在IAR工程.c文件末尾添加一个自己的函数&#xff0c;出现了报错Error[Pa045]: function "halUartInit" has no prototype 意思是没有在开头添加函数声明&#xff0c;即void halUartInit(void); 这个问题我们在keil中不会遇到&#xff0c;这是因为IAR编译器规则的一…