September 14, 2023

5 лучших инструментов для поиска поддоменов сайта.

Шалом! Специалисту необходимо уметь пользоваться инструментами для перечисления поддоменов, так как на этапе разведки поддомены могут рассказать много полезного о цели и указать на уязвимости, которые можно использовать для взлома.

Сегодня в статье:

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

В этой статье мы рассмотрим некоторые бесплатные инструменты Linux, которые могут помочь в процессе перечисления поддоменов.

Что такое поддомен?

Поддомен служит расширением основного домена веб-сайта, организуя различные разделы сайта. В структуре домена сайта есть две основные части: домен верхнего уровня (top-level domain, TLD) и домен второго уровня (second-level domain, SLD).

Рассмотрим пример сайта SecurityLab с доменом securitylab.ru. В этом случае TLD-доменом служит «.ru», а SLD — «securitylab». Теперь, если бы на сайте был специальный раздел для партнерских отношений, поддомен для этого раздела можно было бы назвать «partnerships», тогда полный URL-адрес будет выглядеть так: «partnerships.securitylab.ru».

Поиск поддоменов на этапе разведки

Этап разведки предназначен для сбора информации об архитектуре и инфраструктуре целевого веб-сайта.

Очень важно иметь хорошие навыки разведки, особенно в тестах на проникновение методом «черного ящика» (Black Box Testing), когда у вас мало или совсем нет информации о тестируемом приложении.

Существует 2 типа разведки: активная разведка и пассивная разведка. Активная разведка включает в себя сканирование портов, снятие отпечатков служб и сканирование сети для обнаружения открытых портов.

Пассивная разведка включает в себя сбор общедоступной информации о цели, такой как доменные имена, поддомены, IP-адреса и т. д. Оба типа разведки необходимы для создания хорошей основы для успешного теста на проникновение.

5 бесплатных инструментов Linux для поиска поддоменов

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

Sublist3r

Sublist3r — популярный инструмент на основе Python, используемый для перечисления поддоменов. Инструмент использует поисковые системы Google, Yahoo и Bing для обнаружения действительных поддоменов, существующих в приложении.

Чтобы установить Sublist3r на ваш ПК с Linux, запустите:

sudo pip install sublist3r

Убедитесь, что у вас установлены Python и Pip заранее. Если они у вас не установлены, установите пакеты, используя:

sudo apt install python3 python3-pip

Для Arch Linux:

sudo pacman python3 python-pip

В RHEL и Fedora:

sudo dnf install python3 python3-pip

Кроме того, вы можете создать копию репозитория Git на локальном компьютере, клонировав его. Введите это в свой терминал и выполните:

git clone https://github.com/aboul3la/Sublist3r.git

Затем установите необходимые зависимости, запустив:

sudo pip install -r requirements.txt

Чтобы использовать Sublist3r для сканирования доменов, вы должны указать целевой домен с помощью тега -d или --domain:

sublist3r -d exampledomain.com

Также вы можете указать используемую поисковую систему, количество потоков и даже интересующие вас порты. Для получения дополнительной информации о доступных параметрах проверьте страницу руководства, выполнив:

sublist3r --help

Amass

Amass — это инструмент с открытым исходным кодом, разработанный Open Web Application Security Project (OWASP) для сбора информации. ИБ-специалисты используют Amass для перечисления доменов и поддоменов, сопоставления сетей, перечисления DNS и т. д.

OWASP Amass предустановлен в последних версиях Kali Linux. Но если у вас нет этого инструмента, вы можете установить его, выполнив:

sudo apt install amass

Или вы можете установить Amass с помощью руководства по установке на странице Amass на GitHub.

Чтобы использовать Amass для перечисления доменов, выполните эту команду:

amass enum -d exampledomain.com

Команда «enum» указывает Amass выполнить перечисление доменов, а флаг -d указывает целевой домен.

Чтобы получить дополнительные параметры командной строки или информацию об Amass, запустите:

amass enum --help

DNSRecon

DNSRecon — это инструмент перечисления DNS, который может выполнять различные запросы, в том числе брутфорс доменов (brute-force) и reverse lookups. Это очень популярный и универсальный инструмент, используемый пентестерами на этапе сбора информации.

Чтобы установить DNSRecon на Kali Linux, выполните:

sudo apt install dnsrecon

В других дистрибутивах Linux вы можете установить DNSRecon, клонировав его репозиторий Git:

git clone https://github.com/darkoperator/dnsrecon.git

Сначала установите требования с помощью python3-pip:

python3-pip install -r requirements.txt

Для поиска доменов с помощью DNSRecon выполните:

dnsrecon -d domain -t std

Флаг -d указывает целевой домен, а флаг -t std указывает стандартный режим перечисления доменов.

Fierce

Fierce — это инструмент разведки DNS, который также можно использовать для перечисления поддоменов. Чтобы установить Fierce на Ubuntu и Debian, запустите:

sudo apt install fierce

Другой способ установки Fierce:

python -m pip install fierce

Вы также можете клонировать репозиторий Git с помощью:

git clone https://github.com/mschwager/fierce.git

Перейдите в каталог Fever и установите требования с помощью:

python -m pip install -r requirements.txt

Чтобы перечислить домены с помощью Fierce, выполните:

fierce --domain exapmpledomain.com

Для получения дополнительной информации о том, как использовать Fierse запустите эту команду:

fierce -h

assetfinder

assetsfinder — это инструмент на основе Golang, используемый для перечисления поддоменов. Он обнаруживает поддомены путем поиска в различных общедоступных источниках, таких как Common Crawl, DNSdumpster и VirusTotal.

Чтобы установить этот инструмент, сначала убедитесь, что на вашем Linux установлен Golang. Затем запустите:

go get -u github.com/tomnomnom/assetfinder

В Kali Linux вы можете установить assetsfinder, запустив:

sudo apt install assetfinder

Вот синтаксис использования assetsfinder для обнаружения поддоменов:

assetfinder exampledomain.com

Для получения дополнительной информации о том, как использовать инструмент, выполните:

assetfinder -h

Заключение

Существует еще больше инструментов для перечисления доменов, такие как Censys, subfinder и DNSdumpster. В Интернете доступны тысячи OSINT-инструментов, которые помогают пентестерам собирать информацию о целевом приложении. Самое примечательное в таких инструментах то, что они обычно бесплатны и просты в использовании.

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