当前位置: 首页 > news >正文

【Gobuster 详细使用教程】

Gobuster 详细使用教程

  • 一、Gobuster 核心功能与安装验证
    • 1. 功能概述
    • 2. 安装验证
  • 二、目录/文件枚举(dir 模式)
    • 1. 基础命令与参数
    • 2. 高级参数
    • 3. 实战技巧
  • 三、子域名枚举(dns 模式)
    • 1. 基础命令与参数
    • 2. 高级参数
    • 3. 实战技巧
  • 四、虚拟主机扫描(vhost 模式)
    • 1. 适用场景
    • 2. 结果分析
  • 五、实践案例
    • 1. 目标:example.com
    • 2. 发现漏洞示例
  • 六、结果优化与工具集成
    • 1. 过滤误报
    • 2. 自动化流程
    • 3. 与 Burp Suite 联动
  • 七、推荐词表与扩展工具

本文是 Gobuster 详细使用教程,涵盖目录/文件枚举、子域名爆破、参数优化及实践技巧。


一、Gobuster 核心功能与安装验证

1. 功能概述

  • 目录/文件枚举:通过字典爆破发现隐藏的 Web 路径(如 /admin/backup.zip)。
  • 子域名枚举:基于 DNS 字典发现目标域名的子域名(如 dev.example.com)。
  • 虚拟主机扫描:识别同一 IP 下的不同虚拟主机(如多租户环境)。

2. 安装验证

检查是否安装成功:

gobuster --version  # 输出版本信息(如 gobuster v3.6)

二、目录/文件枚举(dir 模式)

1. 基础命令与参数

gobuster dir -u https://target.com -w /path/to/wordlist.txt -t 50 -x php,html,json -b 403,404 -o output.txt
  • 参数解析:
    • -u:目标 URL(支持 HTTP/HTTPS)。
    • -w:字典文件路径(推荐使用 SecLists 中的 Discovery/Web-Content 词表)。
    • -t:并发线程数(默认 10,根据网络环境调整)。
    • -x:扫描文件扩展名(如 php,html)。
    • -b:忽略的状态码(如 403,404 减少干扰)。
    • -o:结果保存路径。

2. 高级参数

  • 动态过滤:
    --status-codes 200,302  # 仅显示特定状态码
    --exclude-length 123    # 排除指定响应长度的结果(应对动态404页面)
    
  • 速率控制:
    --delay 100ms           # 请求间隔(避免触发WAF速率限制)
    --timeout 10s           # 单请求超时时间
    
  • 代理与认证:
    --proxy http://127.0.0.1:8080   # 通过Burp Suite代理查看请求
    -U admin -P password            # HTTP基础认证凭据
    

3. 实战技巧

  • 智能词表选择:
    • 通用词表:common.txt(快速覆盖常见路径)。
    • 深度扫描:big.txtraft-large-words.txt(全面但耗时)。
    • 自定义词表:结合目标技术栈(如 /wp-admin 针对 WordPress)。
  • 扩展模式:
    --wildcard              # 处理通配符响应(如所有路径返回200)
    --add-slash             # 自动为目录添加斜杠(/)
    

三、子域名枚举(dns 模式)

1. 基础命令与参数

gobuster dns -d example.com -w /path/to/subdomains.txt -t 50 -r 8.8.8.8 -o subs.txt
  • 参数解析:
    • -d:目标主域名。
    • -w:子域名字典(推荐 SecListsDiscovery/DNS/subdomains-top1million-5000.txt)。
    • -r:指定 DNS 服务器(如 Cloudflare 1.1.1.1)。
    • -t:并发线程数(DNS查询通常可调高至100+)。

2. 高级参数

  • 递归扫描:
    --wildcard              # 处理通配符DNS记录(如 *.example.com)
    --append-domain         # 自动将字典条目与主域名拼接(如 `api` → `api.example.com`)
    
  • 结果优化:
    --show-ips              # 显示解析到的IP地址(识别CDN背后的真实IP)
    --no-color              # 禁用颜色输出(便于日志处理)
    

3. 实战技巧

  • 字典优化:
    • 合并目标历史子域名(从 Wayback MachineSecurityTrails 导出)。
    • 添加行业关键词(如 dev, staging, api)。
  • 结果交叉验证:
    cat subs.txt | httpx -status-code -title -ports 80,443,8080  # 快速筛选存活子域名
    

四、虚拟主机扫描(vhost 模式)

1. 适用场景

同一 IP 托管多个网站(如云主机),通过 Host 头区分不同服务。

gobuster vhost -u https://192.168.1.100 -w /path/to/vhosts.txt -t 30 -k
  • 参数解析:
    • -u:目标 IP 或基础 URL。
    • -w:虚拟主机的候选列表(如 admin.example.com)。
    • -k:跳过 TLS 证书验证(应对自签名证书)。

2. 结果分析

  • 状态码差异:对比默认响应与带 Host 头的响应。
  • 内容长度差异:使用 --exclude-length 过滤相同长度的干扰项。

五、实践案例

1. 目标:example.com

  • 步骤 1:子域名枚举
    gobuster dns -d example.com -w subdomains-top5000.txt -t 100 -r 1.1.1.1 -o subs.txt
    
  • 步骤 2:存活检测
    cat subs.txt | httpx -threads 50 -status-code -title -ports 80,443,8080 -o alive.txt
    
  • 步骤 3:目录爆破
    gobuster dir -u https://api.example.com -w raft-large-words.txt -t 50 -x php,asp -b 404 -o api_paths.txt
    
  • 步骤 4:敏感路径分析
    cat api_paths.txt | grep "200" | grep "admin\|backup\|config"
    

2. 发现漏洞示例

  • 路径泄露:/backup.zip 包含数据库凭据。
  • 未授权访问:/admin 无认证直接访问。
  • 过时组件:/phpinfo.php 暴露 PHP 版本和配置。

六、结果优化与工具集成

1. 过滤误报

gobuster dir ... | grep -v "\.js\|\.css\|\.png"  # 排除静态资源

2. 自动化流程

结合 cron 定时任务:

# 每日自动扫描
0 2 * * * /usr/bin/gobuster dir -u https://target.com -w wordlist.txt -o /var/log/gobuster_$(date +\%F).log

3. 与 Burp Suite 联动

  • 代理模式:通过 --proxy 参数将请求转发至 Burp,分析拦截的请求。
  • 结果导入:将 Gobuster 发现的路径导入 Burp 的 Target 模块进行深度测试。

七、推荐词表与扩展工具

  • 词表仓库:
    • SecLists:包含 Web 路径、子域名、参数等词表。
    • Assetnote Wordlists:针对现代 Web 应用的优化词表。
  • 扩展工具:
    • httpx:快速验证存活主机。
    • ffuf:更灵活的模糊测试工具(支持多参数爆破)。

通过以上配置和技巧,Gobuster 可成为 Web 安全测试项目中高效的侦察武器。重点在于灵活调整参数、合理选择词表,并与其他工具形成自动化工作流。

相关文章:

  • 力扣hot100_二分查找
  • 如何 编译 px4
  • 乐仓VUE常用点
  • 工具介绍《WireShark》
  • 结构型设计模式
  • Linux cma预留内存使用与理解
  • “产业大数据”区域产业经济发展的新引擎!
  • dbeaver连接mongodb 插入日期变成了字符串
  • 希尔排序:算法原理与应用解析
  • 云端存储新纪元:SAN架构驱动的智能网盘解决方案
  • 机器学习实战之数据预处理、监督算法、无监督算法、模型评估与改进-思维导图拆分篇
  • Verilog 中寄存器类型(reg)与线网类型(wire)的区别
  • leetcode 2255. 统计是给定字符串前缀的字符串数目 简单
  • flutter-实现瀑布流布局及下拉刷新上拉加载更多
  • 详解java体系实用知识总结
  • 创新前沿 | 接管主机即刻增量CDP备份,高效保障接管期间业务安全!
  • 工业4G路由器赋能智慧停车场高效管理
  • 基于Linux下的MyBash命令解释器
  • 【13】Ajax爬取案例实战
  • 通过Docker快速搭建VoceChat | 开源轻量自托管聊天工具
  • 中央网信办:重点整治违规AI产品、利用AI制作发布谣言等突出问题
  • 铁路上海站今日预计发送旅客65.8万人次,同比增长超16%
  • 工行一季度净赚841亿元降3.99%,营收降3.22%
  • 李在明涉嫌违反《公职选举法》案将于5月1日宣判
  • 北京公园使用指南
  • 挤占学生伙食费、公务考察到景区旅游……青岛通报5起违规典型问题