
Пассивный инструмент для обнаружения URL, который собирает связанные с доменом URL-адреса из нескольких общедоступных источников через командную строку, с поддержкой stdin/stdout и вывода в формате JSONL для автоматизированных рабочих процессов разведки.
xurlfind3r — это утилита командной строки, предназначенная для простого и эффективного поиска URL-адресов для заданного домена. Она работает путём сбора информации из различных пассивных источников, то есть не взаимодействует напрямую с целью, а собирает уже общедоступные данные. Это делает xurlfind3r мощным инструментом для специалистов по безопасности, ИТ-профессионалов и всех, кто хочет получить представление об URL-адресах, связанных с доменом.
stdin и stdout для лёгкой интеграции в автоматизированные рабочие процессыПосетите страницу релизов и найдите подходящий архив для вашей операционной системы и архитектуры. Скачайте архив через браузер или скопируйте его URL и загрузите с помощью wget или curl:
...с помощью wget:
wget https://github.com/hueristiq/xurlfind3r/releases/download/v<version>/xurlfind3r-<version>-linux-amd64.tar.gz
...или с помощью curl:
curl -OL https://github.com/hueristiq/xurlfind3r/releases/download/v<version>/xurlfind3r-<version>-linux-amd64.tar.gz
...затем извлеките бинарник:
tar xf xurlfind3r-<version>-linux-amd64.tar.gz
[!TIP] Описанные выше шаги (скачивание и извлечение) можно объединить в одну команду:
curl -sL https://github.com/hueristiq/xurlfind3r/releases/download/v<version>/xurlfind3r-<version>-linux-amd64.tar.gz | tar -xzv
[!NOTE] В системах Windows вы можете дважды щёлкнуть по zip-архиву, чтобы извлечь исполняемый файл
xurlfind3r.
...переместите бинарник xurlfind3r в каталог, включённый в PATH. Например, в GNU/Linux и OS X:
sudo mv xurlfind3r /usr/local/bin/
[!NOTE] Пользователи Windows могут следовать инструкциям How to: Add Tool Locations to the PATH Environment Variable, чтобы добавить
xurlfind3rв свойPATH.
Перед установкой из исходников убедитесь, что Go установлен в вашей системе. Вы можете установить Go, следуя официальным инструкциям для вашей операционной системы. Для этого раздела мы будем считать, что Go уже установлен.
go install ...go install -v github.com/hueristiq/xurlfind3r/cmd/xurlfind3r@latest
go build ... (разработочная версия)Клонируйте репозиторий
git clone https://github.com/hueristiq/xurlfind3r.git
Соберите утилиту
cd xurlfind3r/cmd/xurlfind3r && \
go build .
Переместите бинарник xurlfind3r в каталог, включённый в PATH. Например, в GNU/Linux и OS X:
sudo mv xurlfind3r /usr/local/bin/
Пользователи Windows могут следовать инструкциям How to: Add Tool Locations to the PATH Environment Variable, чтобы добавить xurlfind3r в свой PATH.
[!CAUTION] Хотя разработочная версия — хороший способ оценить новейшие функции
xurlfind3rдо их выхода, учтите, что она может содержать ошибки. Официальные релизы обычно более стабильны.
Чтобы установить xurlfind3r в Docker:
Скачайте Docker-образ:
docker pull hueristiq/xurlfind3r:latest
Запустите xurlfind3r с помощью образа:
docker run --rm hueristiq/xurlfind3r:latest -h
xurlfind3r будет работать сразу после установки. Однако для работы некоторых источников требуются ключи API. Эти ключи можно добавить в файл конфигурации $HOME/.config/xurlfind3r/config.yaml, который создаётся при первом запуске, или задать в виде переменных окружения.
Пример переменных окружения для ключей API:
XURLFIND3R_KEYS_BEVIGIL=ваш_ключ_bevigil
XURLFIND3R_KEYS_INTELX=ваш_ключ_intelx
Чтобы начать использовать xurlfind3r, откройте терминал и выполните следующую команду для получения списка опций:
xurlfind3r -h
Вот как выглядит сообщение справки:
_ __ _ _ _____
__ ___ _ _ __| |/ _(_)_ __ __| |___ / _ __
\ \/ / | | | '__| | |_| | '_ \ / _` | |_ \| '__|
> <| |_| | | | | _| | | | | (_| |___) | |
/_/\_\\__,_|_| |_|_| |_|_| |_|\__,_|____/|_|
v1.3.0
USAGE:
xurlfind3r [OPTIONS]
CONFIGURATION:
-c, --configuration string (default: $HOME/.config/xurlfind3r/config.yaml)
INPUT:
-d, --domain string[] target domain
-l, --list string target domains file path
For multiple domains, use comma(,) separated value with `--domain`,
specify multiple `--domains`, load from file with `--list` or load from stdin.
SCOPE:
--include-subdomains bool match subdomain's URLs
SOURCES:
--sources bool list supported sources
-u, --sources-to-use string[] comma(,) separated sources to use
-e, --sources-to-exclude string[] comma(,) separated sources to exclude
OUTPUT:
--jsonl bool output in JSONL(ines)
-o, --output string output write file path
-O, --output-directory string output write directory path
-m, --monochrome bool stdout in monochrome
-s, --silent bool stdout in silent mode
-v, --verbose bool stdout in verbose mode
Мы приветствуем ваш вклад! Не стесняйтесь отправлять Pull Requests или сообщать об Issues. Дополнительную информацию можно найти в руководстве по участию.
Огромное спасибо всем участникам за вашу постоянную поддержку!
Этот пакет распространяется под лицензией MIT. Вы можете свободно использовать, модифицировать и распространять его при условии соблюдения условий лицензии. Полный текст лицензии можно найти в репозитории — Полный текст лицензии MIT.