Web 扫描神器:Gobuster 保姆级教程(附链接)
一、介绍Gobuster 是一款用于目次和文件枚举的开源工具。它主要用于在Web应用步伐或网站上查找隐藏的目次和文件,从而进行信息网络或渗透测试。以下是 Gobuster 的一些主要特点和功能:
[*] 快速且高效: Gobuster 被计划为快速、高效的工具,可以大概迅速扫描目的网站上的目次和文件。
[*] 多种扫描模式: 支持多种扫描模式,包括目次枚举、子域名枚举等。用户可以根据必要选择符合的模式。
[*] 多种字典支持: Gobuster 支持使用自界说字典文件进行扫描,用户可以根据必要选择符合的字典来提高扫描效果。
[*] 多线程支持: 工具使用多线程技能,可以大概同时处置惩罚多个请求,提高扫描效率。
[*] HTTP 头部支持: Gobuster 允许用户指定自界说的 HTTP 头部信息,以便更好地模拟不同的请求场景。
[*] 递归扫描: 可以进行递归扫描,深度探索目的网站的目次结构。
[*] 指定 HTTP 方法: 用户可以指定使用的 HTTP 方法,如 GET、POST 等。
[*] 结果输出: 扫描结果可以输出到终端或保存到文件中,支持多种输特别式。
[*] 代理支持: 可以设置代理,用于在扫描中使用代理服务器。
[*] 自动化和集成: 可以通过脚本或其他工具集成 Gobuster 进行自动化扫描任务。
Gobuster 是一个通用的目次和文件枚举工具,适用于多种场景,包括渗透测试、漏洞评估以及网站信息搜集。在使用 Gobuster 进行扫描任务时,请确保遵循法律和道德准则,并在有授权的范围内使用。
二、安装 Gobuster
apt-get install gobuster
三、使用 Gobuster
参考文章https://i-blog.csdnimg.cn/blog_migrate/003a2ce7eb50c2e24a8c624c260c5930.pnghttps://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 请求使用的代理或
--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 指定线程
https://i-blog.csdnimg.cn/blog_migrate/4670c09440c88e0763559458b39ba3ae.png
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地址 https://i-blog.csdnimg.cn/blog_migrate/3ec68abc99bbf8c8fcafff16f4f72c61.png
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 请求使用的代理
--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 基本身份验证用户名 https://i-blog.csdnimg.cn/blog_migrate/f72f4ec17b6d8a3e42f28f9f3a58d271.png
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 请求使用的代理或
--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?
https://i-blog.csdnimg.cn/blog_migrate/55b411be6c19c6c2336e952dc3b4e9c7.png
剩余三个模式因为没有实行环境以是不干了!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]