banner
lca

lca

真正的不自由,是在自己的心中设下牢笼。

gobuster基础用法

image

概述#

gobuster 这款工具个人主要用来做目录扫描,平常也用的比较少,用的比较多的是ffuf,后面也会总结下 ffuf 工具。

gobuster 是一款用 go 语言写的目录扫描、DNS 和 vhost 暴力破解工具,gobuster 支持多种模式,在使用前根据使用目的选择不同的模式,扫描模式可以设置多种类型,dir、dns、s3、gcs、vhost、fuzz、tftp 等。

模式如下:

模式描述
dir网站目录 / 文件暴力破解
dnsdns 子域名爆破
vhost虚拟主机爆破
fuzz爆破指定的 FUZZ 关键字
s3枚举开放的 s3 buckets
gcs枚举 google cloud buckets
tftp枚举 tftp 文件
  • 项目地址
  • 安装

设置了 go 环境直接安装

go install github.com/OJ/gobuster/v3@latest

如果想查看帮助文档,可以在命令行下指定不同的模式查看不同的文档。

gobuster dir -h

image

gobuster dns -h

image

dir 模式#

  • 基础用法
gobuster dir -u "http://example.com/" -w /Users/lca/pentesting/web-basic/p12-字典收集/fuzz1.txt

image

dir 模式一些常用的设置选项

-c: 指定 cookie 扫描,扫描认证后台
-x: 指定扫描文件后缀,如 php,jsp,asp
-m: 指定 http 请求方法
-b: 指定不需要的状态码,默认过滤 404 状态码
-s: 只接受特定 http 状态码
-u: 指定目标 url
-w: 指定字典文件
-q: 静默模式
-t: 指定扫描线程,默认是 10 个线程
-f: 每个 url 后面强制接/
--wildcard: 发现通配符时强制扫描,这个参数告诉 gobuster 应该如何处理响应中的通配符或不完整的响应,如遇到 404 页面是否继续扫描等,开启后,遇到这种 404,403 的状态码就会强制扫描,保证扫描的完整性和准确性
-exclude-length ints: 排除指定长度的内容
-r: 跟随重定向
-e: 扩展模式,打印完整的 URL
-k: 跳过 TLS 证书验证

如下:

  • 扫描目标网站 mysite.com,指定 cookie 进行登录扫描,url 后缀是 php,html,50 个线程,字典文件为 common-files.txt 。
gobuster dir -u https://mysite.com/ -c 'session=123456' -t 50 -w common-files.txt -x .php,.html
  • 使用 --wildcard 参数强制扫描,过滤 301,401,403,404,500,扫描线程为 20
gobuster dir -u https://mysite.com/ -w common-files.txt --wildcard -b 301,401,403,404,500 -t 20
gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://mysite.com/ -f -t 200

dns 模式#

dns 模式用来枚举目标子域名

  • 基础用法
gobuster dns -d mysite.com -w ~/wordlists/subdomains.txt
  • 常用的选项参数

-d: 指定域名
-i: 显示 ip 地址
--wildcard: 通 dir 模式,强制扫描通配符
-t: 指定扫描速度

vhost 模式#

vhost 模式是一种用于模拟虚拟主机攻击的模式,它可以帮助我们在不知道 Web 应用程序所有可能的虚拟主机的情况下,枚举目标网站上存在的虚拟主机。

这个模式在玩htb的时候遇到的比较多。

gobuster vhost -w /usr/share/wordlists/subnames.txt -u http://shoppy.htb

image

同时在此模式下指定 dir 可以进行目录扫描。

gobuster vhost dir -u shoppy.htb -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-110000.txt -t 150

fuzz 模式#

fuzz 模式可以用来扫描一些 url 的参数,如有个 url 如下:http://example.com/about.php?id=1,需要枚举 id 参数,那么可以通过 fuzz 模式进行参数枚举,id 替换成 FUZZ。

gobuster fuzz -u http://example.com/about.php?FUZZ=1 -w parameter-names.txt

image

其他模式#

用的比较少,就简单的列举写使用方式

  • s3
gobuster s3 -w bucket-names.txt
  • gcs
gobuster gcs -w bucket-names.txt
  • tftp
gobuster tftp -s tftp.example.com -w common-filenames.txt

@hacking articles上有个关于 gobuster 的思维导图。

image

参考#

图片来自:https://wallhaven.cc/

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。