
Многопоточный инструмент для перечисления URL/обнаружения контента на Python.
ZenBuster — это многопоточный, кроссплатформенный инструмент для перебора URL, написанный на Python Заком Гриффином (@0xTas).
Я написал этот инструмент, чтобы углубить своё знакомство с Python и лучше понять инструментарий кибербезопасности в целом. ZenBuster, возможно, не самый быстрый или многофункциональный инструмент своего рода. Однако он прост в использовании, достаточно гибок и на практике лишь незначительно медленнее других проверенных инструментов, таких как Gobuster. Лично я использовал его для решения CTF-задач на платформах вроде TryHackMe и счёл свою реализацию удовлетворительно надёжной.
Данное программное обеспечение предназначено для использования в CTF-задачах или специалистами по безопасности для сбора информации о целях:
ZenBuster способен за короткое время генерировать потенциально нежелательное количество HTTP-запросов.
Разработчики и участники проекта не несут ответственности за любой ущерб, причинённый неправильным использованием или злоупотреблением данным программным обеспечением.
Пожалуйста, производите перебор ответственно!
ZenBuster распространяется по лицензии GNU GPLv3, подробнее здесь.
ASCII-арт Инь-Янь в баннерах создан Джоан Г. Старк (jgs) и Хейли Джейн Вакеншо (hjw). Модификации, где указано 'zg', выполнены мной.
Страница справки:

Режим перебора каталогов:

Режим перебора поддоменов:

Во-первых, убедитесь, что установлена версия Python >= 3.6, затем клонируйте репозиторий командой:
git clone https://github.com/0xTas/zenbuster.git
Затем перейдите в каталог zenbuster и, если вы работаете в Linux, выполните: chmod +x zenbuster.py.
ZenBuster использует 3 внешние библиотеки. Рекомендуется установить их командой:
pip install -r requirements.txt
Устанавливаемые модули и их назначение:
Эти зависимости можно установить вручную, с помощью pip, используя requirements.txt, или при первом запуске скрипта в интерактивном режиме.
После установки зависимостей программу можно запустить следующими способами:
./zenbuster.py [опции] или python3 zenbuster.py [опции]
python zenbuster.py [опции]
./zenbuster.py -d -w /usr/share/wordlists/dirb/common.txt -u target.thm -v
python3 zenbuster.py -w ../subdomains.txt --host target.thm --ssl -O myResults.log
zenbuster -w subdomains.txt -u target.thm --quiet -ic 400, 403 (с алиасом в .bashrc)
Обновить ZenBuster просто! Перейдите в папку установки (cd zenbuster) и выполните git pull. Вот и всё!
Текущая версия ZenBuster — 1.3
| Короткий флаг | Длинный флаг | Назначение |
|---|
| -h | --help | Отображает справку и завершает работу |
| -d | --dirs | Включает режим перебора каталогов |
| -s | -ssl | Принудительно использует HTTPS в запросах |
| -v | --verbose | Выводит подробную информацию в терминал/лог |
| -q | --quiet | Минимальный вывод в терминал до финальных результатов |
| -nc | --no-color | Отключает цветной вывод в терминал |
| -nl | --no-lolcat | Отключает баннер, выводимый через lolcat (только Linux) |
| -ic <коды> | --ignore-codes | Список статус-кодов, исключаемых из результатов |
| -fl <длины> | --filter-lengths | Список длин ответов для игнорирования |
| -u <хост> | --host | Хост для сканирования |
| -w <словарь> | --wordlist | Путь к файлу словаря |
| -x <расш> | --ext | Список расширений файлов через запятую (только для каталогов) |
| -p <порт#> | --port | Пользовательский порт для нестандартных веб-серверов |
| -o [имя_файла] | --out-file | Запись результатов в файл (можно указать имя/путь) |