Gobuster

Reconnaissance v3.8.2 · 04.09.2025 активный

Быстрый брутфорсер директорий, файлов, DNS-субдоменов и виртуальных хостов. Написан на Go, работает значительно быстрее аналогов на Python. Поддерживает режимы: dir, dns, vhost, fuzz, s3. Используется для поиска скрытых эндпоинтов, backup-файлов, административных панелей и неиндексированных ресурсов. gobuster dir -u https://target.com -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt

v3.8.2
04.09.2025 current
Добавлен 10.06.2026 · Обновлён 10.06.2026 · Reconnaissance
Установка
# Debian/Ubuntu/Kali
apt install gobuster

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

# Из исходников
git clone https://github.com/OJ/gobuster
cd gobuster && go build && ./gobuster --help
переведено ИИ

Gobuster

Отчёт о качестве Go Лицензия Спонсоры на Open Collective Спонсоры на Open Collective

💻 Введение

Быстрый и гибкий инструмент для перебора, написанный на Go

Gobuster — это высокопроизводительный инструмент для перебора каталогов/файлов, DNS и виртуальных хостов, написанный на Go. Он разработан для быстроты, надежности и простоты использования для специалистов по безопасности и тестировщиков на проникновение.

✨ Возможности

  • 🚀 Высокая производительность: Многопоточное сканирование с настраиваемым уровнем параллелизма
  • 🔍 Несколько режимов: Каталогов, DNS, виртуальных хостов, S3, GCS, TFTP и режим неопределенности
  • 🛡️ Фокус на безопасности: Создан для тестирования на проникновение и оценки безопасности
  • 🐳 Поддержка Docker: Доступен как Docker-контейнер
  • 🔧 Расширяемость: Сканирование на основе паттернов и пользовательские списки слов

🎯 Что умеет Gobuster?

  • Перечисление каталогов/файлов веб-приложений: Обнаружение скрытых каталогов и файлов на веб-серверах
  • Обнаружение поддоменов DNS: Поиск поддоменов с поддержкой подстановочных знаков
  • Обнаружение виртуальных хостов: Идентификация виртуальных хостов на целевых веб-серверах
  • Перечисление облачных хранилищ: Обнаружение открытых бакетов Amazon S3 и Google Cloud Storage
  • Обнаружение файлов TFTP: Поиск файлов на серверах TFTP
  • Пользовательский фаззинг: Гибкий фаззинг с настраиваемыми параметрами

🚀 Быстрый старт

# Установка 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

📦 Установка

Быстрая установка (Рекомендуется)

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

Требования: Go 1.24 или выше

Альтернативные методы установки

Использование бинарных релизов

Скачайте предварительно скомпилированные бинарные файлы со страницы релизов.

Использование Docker

# Загрузка последнего образа
docker pull ghcr.io/oj/gobuster:latest

# Запуск gobuster в Docker
docker run --rm -it ghcr.io/oj/gobuster:latest dir -u https://example.com -w /usr/share/wordlists/dirb/common.txt

Сборка из исходного кода

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 использует подход, основанный на режимах. Каждый режим предназначен для определенных задач перечисления:

gobuster [режим] [опции]

Получение справки

gobuster help                   # Показать общую справку
gobuster help [режим]           # Показать справку для конкретного режима
gobuster [режим] --help         # Альтернативный синтаксис справки

📊 Доступные режимы

🌐 Режим каталогов (dir)

Перечисление каталогов и файлов на веб-серверах.

Базовое использование:

gobuster dir -u https://example.com -w wordlist.txt

Расширенные опции:

# С расширениями файлов
gobuster dir -u https://example.com -w wordlist.txt -x php,html,js,txt

# С пользовательскими заголовками и куки
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.

Базовое использование:

gobuster dns -do example.com -w wordlist.txt

Расширенные опции:

# Использование пользовательского 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)

Обнаружение виртуальных хостов на веб-серверах.

Базовое использование:

gobuster vhost -u https://example.com --append-domain -w wordlist.txt

☁️ Режим S3 (s3)

Перечисление бакетов Amazon S3.

Базовое использование:

gobuster s3 -w bucket-names.txt

С отладочным выводом:

gobuster s3 -w bucket-names.txt --debug

🖥️ Режим TFTP (tftp)

Перечисление файлов на серверах tftp.

Базовое использование:

gobuster tftp -s 10.0.0.1 -w wordlist.txt

☁️ Режим GCS (gcs)

Перечисление бакетов Google Cloud Storage.

Базовое использование:

gobuster gcs -w bucket-names.txt

С отладочным выводом:

gobuster gcs -w bucket-names.txt --debug

🔧 Режим фаззинга (fuzz)

Пользовательский фаззинг с ключевым словом FUZZ.

Базовое использование:

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

Продвинутые примеры:

# Фаззинг параметров 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

💰 Поддержка

Спонсоры на Open Collective Спонсоры на Open Collective

Нравится этот инструмент? Поддержите его!

Если вы уже нас поддерживаете, вы молодец. Если нет, это тоже нормально! Хотите нас поддержать? Станьте спонсором!

Спонсоры

Все средства, пожертвованные этому проекту, будут переданы на благотворительность. Полный журнал благотворительных пожертвований будет доступен в этом репозитории по мере их обработки.

💡 Типичные сценарии использования

Тестирование безопасности веб-приложений

# Комплексное перечисление каталогов
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

# Комплексное перечисление поддоменов
gobuster dns -do target.com -w /usr/share/wordlists/dnsrecon/subdomains-top1mil-5000.txt -t 50

Оценка облачных хранилищ

# Перечисление бакетов 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. Мониторьте сетевой трафик, чтобы избежать обнаружения

Выбор списков слов

  • Для веб-приложений: Используйте списки слов, специфичные для технологий (PHP, ASP.NET и т.д.)
  • Для API: Сосредоточьтесь на общих конечных точках API и паттернах версионирования
  • Для DNS: Используйте списки слов для поддоменов с распространенными паттернами
  • Для облачных хранилищ: Используйте паттерны, специфичные для компаний/брендов

Управление выводом

# Сохранение результатов в файл
gobuster dir -u https://example.com -w wordlist.txt -o results.txt

# Использование тихого режима для чистого вывода
gobuster dir -u https://example.com -w wordlist.txt -q

📚 Дополнительные ресурсы

Рекомендуемые списки слов


Удачного хакинга! 🚀

Помните: всегда тестируйте ответственно и с надлежащим разрешением.

Изменения

3.8.2

3.8.2

  • Исправлен расширенный режим для снова отображения полного URL

3.8.1

3.8.1

  • Исправлено дублирование записей в расширенном режиме

3.8

3.8

  • Добавлен флаг exclude-hostname-length для динамической настройки exclude-length от @0xyy66
  • Исправлены параметры запроса для фаззинга
  • Добавлен флаг --force в режиме dir для продолжения выполнения при ошибках предварительной проверки

3.7

3.7

  • использование новой библиотеки cli
  • гораздо больше коротких опций благодаря новой библиотеке cli
  • более дружелюбные сообщения об ошибках
  • очистка режима DNS
  • переименовано show-cname в check-cname в режиме dns
  • избавились от флага verbose и вместо него введен debug
  • команда version теперь также показывает некоторые переменные сборки для получения дополнительной информации
  • переключились на другую библиотеку pkcs12 для поддержки p12, созданных с помощью openssl3, которые используют SHA256 HMAC
  • комментарии в списках слов (строки, начинающиеся с #) больше не игнорируются
  • предупреждение в режиме vhost, если мог быть забыт ключевой коммутатор --append-domain
  • позволяет исключить код состояния и длину в режиме vhost
  • добавлен automaxprocs для использования в docker с ограничениями cpu
  • логирование HTTP-запросов при включенном debug -Позволяет фаззинг заголовка Host в режиме fuzz
  • автоматическое отключение вывода прогресса при перенаправлении вывода
  • исправлены лишние специальные символы при запуске с --no-progress
  • предупреждение при использовании режима vhost с прокси и http-базированными url, так как это может работать не так, как ожидалось
  • добавлены параметры interface и local-ip для указания исходящего интерфейса для HTTP-запросов
  • добавлена поддержка tls renegotiation
  • исправлен прогресс с паттернами от @acammack
  • исправлено обнаружение резервных копий от @acammack
  • поддержка tcp-протокола на DNS-серверах
  • добавлена поддержка параметров запроса URL

3.6

3.6

  • Параметр смещения списка слов для пропуска x строк из списка слов
  • предотвращение двойных косых черт при построении URL в режиме dir -Позволяет несколько значений и диапазонов для --exclude-length
  • параметр no-fqdn для dns-брутфорса для отключения использования поисковых доменов системы. Это должно ускорить запуск, если у вас настроены некоторые поисковые домены. 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
  • используйте контексты правильно
  • избавьтесь от флага wildcard (кроме режима DNS)
  • цветной вывод
  • повтор при тайм-ауте
  • перечисление бакетов google cloud
  • исправлены ошибки nil-ссылок

3.1

3.1

  • перечисление публичных бакетов AWS S3
  • режим фаззинга
  • указание HTTP-метода
  • добавлена поддержка паттернов. Теперь вы можете указать файл, содержащий паттерны, которые применяются к каждому слову по одному в строке. Каждое вхождение термина {GOBUSTER} в нем будет заменено на текущий элемент списка слов. Пожалуйста, используйте с осторожностью, так как это может значительно увеличить количество отправленных запросов.
  • Сокращенный флаг p, который был назначен для прокси, теперь используется флагом паттерна

3.0

3.0

  • Новые опции CLI, так что режимы строго разделены (-m теперь отсутствует!)
  • Оптимизация производительности и улучшенная обработка соединений
  • Возможность перечисления имен vhost
  • Опция для предоставления пользовательских HTTP-заголовков
Комментарии
Войдите, чтобы оставить комментарий