探索 Gobuster 帮助菜单和模式

Beginner
立即练习

引言

Gobuster 是一款强大的命令行工具,用于暴力破解 URI(目录和文件)、DNS 子域和虚拟主机名。它是渗透测试人员和安全爱好者发现隐藏的 Web 内容和网络资产的常用工具。理解其帮助菜单对于有效利用其功能至关重要。

在本实验中,你将学习如何探索 Gobuster 的帮助菜单,以了解其全局标志和各种操作模式。你将特别关注 dir(目录)、dns(DNS 子域)和 vhost(虚拟主机)模式,这些模式常用于不同类型的枚举任务。通过本实验的结束,你将熟悉如何访问 Gobuster 及其特定模式的帮助,从而使你能够在实际场景中更有效地使用该工具。

使用 --help 标志运行 gobuster

在此步骤中,你将使用 --help 标志运行 gobuster 命令来显示其主帮助菜单。这将提供该工具基本用法、可用命令和全局选项的概述。

~/project 目录中打开你的终端。执行以下命令:

gobuster --help

你应该会看到类似以下的输出,显示通用用法和可用命令:

Usage:
  gobuster [command]

Available Commands:
  dir         Uses directory/file enumeration mode
  dns         Uses DNS subdomain enumeration mode
  fuzz        Uses fuzzing mode
  help        Help about any command
  s3          Uses AWS S3 bucket enumeration mode
  vhost       Uses VHOST enumeration mode
  version     Shows the current version

Flags:
  -h, --help          help for gobuster
  -z, --no-color      Disable color output
  -q, --quiet         Don't print banner and other noise
  -v, --verbose       Verbose output (errors)

Use "gobuster [command] --help" for more information about a command.

此输出提供了如何使用 gobuster 的快速参考,并列出了其主要模式。

识别全局标志

在此步骤中,你将识别可与任何 gobuster 命令一起使用的全局标志。这些标志列在主帮助输出的底部。

回顾上一步的输出。查找标题为 Flags: 的部分。这些标志是全局的,意味着它们可以应用于 gobuster 本身或其任何子命令(如 dirdns 等)。

你应该识别出的全局标志是:

  • -h, --help: 显示命令的帮助。
  • -z, --no-color: 禁用彩色输出。
  • -q, --quiet: 抑制横幅和其他非必要输出。
  • -v, --verbose: 启用详细输出,通常显示错误。

理解这些全局标志可以让你控制 gobuster 的输出和行为,无论你使用的是哪种特定模式。

列出可用模式 (dir, dns, vhost 等)

在此步骤中,你将列出 Gobuster 中可用的各种操作模式。这些模式决定了 gobuster 将执行的枚举类型。

gobuster --help 的输出中,找到标题为 Available Commands: 的部分。此部分列出了 gobuster 支持的所有不同模式或命令。

你应该能够识别出以下模式:

  • dir: 用于目录和文件枚举。
  • dns: 用于 DNS 子域枚举。
  • fuzz: 用于模糊测试 (fuzzing)。
  • s3: 用于 AWS S3 存储桶枚举。
  • vhost: 用于虚拟主机枚举。

这些模式中的每一种都有其自己特定的选项和用法。了解这些模式是为你的枚举任务选择正确工具的第一步。

查看特定模式 (dir) 的帮助

在此步骤中,你将学习如何获取特定 gobuster 模式的详细帮助,以 dir 模式为例。dir 模式用于对 Web 服务器上的目录和文件进行暴力破解。

要查看 dir 模式的帮助菜单,请在你的终端中执行以下命令:

gobuster dir --help

你将看到针对 dir 模式的更详细输出,包括其独特的标志和用法示例。输出将类似于:

Usage:
  gobuster dir [flags]

Flags:
  -u, --url string         目标 URL (例如 http://example.com)
  -w, --wordlist string    单词列表的路径
  -a, --useragent string   设置 User-Agent 字符串 (默认 "gobuster/3.X.X")
  -c, --cookies string     用于请求的 Cookies
  -e, --expanded           显示展开的 URL
  -f, --follow-redirect    跟随重定向
  -H, --headers stringArray  添加自定义头信息
  -k, --no-tls-validation  跳过 TLS 证书验证
  -l, --no-length          不打印响应体长度
  -m, --method string      要使用的 HTTP 方法 (默认 "GET")
  -n, --no-status          不打印状态码
  -p, --proxy string       要用于请求的代理 [scheme://host:port]
  -r, --random-useragent   使用随机的 User-Agent 字符串
  -s, --status-codes string  要包含的状态码 (例如 "200,204,301") (默认 "200,204,301,302,307,401,403,500")
  -t, --threads int        并发线程数 (默认 10)
  -v, --verbose            详细输出 (错误)
  -x, --extensions string  要搜索的文件扩展名 (例如 "php,html")
  -z, --no-color           禁用彩色输出
      --exclude-length string  按内容长度排除响应 (例如 "123,456")
      --exclude-wildcard string  按通配符排除响应 (例如 "200,404")
      --timeout duration   HTTP 超时时间 (默认 10s)

Global Flags:
  -h, --help          gobuster 的帮助
  -q, --quiet         不打印横幅和其他无关输出

此详细帮助对于理解特定枚举任务的所有可用选项至关重要。

查看其他特定模式 (dns) 的帮助

在此步骤中,你将查看另一个特定 gobuster 模式的帮助菜单:dnsdns 模式用于对 DNS 子域进行暴力破解。

要查看 dns 模式的帮助菜单,请在你的终端中执行以下命令:

gobuster dns --help

你将看到针对 dns 模式的详细输出,包括其独特的标志和用法示例。输出将类似于:

Usage:
  gobuster dns [flags]

Flags:
  -d, --domain string      目标域名 (例如 example.com)
  -w, --wordlist string    单词列表的路径
  -r, --resolver string    使用自定义 DNS 服务器 (例如 1.1.1.1)
  -t, --threads int        并发线程数 (默认 10)
  -z, --no-color           禁用彩色输出
      --no-wildcard        不打印通配符条目
      --wildcard-ips string  要从通配符条目中排除的 IP (例如 "192.168.1.1,192.168.1.2")

Global Flags:
  -h, --help          gobuster 的帮助
  -q, --quiet         不打印横幅和其他无关输出
  -v, --verbose       详细输出 (错误)

通过探索不同模式的帮助菜单,你可以快速了解它们特定的功能和选项,这对于在各种枚举场景中有效使用 gobuster 至关重要。这种方法也适用于所有其他 gobuster 模式。

总结

在此实验中,你已成功探索了 gobuster 命令行工具的帮助菜单及其各种操作模式。你首先查看了主帮助菜单,以了解其通用用法并识别全局标志。然后,你深入研究了 dirdns 等特定模式,学习了如何访问它们的详细帮助选项。

你现在已了解:

  • 如何使用 gobuster --help 获取工具的概述。
  • 如何识别适用于所有 gobuster 命令的全局标志。
  • 可用的不同枚举模式,例如 dirdnsvhost
  • 如何使用 gobuster [mode] --help 获取任何 gobuster 模式的特定帮助。

这些基础知识对于在网络安全任务中有效使用 gobuster 至关重要,它能让你为特定的枚举需求选择正确的模式和选项。