Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
gobuster — 用Go编写的目录/文件、DNS和虚拟主机爆破工具 | Kitploit
工具/GitHubGitHub/oj/gobuster
DNS和子域名枚举信息收集Web安全模糊测试渗透测试云安全
GitHuboj/gobuster

gobuster

用Go编写的目录/文件、DNS和虚拟主机爆破工具

查看仓库
14.0k1.6k7个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Gobuster

Go Report Card License Backers on Open Collective Sponsors on Open Collective

💻 简介

一款用 Go 编写的快速灵活的暴力破解工具

Gobuster 是一款用 Go 编写的高性能目录/文件、DNS 和虚拟主机暴力破解工具。它专为安全专家和渗透测试人员设计,追求快速、可靠且易于使用。

✨ 功能特点

  • 🚀 高性能:多线程扫描,可配置并发数
  • 🔍 多模式:目录、DNS、虚拟主机、S3、GCS、TFTP 及模糊测试模式
  • 🛡️ 安全专注:专为渗透测试和安全评估构建
  • 🐳 Docker 支持:提供 Docker 容器版本
  • 🔧 可扩展:基于模式的扫描及自定义字典

🎯 Gobuster 能干什么?

  • Web 目录/文件枚举:发现 Web 服务器上隐藏的目录和文件
  • DNS 子域名发现:支持通配符的子域名查找
  • 虚拟主机检测:识别目标 Web 服务器上的虚拟主机
  • 云存储枚举:发现公开的 Amazon S3 和 Google Cloud Storage 存储桶
  • TFTP 文件发现:查找 TFTP 服务器上的文件
  • 自定义模糊测试:通过可自定义参数进行灵活模糊测试

🚀 快速开始

root@kitploit:~
# 安装 gobuster
go install github.com/OJ/gobuster/v3@latest

# 基本目录枚举
gobuster dir -u https://example.com -w /path/to/wordlist.txt

# DNS 子域名枚举
gobuster dns -do example.com -w /path/to/wordlist.txt

# 虚拟主机发现
gobuster vhost -u https://example.com -w /path/to/wordlist.txt

# S3 存储桶枚举
gobuster s3 -w /path/to/bucket-names.txt

📦 安装

快速安装(推荐)

root@kitploit:~
go install github.com/OJ/gobuster/v3@latest

要求:Go 1.24 或更高版本

其他安装方式

使用二进制发布版

从 releases 页面 下载预编译的二进制文件。

使用 Docker

root@kitploit:~
# 拉取最新镜像
docker pull ghcr.io/oj/gobuster:latest

# 在 Docker 中运行 gobuster
docker run --rm -it ghcr.io/oj/gobuster:latest dir -u https://example.com -w /usr/share/wordlists/dirb/common.txt

从源码构建

root@kitploit:~
git clone https://github.com/OJ/gobuster.git
cd gobuster
go mod tidy
go build

安装问题排查

如果遇到问题:

  • 确保已安装 Go 1.24+:go version
  • 检查 $GOPATH 和 $GOBIN 环境变量
  • 确认 $GOPATH/bin 已加入 $PATH

🎯 使用方法

Gobuster 使用基于模式的方式。每种模式专用于特定的枚举任务:

root@kitploit:~
gobuster [模式] [选项]

获取帮助

root@kitploit:~
gobuster help                   # 显示通用帮助
gobuster help [模式]            # 显示特定模式的帮助
gobuster [模式] --help          # 另一种帮助语法

📊 可用模式

🌐 目录模式(dir)

枚举 Web 服务器上的目录和文件。

基本用法:

root@kitploit:~
gobuster dir -u https://example.com -w wordlist.txt

高级选项:

root@kitploit:~
# 指定文件扩展名
gobuster dir -u https://example.com -w wordlist.txt -x php,html,js,txt

# 自定义请求头和 Cookie
gobuster dir -u https://example.com -w wordlist.txt -H "Authorization: Bearer token" -c "session=value"

# 显示响应长度
gobuster dir -u https://example.com -w wordlist.txt -l

# 按状态码过滤
gobuster dir -u https://example.com -w wordlist.txt -s 200,301,302

🔍 DNS 模式(dns)

通过 DNS 解析发现子域名。

基本用法:

root@kitploit:~
gobuster dns -do example.com -w wordlist.txt

高级选项:

root@kitploit:~
# 使用自定义 DNS 服务器
gobuster dns -do example.com -w wordlist.txt -r 8.8.8.8:53

# 增加线程以加快扫描速度
gobuster dns -do example.com -w wordlist.txt -t 50

🏠 虚拟主机模式(vhost)

发现 Web 服务器上的虚拟主机。

基本用法:

root@kitploit:~
gobuster vhost -u https://example.com --append-domain -w wordlist.txt

☁️ S3 模式(s3)

枚举 Amazon S3 存储桶。

基本用法:

root@kitploit:~
gobuster s3 -w bucket-names.txt

启用调试输出:

root@kitploit:~
gobuster s3 -w bucket-names.txt --debug

🖥️ TFTP 模式(tftp)

枚举 TFTP 服务器上的文件。

基本用法:

root@kitploit:~
gobuster tftp -s 10.0.0.1 -w wordlist.txt

☁️ GCS 模式(gcs)

枚举 Google Cloud Storage 存储桶。

基本用法:

root@kitploit:~
gobuster gcs -w bucket-names.txt

启用调试输出:

root@kitploit:~
gobuster gcs -w bucket-names.txt --debug

🔧 模糊测试模式(fuzz)

使用 FUZZ 关键字进行自定义模糊测试。

基本用法:

root@kitploit:~
gobuster fuzz -u https://example.com?FUZZ=test -w wordlist.txt

高级示例:

root@kitploit:~
# 模糊测试 URL 参数
gobuster fuzz -u https://example.com?param=FUZZ -w wordlist.txt

# 模糊测试请求头
gobuster fuzz -u https://example.com -H "X-Custom-Header: FUZZ" -w wordlist.txt

# 模糊测试 POST 数据
gobuster fuzz -u https://example.com -d "username=admin&password=FUZZ" -w passwords.txt

💰 支持

Backers on Open Collective Sponsors on Open Collective

喜欢这个工具?支持它!

如果你已经是我们支持者中的一员,你太棒了。如果还不是,那也没关系!想要支持我们?成为支持者!

Backers

所有捐赠给此项目的资金将捐赠给慈善机构。完整的慈善捐款记录将在处理完毕后在此仓库中提供。

💡 常见用例

Web 应用安全测试

root@kitploit:~
# 综合目录枚举
gobuster dir -u https://target.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,html,js,txt,asp,aspx,jsp

# API 端点发现
gobuster dir -u https://api.target.com -w /usr/share/wordlists/dirb/common.txt -x json

# 管理后台发现
gobuster dir -u https://target.com -w admin-panels.txt -s 200,301,302,403

DNS 侦察

root@kitploit:~
# 全面子域名枚举
gobuster dns -do target.com -w /usr/share/wordlists/dnsrecon/subdomains-top1mil-5000.txt -t 50

云存储评估

root@kitploit:~
# 带模式匹配的 S3 存储桶枚举
gobuster s3 -w company-names.txt -v

# GCS 存储桶枚举
gobuster gcs -w company-names.txt -v

🔧 故障排查

常见问题

“权限被拒绝”或“访问被拒绝”

  • 尝试通过 -t 参数减少线程数
  • 使用 --delay 参数在请求之间添加延迟
  • 使用 -a 参数更换用户代理

“连接超时”

  • 使用 --timeout 参数增加超时时间
  • 对较慢的目标减少线程数
  • 检查你的网络连接

“未找到任何结果”

  • 确认目标 URL 可访问
  • 尝试不同的字典
  • 通过 -s 参数检查状态码过滤

性能问题

扫描缓慢

  • 通过 -t 参数增加线程数(但注意不要压垮目标)
  • 使用更小、更有针对性的字典

🎯 最佳实践

安全测试指南

  1. 始终获得适当授权 后再测试任何目标
  2. 从较低的线程数开始,避免压垮服务器
  3. 针对目标技术使用合适的字典
  4. 遵守速率限制,必要时添加延迟
  5. 监控你的网络流量,避免被检测

字典选择

  • 对于 Web 应用:使用技术特定的字典(PHP、ASP.NET 等)
  • 对于 API:侧重于常见 API 端点和版本控制模式
  • 对于 DNS:使用包含常见模式的子域名专用字典
  • 对于云存储:使用公司/品牌特定的模式

输出管理

root@kitploit:~
# 将结果保存到文件
gobuster dir -u https://example.com -w wordlist.txt -o results.txt

# 使用安静模式以获得干净输出
gobuster dir -u https://example.com -w wordlist.txt -q

📚 附加资源

推荐字典

  • SecLists:https://github.com/danielmiessler/SecLists
  • FuzzDB:https://github.com/fuzzdb-project/fuzzdb
  • Seclists DNS:https://github.com/danielmiessler/SecLists/tree/master/Discovery/DNS

快乐黑客!🚀

请记住:始终负责任且获得适当授权后进行测试。

变更记录

3.8.2

3.8.2

  • 修复展开模式以再次显示完整 URL
3.8.1

3.8.1

  • 修复展开模式导致条目显示两次的问题
3.8

3.8

  • 添加 exclude-hostname-length 标志以动态调整排除长度,由 @0xyy66 贡献
  • 修复模糊测试查询参数
  • 在 dir 模式中添加 --force 标志,以便在预检错误发生时继续执行
3.7

3.7

  • 使用新的 CLI 库
  • 由于新的 CLI 库,增加了更多短选项
  • 更友好的错误消息
  • 清理 DNS 模式
  • 将 DNS 模式中的 show-cname 重命名为 check-cname
  • 移除了 verbose 标志,改用 debug
  • 版本命令现在也显示一些构建变量以提供更多信息
  • 切换到另一个 pkcs12 库,以支持使用 SHA256 HMAC 的 openssl3 生成的 p12 文件
  • 字典中的注释(以 # 开头的字符串)不再被忽略
  • 在虚拟主机模式下,如果可能忘记使用 --append-domain 开关则发出警告
  • 允许在虚拟主机模式下排除状态码和长度
  • 添加 automaxprocs 以在具有 CPU 限制的 Docker 中使用
  • 启用调试时记录 HTTP 请求
  • 允许在模糊测试模式中模糊测试 Host 请求头
  • 当输出被重定向时自动禁用进度输出
  • 修复使用 --no-progress 运行时出现多余特殊字符的问题
  • 当使用代理和基于 HTTP 的 URL 进行虚拟主机模式时发出警告,因为这可能不如预期工作
  • 添加 interface 和 local-ip 参数,用于指定 HTTP 请求的出站接口
  • 添加 TLS 重新协商支持
  • 修复带有模式的进度显示(感谢 @acammack)
  • 修复备份发现(感谢 @acammack)
  • 支持 DNS 服务器的 TCP 协议
  • 添加 URL 查询参数支持
3.6

3.6

  • 字典偏移参数,用于跳过字典中的指定行数
  • 防止在目录模式构建 URL 时出现双斜杠
  • 允许在 --exclude-length 中使用多个值和范围
  • DNS 暴力破解的 no-fqdn 参数,用于禁用系统搜索域。如果你配置了一些搜索域,这应该会加快运行速度。https://github.com/OJ/gobuster/pull/418
3.5

3.5

  • 允许在状态码和状态码黑名单中使用范围。示例:200,300-305,404
3.4

3.4

  • 启用 TLS1.0 和 TLS1.1 支持
  • 添加 TFTP 模式以搜索 tftp 服务器上的文件
3.3

3.3

  • 支持 TLS 客户端证书 / mtls
  • 支持从文件加载扩展名
  • 支持模糊测试 POST 体、HTTP 请求头和基本认证
  • 新增选项:不规范化请求头名称
3.2

3.2

  • 使用 Go 1.19
  • 正确使用 context
  • 移除通配符标志(DNS 模式除外)
  • 彩色输出
  • 超时重试
  • Google Cloud 存储桶枚举
  • 修复 nil 引用错误
3.1

3.1

  • 枚举公有 AWS S3 存储桶
  • 模糊测试模式
  • 指定 HTTP 方法
  • 添加模式支持。你现在可以指定一个包含模式的文件,这些模式将逐行应用于每个单词。其中出现的 {GOBUSTER} 将被替换为当前的字典条目。请谨慎使用,因为这可能会大大增加发出的请求数量。
  • 之前分配给代理的简写 p 标志,现在被模式标志使用
3.0

3.0

  • 新的 CLI 选项,模式严格分离(-m 已经消失!)
  • 性能优化和更好的连接处理
  • 能够枚举虚拟主机名
  • 支持自定义 HTTP 请求头
下载工具