День 28. Subdomain Enumeration / Перечисление поддоменов
Изучите различные способы обнаружения поддоменов для расширения поверхности атаки на целевой объект.
1.Краткий
Перечисление поддоменов — это процесс поиска допустимых поддоменов для домена, но зачем мы это делаем? Мы делаем это, чтобы расширить поверхность атаки и попытаться обнаружить больше потенциальных точек уязвимости.
Мы рассмотрим три различных метода перечисления поддоменов: перебор (Brute Force), OSINT (разведка на основе открытых источников) и виртуальный хост.
Запустите машину и переходите к следующему заданию.
What is a subdomain enumeration method beginning with B?
Вопрос: Что такое метод перечисления поддоменов, начинающийся с буквы B?
Вопрос: Что такое метод перечисления поддоменов, начинающийся с буквы O?
Вопрос: Что такое метод перечисления поддоменов, начинающийся с буквы V?
2.OSINT - SSL/TLS-сертификаты
Когда центр сертификации ( ЦС ) создает SSL/ TLS- сертификат (Secure Sockets Layer/Transport Layer Security) для домена , ЦС участвуют в создании так называемых «журналов прозрачности сертификатов» (Certificate Transparency, CT). Это общедоступные журналы каждого SSL/ TLS -сертификата, созданного для доменного имени. Цель журналов прозрачности сертификатов — предотвратить использование вредоносных и случайно созданных сертификатов. Мы можем использовать этот сервис в своих интересах для обнаружения поддоменов, принадлежащих домену; такие сайты, как https://crt.sh, предлагают базу данных сертификатов с возможностью поиска, которая отображает текущие и исторические результаты.
Перейдите на crt.sh и найдите доменное имя tryhackme.com , найдите запись, зарегистрированную 26.12.2020 , и введите указанный ниже домен, чтобы ответить на вопрос.
What is the name of the directory beginning “/mo….” that was discovered?
Вопрос: Какой домен был зарегистрирован на crt.sh 26.12.2020?
3.OSINT — поисковые системы
Поисковые системы содержат триллионы ссылок на более чем миллиард веб-сайтов, что может стать отличным ресурсом для поиска новых поддоменов. Использование расширенных методов поиска на таких сайтах, как Google, например, поисковой системы site: filter, может сузить результаты поиска. Например, поисковая система site:*.domain.com -site:www.domain.com будет отображать только результаты, ведущие к доменному имени domain.com, но исключать любые ссылки на www.domain.com; таким образом, она показывает нам только поддомены, принадлежащие domain.com.
Зайдите в Google и введите поисковый запрос site:*.tryhackme.com -site:www.tryhackme.com, который должен показать поддомен tryhackme.com; используйте этот поддомен, чтобы ответить на вопрос ниже.
What is the TryHackMe subdomain beginning with S discovered using the above Google search?
Вопрос: Что это за поддомен TryHackMe, начинающийся на букву S , найденный с помощью вышеуказанного поиска в Google?
4.DNS Bruteforce
Метод перебора DNS- запросов (системы доменных имен) — это метод перебора десятков, сотен, тысяч или даже миллионов различных возможных поддоменов из заранее определенного списка часто используемых поддоменов. Поскольку этот метод требует множества запросов, мы автоматизируем его с помощью инструментов, чтобы ускорить процесс. В данном случае мы используем инструмент под названием dnsrecon. Нажмите кнопку «Просмотреть сайт», чтобы открыть статический сайт, нажмите кнопку «Запустить запрос DNSrecon», чтобы начать моделирование, а затем ответьте на вопрос ниже.
What is the first subdomain found with the dnsrecon tool?
Вопрос: Какой первый поддомен обнаруживается с помощью инструмента dnsrecon?
5.OSINT - Sublist3r
Чтобы ускорить процесс обнаружения поддоменов в рамках OSINT , мы можем автоматизировать описанные выше методы с помощью таких инструментов, как Sublist3r : нажать кнопку «Просмотреть сайт», чтобы открыть статический сайт, и запустить моделирование в Sublist3r для обнаружения нового поддомена, который поможет ответить на вопрос ниже.
What is the first subdomain discovered by sublist3r?
Вопрос: Какой первый субдомен был обнаружен программой sublist3r?
6.Виртуальные хосты
Некоторые поддомены не всегда отображаются в общедоступных результатах DNS , например, в версиях веб-приложений для разработчиков или административных порталах. Вместо этого запись DNS может храниться на частном DNS- сервере или записываться на компьютерах разработчиков в файл /etc/hosts (или c:\windows\system32\drivers\etc\hosts для пользователей Windows), который сопоставляет доменные имена с IP-адресами.
Поскольку веб-серверы могут размещать несколько веб-сайтов на одном сервере, при запросе веб-сайта от клиента сервер знает, какой веб-сайт хочет получить клиент, из заголовка Host. Мы можем использовать этот заголовок Host, внося в него изменения и отслеживая ответ, чтобы увидеть, обнаружили ли мы новый веб-сайт.
Как и в случае с DNS Bruteforce, мы можем автоматизировать этот процесс, используя список часто используемых поддоменов.
Запустите AttackBox, а затем попробуйте выполнить следующую команду на компьютере службы ИТ-поддержки Acme, чтобы обнаружить новый поддомен.
user@machine$ ffuf -w /usr/share/wordlists/SecLists/Discovery/DNS/namelist.txt -H "Host: FUZZ.acmeitsupport.thm" -u http://10.48.140.25
Приведенная выше команда использует ключ -w для указания списка слов, которые мы будем использовать. Ключ -H добавляет/редактирует заголовок (в данном случае, заголовок Host), у нас есть ключевое слово FUZZ в поле, где обычно указывается поддомен, и именно здесь мы будем пробовать все варианты из списка слов.
Поскольку приведенная выше команда всегда выдает корректный результат, нам необходимо отфильтровать вывод. Мы можем сделать это, используя результат размера страницы с ключом -fs . Отредактируйте приведенную ниже команду, заменив {size} на наиболее часто встречающееся значение размера из предыдущего результата, и попробуйте ее на AttackBox.
user@machine$ ffuf -w /usr/share/wordlists/SecLists/Discovery/DNS/namelist.txt -H "Host: FUZZ.acmeitsupport.thm" -u http://10.48.140.25 -fs {size}Эта команда имеет синтаксис, аналогичный первой, за исключением ключа -fs , который указывает ffuf игнорировать любые результаты, имеющие указанный размер.
Приведенная выше команда должна была показать два положительных результата, с которыми мы раньше не сталкивались.
What is the first subdomain discovered?
Вопрос: Какой поддомен был обнаружен первым?
What is the second subdomain discovered?
Вопрос: Что представляет собой второй обнаруженный поддомен?
Основная группа обучения ИБ
Lab-группу с полезным софтом / книгами / аудио.
Чат для обсуждений, задавай свои вопросы.
P.S. С вами был @Fnay_Offensive
До новой встречи, user_name!