• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Перевод документации к Findomain

NokZKH

Переводчик
Забанен
Регистрация
09.02.2019
Сообщения
99
Реакции
121
Пожалуйста, обратите внимание, что пользователь заблокирован
Самое быстрое и кроссплатформенное приложение для перечисления поддоменов.

Comparision
Эта таблицадаст вам представление о том, почему вы должны использовать findomain вместо других инструментов. Домен, используемый для теста, был microsoft.com в виртуальной машине BlackArch :

Код:
Host: KVM/QEMU (Standard PC (i440FX + PIIX, 1996) pc-i440fx-3.1)
Kernel: 5.2.6-arch1-1-ARCH
CPU: Intel (Skylake, IBRS) (4) @ 2.904GHz
Memory: 139MiB / 3943MiB

Инструмент, используемый для расчета времени, является командой time в Linux. Вы можете увидеть все детали тестов по этой ссылке,

ИнструментВремя поискаВсего субдоменов найденоНагрузка на CPUНагрузка на RAM
Findomainreal 0m38.701s5622Very LowVery Low
assetfinderreal 6m1.117s4630Very LowVery Low
Subl1st3rreal 7m14.996s996LowLow
Amass*real 29m20.301s332Very HighVery High
  • Я не смог дождаться, пока этот тест закончится, было похоже, что он никогда не закончится, и, кроме того, он использовал очень много ресурсов моего компьютера, поэтому я завершил его сам.
Замечание: Тест был сделан 10/08/2019

Характеристики
  • Обнаружение поддоменов без использования brute-force, использование Certificate Transparency .
  • Обнаружение поддоменов с или без IP-адреса в соответствии с аргументами пользователя.
  • Считать цель из пользовательских аргументов (-t).
  • Чтение списка целей из файла и поиск их субдоменов с IP-адресом или без него, а также выполнение записи в выходные файлы для каждого домена, если это задано пользователем, рекурсивно.
  • Записать вывод в файл TXT.
  • Записать вывод в файл CSV.
  • Записать вывод в файл JSON.
  • Кроссплатформенная поддержка.
  • Дополнительная поддержка нескольких API.
  • Поддержка прокси.

Заметка: Поддержка прокси-сервера предназначена только для проксификации запросов API, фактическая реализация для обнаружения IP-адреса поддоменов не поддерживает прокси-функцию, и она все еще выполняется с использованием сети хоста, если вы используете опцию -p.

Как это устроено?

Этот инструмент не использует обычные методы обнаружения поддоменов, инструмент использует Certificate Transparency для поиска поддоменов, а его метод делает его инструментом наиболее быстрым и надежным. Инструмент использует несколько общедоступных API для выполнения поиска. Если вы хотите узнать больше о Certificate Transparency, прочитайте https://www.certificate-transparency.org/

API, которые мы используем в данный момент:

Заметки
Если API отмечены **, они требуют токен доступа для работы. Посмотрите как настроить и использовать их в документации Findomain.

Если API отмечены *, то можно использовать с токен доступа по желанию, но если у вас начнутся проблемы с этими API, то создайте его. Посмотрите как настроить и использовать их в документации Findomain.

Нужно больше API?
Если вы знаете другие API, которые должны быть добавлены в наш инструмент, то напишите вот здесь.

Поддерживаемые платформы
Все платформы поддерживаемые нами в бинарниках являются только 64-битными, и у нас нет планов добавлять поддержку 32-битных платформ, если вы хотите, чтобы поддержка 32-битных версий выполнялась, перейдите к документации.

Сборка для 32 бит или другой платформы
Если вы хотите собрать наш инструмент для вашей 32-битной системы или другой платформы, выполните следующие действия:

Замечание: Должны быть установлены: rust, make а также perl.

С использованием crate:
  1. cargo install findomain
  2. Выполнить инструмент из $HOME/.cargo/bin.
Используя исходный код Github:
  1. Клонируйте репозиторий или скачайте исходный код,
  2. Разархивируйте исходный код (необходим только если вы скачали сжатый файл).
  3. Перейдите в папку, где находится исходный код.
  4. Execute cargo build --release
  5. Теперь ваш бинарный файл находится в target/release/findomain и вы можете использовать его.

Установка Android (Termux)
Установите Termux, откройте его и следуйте командам:

Код:
$ pkg install rust make perl
$ cargo install findomain
$ cd $HOME/.cargo/bin
$ ./findomain

Установка в Linux используя исходный код
Если вы хотите установить наш инструмент, то вы также можете сделать это вручную, скомпилировав исходный код или используя предварительно скомпилированный двоичный файл.

Важно!!! Должны быть установлены: rust, make а также perl.

Код:
$ git clone https://github.com/Edu4rdSHL/findomain.git
$ cd findomain
$ cargo build --release
$ sudo cp target/release/findomain /usr/bin/
$ findomain

Установка в Linux с использованием скомпилированных артефактов(artifacts)
Код:
$ wget https://github.com/Edu4rdSHL/findomain/releases/latest/download/findomain-linux
$ chmod +x findomain-linux
$ ./findomain-linux

Если вы используете дистрибутив BlackArch Linux, вам просто нужно использовать:

$ sudo pacman -S findomain

Установка на ARM
Код:
$ wget https://github.com/Edu4rdSHL/findomain/releases/latest/download/findomain-arm
$ chmod +x findomain-arm
$ ./findomain-arm

Установка на Aarch64 (Raspberry Pi)
Код:
$ wget https://github.com/Edu4rdSHL/findomain/releases/latest/download/findomain-aarch64
$ chmod +x findomain-aarch64
$ ./findomain-aarch64

Установка на Windows
Скачайте файл: https://github.com/Edu4rdSHL/findomain/releases/latest/download/findomain-windows.exe

Откройте CMD и перейдите в каталог, в который был загружен findomain-windows.exe.

Извлеките findomain-windows в оболочке CMD.

Установка на MacOS

Код:
$ wget https://github.com/Edu4rdSHL/findomain/releases/latest/download/findomain-osx
$ chmod +x findomain-osx.dms
$ ./findomain-osx.dms

Настройка токенов доступа
В разделе API вы можете найти шаги по настройке, которые нужны или могут использоваться с токенами доступа.

Настройка API Facebook
История


Когда я показал процесс использования Facebook CT API в начале я использовал токен Webhook для поиска в API, как следствие, когда многие пользователи используют один и тот же токен, достигается предел, и пользователь больше не может выполнять поиск в API Facebook, пока Facebook снова не разблокирует его. Начиная с версии 0.2.2 Findomain, пользователи могут установить собственный токен доступа Facebook для webook и передать его в findomain, установив переменнуюfindomain_fb_token . Изменение было введено здесь, Также с 23/08/2019 я удалил токен webhook, который использовался по умолчанию, и он больше не будет работать, если вы используете findomain <0.2.2. Пожалуйста, используйте версию> = 0.2.2.

Начиная с Findomain 0.2.4, вам не нужно устанавливать переменную findomain_fb_token. Если вы не установите эту переменную, то Findomain будет использовать один из наших токенов доступа для API Facebook CT, в противном случае, если вы установите findomain_fb_token, то Findomain будет использовать ваш токен. Пожалуйста, если вы можете создать свой собственный токен, то сделайте это. Предел использования токенов доступа достигается, когда много людей используют его, и тогда наш инструмент сломается(((

Получение токена Webhook


Первый шаг - получить токен приложения Facebook. Чтобы создать Webhook, выполните следующие действия:
  1. Перейдите: https://developers.facebook.com/apps/
  2. Нажмите «Создать приложение», введите желаемое имя.
  3. На следующем экране выберите «Настроить» в опции «Webhooks».
  4. Перейдите в «Конфигурация» -> «Основные» и нажмите «Показать» в опции «Секретный ключ приложения».
  5. Теперь откройте в своем браузере следующий URL: https://graph.facebook.com/oauth/ac...your-secret-key&grant_type=client_credentials
Важно!!! Замените your-app-id и your-secret-key, которые вы получили на 4-м шаге.

6. JSON должен выглядеть так:

Код:
{
  "access_token": "xxxxxxxxxx|yyyyyyyyyyyyyyyyyyyyyyy",
  "token_type": "bearer"
}

7. Сохраните значение access_token.

Теперь вы можете использовать это значение для установки токена доступа следующим образом:

Системы на основе Unix (Linux, BSD, MacOS, Android с Termux и т. Д.):
Введите в свой терминал:

$ findomain_fb_token="YourAccessToken" findomain -(options)

Системы Windows:
Введите в CMD:

> set findomain_fb_token=YourAccessToken && findomain -(options)

Замечания: В Windows вам нужны специальные символы, такие как |, добавьте ^ перед специальными символами, чтобы пропустить их и не заключать токен в кавычки . Пример: set findomain_fb_token=xxxxxxx^|yyyyyyyy && findomain -(options)

Совет: Если вы не хотите писать токен доступа при каждом запуске findomain, экспортируйте findomain_fb_token в системах на основе Unix, способом export findomain_fb_token = "YourAccessToken" в файл .bashrc и установите переменную findomain_fb_token в вашей системе Windows как described here,

Настройка Spyse API для использования с токеном
  1. Откройте https://account.spyse.com/register и зарегистрируйтесь (включая подтверждение по электронной почте).
  2. Войдите в свою учетную запись Spyse и перейдите к https://account.spyse.com/user
  3. Найдите раздел «API-токен» и нажмите «Показать».
  4. Сохраните этот токен доступа.

Теперь вы можете использовать это значение для установки токена доступа следующим образом:

Системы на основе Unix (Linux, BSD, MacOS, Android с Termux и т. Д.):
Введите в свой терминал:

$ findomain_spyse_token="YourAccessToken" findomain -(options)

Системы Windows:
Введите в CMD:

> set findomain_spyse_token=YourAccessToken && findomain -(options)

Замечания: В Windows вам нужны специальные символы, такие как |, добавьте ^ перед специальными символами, чтобы пропустить их и не заключать токен в кавычки . Пример: set findomain_spyse_token=xxxxxxx^|yyyyyyyy && findomain -(options)

Совет: Если вы не хотите писать токен доступа при каждом запуске findomain, экспортируйте findomain_fb_token в системах на основе Unix, способом export findomain_fb_token = "YourAccessToken" в файл .bashrc и установите переменную findomain_fb_token в вашей системе Windows как described here,

Использование
Вы можете использовать инструмент двумя способами, только установив домен или обнаружив домен + IP-адрес.

Код:
findomain 0.2.2
Eduard Tolosa <tolosaeduard@gmail.com>
The fastest and cross-platform subdomain enumerator, don't waste your time.

USAGE:
    findomain [FLAGS] [OPTIONS]

FLAGS:
    -a, --all-apis    Use all the available APIs to perform the search. It take more time but you will have a lot of
                      more results.
    -h, --help        Prints help information
    -i, --get-ip      Return the subdomain list with IP address if resolved.
    -V, --version     Prints version information

OPTIONS:
    -f, --file <file>        Sets the input file to use.
    -o, --output <output>    Write data to output file in the specified format. [possible values: txt, csv, json]
    -p, --proxy <proxy>      Use a proxy to make APIs requests.
    -t, --target <target>    Target host

Примеры
Произвести поиск поддоменов и вывести всю информацию:
findomain -t example.com

Произвести поиск поддоменов, используя все API, и вывести всю информацию:
findomain -t example.com -a

Выполнить поиск поддоменов и экспортировать данные в файл CSV:
findomain -t example.com -o csv

Выполнить поиск поддоменов с использованием всех API и экспортировать данные в файл CSV:
findomain -t example.com -a -o csv

Выполнить поиск поддоменов и определить IP-адреса поддоменов (если это возможно):
findomain -t example.com -i

Выполнить поиск поддоменов со всеми API и определить IP-адреса поддоменов (если это возможно):
findomain -t example.com -i -a

Выполнить поиск поддоменов по всем API и определить IP-адрес поддоменов (если это возможно), экспортировав данные в файл CSV:
findomain -t example.com -i -a -o csv

Выполнить поиск поддоменов с помощью прокси (http://127.0.0.1:8080 в этом случае остальные сессии продолжают работать без прокси, вам просто нужно добавить флаг -p к командам before):
findomain -t example.com -p http://127.0.0.1:8080

Переведено специально для https://xss.pro
Переводчик статьи - https://xss.pro/members/177895/
Оригинал - https://github.com/Edu4rdSHL/findomain
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх