Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
dorkbot — Инструмент командной строки для сканирования результатов поиска Google на наличие уязвимостей | Kitploit
Инструменты/GitHubGitHub/utiso/dorkbot
OSINT (Разведка открытых источников)РазведкаСканеры уязвимостейСбор информацииВеб-безопасностьТестирование на Проникновение
GitHubutiso/dorkbot

dorkbot

Инструмент командной строки для сканирования результатов поиска Google на наличие уязвимостей

Репозиторий
5471053 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Сайт

Изображение Dorkbot

dorkbot

Сканируйте результаты поиска Google (или других источников) на наличие уязвимостей.

dorkbot — это модульный инструмент командной строки для выполнения сканирования уязвимостей на наборах веб-страниц, возвращаемых поисковыми запросами Google или другими поддерживаемыми источниками. Он разделен на два набора модулей:

  • Индексаторы — модули, возвращающие список целей
  • Сканеры — модули, выполняющие сканирование уязвимостей для каждой цели

Цели сохраняются в базе данных по мере индексации. После сканирования создается стандартный отчет в формате JSON, содержащий все найденные уязвимости. Процессы индексации и сканирования могут выполняться отдельно или совместно в одной команде (максимум по одному каждого типа).

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

  • Создайте учетные данные API Google через Консоль разработчика
  • Создайте Пользовательскую поисковую систему Google и запишите идентификатор поисковой системы, например 012345678901234567891:abc12defg3h
root@kitploit:~
$ pip3 install dorkbot wapiti3
root@kitploit:~
$ dorkbot -i google_api -o key=ваш_ключ_api_здесь -o engine=идентификатор_движка -o query="filetype:php inurl:id"
root@kitploit:~
$ dorkbot -s wapiti

Справка

root@kitploit:~
 -h, --help            Показать справку по программе (или указанному модулю)
root@kitploit:~
  --show-defaults       Показать значения по умолчанию в выводе справки

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

root@kitploit:~
usage: dorkbot [-c CONFIG] [-r DIRECTORY] [--source [SOURCE]]
               [--show-defaults] [--count COUNT] [--random] [-h] [--log LOG]
               [-v] [-V] [-d DATABASE] [-u] [--drop-tables]
               [--retries RETRIES] [--retry-on RETRY_ON] [--show-stats] [-l]
               [-n] [--list-sources] [--add-target TARGET]
               [--delete-target TARGET] [--flush-targets] [-m] [-e]
               [--list-sources] [--add-blocklist-item ITEM]
               [--delete-blocklist-item ITEM] [--flush-blocklist] [-b]
               [--fingerprint-max FINGERPRINT_MAX] [--list-blocklist]
               [--flush-fingerprints] [-g] [-f] [--mark-unscanned MARK_UNSCANNED]
               [-t] [-x] [-p SCANNER_ARG] [-s SCANNER] [-o INDEXER_ARG]
               [-i INDEXER]

options:
  -c, --config CONFIG   Файл конфигурации
  -r, --directory DIRECTORY
                        Рабочая директория dorkbot (расположение базы данных, инструментов, отчетов по умолчанию)
  --source [SOURCE]     Метка, связанная с целями
  --show-defaults       Показать значения по умолчанию в выводе справки
  -h, --help            Показать справку по программе (или указанному модулю)
  --log LOG             Путь к файлу журнала
  -v, --verbose         Включить подробное логирование (можно использовать несколько раз для увеличения подробности)
  -V, --version         Вывести версию

retrieval:
  --count COUNT         количество целей для получения (0/не задано = все)
  --random              получать цели в случайном порядке

database:
  -d, --database DATABASE
                        Файл/URI базы данных
  -u, --prune           Применить снятие отпечатков и блок-лист без сканирования
  --drop-tables         Удалить и пересоздать таблицы
  --retries RETRIES     Количество повторных попыток при ошибке операции
  --retry-on RETRY_ON   Строки ошибок, при которых следует повторить попытку (можно использовать несколько раз)
  --show-stats          Показать общее количество целей и отпечатков (включая непросканированные)

targets:
  -l, --list-targets    Список целей в базе данных
  -n, --unscanned-only  Включать только непросканированные цели
  --list-sources        Список источников в базе данных
  --add-target TARGET   Добавить URL в базу целей
  --delete-target TARGET
                        Удалить URL из базы целей
  --flush-targets       Удалить все цели
  -m, --delete-on-match
                        Удалить цель, если она соответствует элементу блок-листа
  -e, --delete-on-error
                        Удалить цель, если при обработке возникла ошибка

indexing:
  -i, --indexer INDEXER
                        Используемый модуль индексатора
  -o, --indexer-arg INDEXER_ARG
                        Передать аргумент модулю индексатора (можно использовать несколько раз)

scanning:
  -s, --scanner SCANNER
                        Используемый модуль сканера
  -p, --scanner-arg SCANNER_ARG
                        Передать аргумент модулю сканера (можно использовать несколько раз)
  -t, --test            Получить следующую сканируемую цель, но не отмечать её как просканированную
  -x, --reset-scanned   Сбросить статус сканирования всех целей
  --mark-unscanned MARK_UNSCANNED
                        Сбросить статус сканирования указанной цели

fingerprints:
  -g, --generate-fingerprints
                        Сгенерировать отпечатки для всех целей
  -f, --flush-fingerprints
                        Удалить все сгенерированные отпечатки
  --fingerprint-max FINGERPRINT_MAX
                        Максимальное количество совпадений по отпечатку перед удалением новых совпадений

blocklist:
  --list-blocklist      Список записей внутреннего блок-листа
  --add-blocklist-item ITEM
                        Добавить ip/хост/шаблон регулярного выражения во внутренний блок-лист
  --delete-blocklist-item ITEM
                        Удалить элемент из внутреннего блок-листа
  --flush-blocklist     Удалить все элементы внутреннего блок-листа
  -b, --external-blocklist EXTERNAL_BLOCKLIST
                        Дополнительный внешний файл/база данных блок-листа (можно использовать несколько раз)

Инструменты / Зависимости

Драйверы базы данных:

  • psycopg (pip install "psycopg[binary]") (рекомендуется)
  • psycopg2 (pip install psycopg2-binary)

Сканеры:

  • Wapiti (pip install wapiti3)
  • Spectre Scan
  • Arachni (устаревший)

При необходимости dorkbot ищет инструменты в следующем порядке:

  • Каталог, указанный в соответствующей опции модуля
  • Расположен в каталоге tools (по умолчанию в текущем каталоге), с подкаталогом, названным по имени инструмента
  • Доступен в PATH пользователя (например, установлен системно)

Файлы

Все базы данных SQLite, инструменты и отчеты сохраняются в рабочей директории dorkbot, которая по умолчанию является текущей. Вы можете указать конкретную директорию с помощью флага --directory. Пути по умолчанию в этой директории:

  • Файл базы данных SQLite: dorkbot.db
  • Каталог внешних инструментов: tools/
  • Каталог вывода отчетов сканирования: reports/

Файлы конфигурации по умолчанию читаются из ~/.config/dorkbot/ (Linux / MacOS) или в папке Application Data (Windows), с учетом $XDG_CONFIG_HOME / %APPDATA%. Пути по умолчанию в этой директории:

  • Файл конфигурации Dorkbot: dorkbot.ini

Файл конфигурации

Файл конфигурации (dorkbot.ini) можно использовать для предварительного заполнения некоторых флагов командной строки.

Пример dorkbot.ini:

root@kitploit:~
[dorkbot]
database=/opt/dorkbot/dorkbot.db
[dorkbot.indexers.wayback]
domain=example.com
[dorkbot.scanners.arachni]
path=/opt/arachni/bin
report_dir=/tmp/reports

База данных

База данных целей хранит URL для сканирования и источники, откуда они поступили. Она отслеживает статус сканирования каждого URL, создавая список отпечатков для каждой уникальной страницы + набора параметров и сравнивая новые цели с существующими отпечатками. Отпечатки нужно генерировать только один раз; они будут генерироваться по мере необходимости. Отпечатки и статус сканирования могут быть сброшены независимо.

Поддерживаемые адреса баз данных:

  • postgresql://[строка_подключения]
  • sqlite3:///путь/к/файлу_базы_данных.db
  • /путь/к/файлу_базы_данных.db
  • :memory:

Обратите внимание, что для целевых баз данных SQLite протокол необязателен (он все еще требуется для внешних блок-листов). Кроме того, встроенная память SQLite может использоваться для полного отказа от записи на диск, указав адрес базы данных ":memory:".

Список блокировки

Список блокировки — это набор IP-адресов, имен хостов или регулярных выражений шаблонов URL, которые не должны сканироваться. Если целевой URL соответствует любому элементу этого списка, он будет пропущен и удален из базы данных. Внутренний список блокировки хранится в базе данных dorkbot, но отдельный файл или база данных могут быть указаны путем передачи соответствующего пути к файлу или URI подключения в --external-blocklist. Цели сначала проверяются по внутреннему списку блокировки, а затем, при необходимости, по любым предоставленным внешним спискам.

Поддерживаемые внешние списки блокировки:

  • postgresql://[строка_подключения]
  • sqlite3:///путь/к/списку_блокировки.db
  • /путь/к/списку_блокировки.txt

Примеры элементов списка блокировки:

root@kitploit:~
regex:^[^\?]+$
regex:.*login.*
regex:^https?://[^.]*.example.com/.*
host:www.google.com
ip:127.0.0.1

Первый элемент удалит любую цель, не содержащую знак вопроса, то есть любой URL без GET-параметров для тестирования. Второй пытается избежать функций входа, а третий блокирует все целевые URL на example.com. Четвертый исключает цели с именем хоста www.google.com, а пятый — цели, чей хост разрешается в 127.0.0.1.

Очистка

Флаг очистки (prune) перебирает все цели, вычисляет отпечатки и помечает последующие совпадающие цели как просканированные. Он также помечает совпадения из списка блокировки как просканированные. Результатом является база данных, в которой --list-targets --unscanned-only возвращает только сканируемые URL. Он учитывает флаг random для обработки отпечатков в случайном порядке и флаг unscanned-only для пропуска уже просканированных целей, у которых обязательно уже есть отпечатки. Проверка списка блокировки учитывает --delete-on-match для удаления цели вместо пометки как просканированной и --delete-on-error для удаления любой записи, в которой не удалось разобрать правильное имя хоста или разрешить имя хоста в IP-адрес.

Общие параметры

Эти параметры применимы независимо от выбранного модуля:

root@kitploit:~
  --source [SOURCE]     Метка, связанная с целями
  --count COUNT         количество URL для получения/сканирования, или -1 для всех
  --random              получать URL в случайном порядке

Кроме того, параметры, связанные со списком блокировки: --delete-on-match / --delete-on-error приведут к пропуску соответствующих или ошибочных целей.

Модули индексации

Общие параметры

root@kitploit:~
  http-retries RETRIES     количество повторных попыток получения результатов при ошибке
  threads THREADS          количество одновременных запросов к commoncrawl.org

bing_api

root@kitploit:~
  Поиск на bing.com

  key KEY             Ключ API
  query QUERY         Поисковый запрос

commoncrawl

root@kitploit:~
  Поиск в данных обхода commoncrawl.org

  domain DOMAIN       Получить все результаты для указанного домена или поддомена
  index INDEX         Поиск по определенному индексу
  filter FILTER       Фильтр запроса для применения к поиску
  page-size PAGE_SIZE Количество результатов на страницу

google_api

root@kitploit:~
  Поиск на google.com

  key KEY             Ключ API
  engine ENGINE       ID пользовательской поисковой системы (CSE)
  query QUERY         Поисковый запрос
  domain DOMAIN       Ограничить поиск указанным доменом

pywb

root@kitploit:~
  Поиск в данных обхода указанного сервера pywb

  server SERVER       URL сервера pywb
  domain DOMAIN       Получить все результаты для указанного домена или поддомена
  cdx-api-suffix CDX_API_SUFFIX
                      Суффикс после индекса для API индекса
  index INDEX         Поиск по определенному индексу
  field FIELD         Поле (fl) для запроса
  filter FILTER       Фильтр запроса для применения к поиску
  page-size PAGE_SIZE
                      Количество результатов на страницу

stdin

root@kitploit:~
  Принимает URL из стандартного ввода, по одному на строку

wayback

root@kitploit:~
  Поиск в данных обхода archive.org

  domain DOMAIN       Получить все результаты для указанного домена или поддомена
  filter FILTER       Фильтр запроса для применения к поиску
  page-size PAGE_SIZE Количество результатов на страницу
  from FROM           Начальная временная метка
  to TO               Конечная временная метка

Модули сканирования

Общие параметры

root@kitploit:~
  args ARGS           Список дополнительных аргументов, разделенных пробелами
  report-dir REPORT_DIR
                      Каталог для сохранения файла отчета
  report-filename REPORT_FILENAME
                      Имя файла для сохранения отчета об уязвимостях
  report-append       Добавить к файлу отчета, если он существует
  report-indent REPORT_INDENT
                      Уровень отступа для JSON отчета об уязвимостях
  label LABEL         Понятное название поля для включения в отчет об уязвимостях

arachni

root@kitploit:~
  Сканирование с помощью сканера командной строки arachni

  path PATH           Путь к бинарному файлу сканера

scnr

root@kitploit:~
  Сканирование с помощью сканера командной строки scnr

  path PATH           Путь к бинарному файлу сканера

wapiti

root@kitploit:~
  Сканирование с помощью сканера командной строки wapiti

  path PATH           Путь к бинарному файлу сканера
Скачать инструмент