🖧 Обзор инструментов перечисления DNS с лучшими практиками и примерами |

🖧 Обзор инструментов перечисления DNS с лучшими практиками и примерами

Обзоры

Первый вопрос, который может возникнуть у вас при обсуждении перечисления DNS: “Что именно представляет собой DNS-сервер, и почему мы пытаемся перечислить информацию с этого сервера?”.

DNS серверы

Серверы DNS преобразуют доменные имена и имена хостов в соответствующие IP-адреса.

Они подобны душе Интернета, направляя доменное имя на конкретный веб-сервер.

Например, когда вы набираете в своем веб-браузере google.com, этот запрос сначала отправляется на DNS-сервер, который преобразует google.com в его IP-адрес.

Затем на этот IP-адрес отправляется запрос, и веб-страница загружается в вашем браузере.

Перечисление DNS

К сожалению, DNS является одним из наиболее эксплуатируемых протоколов.

Перечисление DNS или опрос DNS – это процесс и техника получения информации с серверов DNS.

Эта информация включает имена компьютеров, почтовые серверы, IP-адреса, связанные с ними серверы имен и другие записи DNS.

Инструменты для перечисления DNS

Существует несколько инструментов, которые вы можете использовать для перечисления DNS.

К счастью, большинство из этих инструментов предустановлены в дистрибутивах, ориентированных на безопасность, таких как Kali Linux или Parrot.

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

  • NMAP
  • DNSEnum
  • DNSRecon
  • Команда хоста
  • NsLookup

В этом руководстве будет использоваться Kali Linux – один из самых популярных дистрибутивов Linux для тестирования на проникновение и аудита безопасности.

1. NMAP

NMAP – это инструмент безопасности, который в основном используется для сканирования сети и обнаружения портов.

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

Например, следующая команда выведет список всех скриптов NMAP для перечисления DNS.

ls -al /usr/share/nmap/scripts/ | grep -e "dns-"

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

  • broadcast-dns-service-discovery
  • Dns-brute

1.1 Скрипт Broadcast-dns-service-discovery

Этот скрипт выявляет сервисы с помощью протокола DNS Discovery Protocol на веб-сервере.

Скрипт посылает несколько многоадресных DNS-SD запросов и собирает все ответы, полученные сервером.

Однако все это делается процедурно.

Сначала скрипт посылает запрос for _services._dns-sd._udp.local, в котором перечисляются все запущенные службы.

После этого он посылает еще один запрос к каждой из перечисленных служб и собирает эту информацию.

Ниже приведен пример команды, использующей скрипт Nmap broadcast-dns-service-discovery для выполнения перечисления DNS.

nmap --script=broadcast-dns-service-discovery [target-domain],
Например:
nmap --script=broadcast-dns-service-discovery example.com

1.2 Скрипт Nmap Dns-brute

Как следует из названия, этот скрипт выполняет перебор сервера, чтобы попытаться получить все имена хостов.

Этот скрипт достаточно эффективен для перечисления DNS, так как принимает несколько аргументов, как указано ниже.

  • Dns-brute.domain: Позволяет задать доменное имя для перебора, если не указан хост.
  • Dns-brute.hostlist: Передать список строк хостов.
  • Dns-brute.srv: Поиск записей SRV.
  • Dns-brute.srvlist: Передать список SRV-записей.
  • Dns-brute.threads: Указать количество потоков для перечисления.

Мы не будем передаваться никаких аргументов и будем использоваться только скрипт dns-brute:

nmap -T4 -p 53 --script dns-brute [target-domain]
например
nmap -T4 -p 53 --script dns-brute example.com

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

2. DNSEnum

DNSEnum – это мощный Perl-скрипт, который выполняет перечисления DNS для доменных имен.

Некоторые из задач, которые можно решить с помощью этого инструмента:

  • перечисление имен хостов
  • перечисление записей “A”
  • перечисление записей MX
  • Выполнение запросов AXFR
  • перебор поддоменов
  • Обратный поиск.

Команда DNSEnum ниже выполняет перечисление DNS, но избегает обратного поиска, поскольку мы передали аргумент –noreverse.

Выходные данные сохраняются в XML-файле.

dnsenum --noreverse -o mydomain.xml [target-domain]
Например
dnsenum --noreverse -o mydomain.xml youtube.com

Ранее инструмент уже был нами рассмотрен:

Dnsenum – инструмент для перечисления DNS для поиска серверов DNS

3. DNSRecon

DNSRecon – еще одна мощная утилита, используемая для перечисления DNS.

Этот инструмент предустановлен в дистрибутивах для тестирования на проникновение, таких как Kali Linux или Parrot.

Чтобы перечислить все доступные опции для DNSRecon, выполните следующую команду.

dnsrecon -help

Давайте выполним простой перебор DNS с помощью инструмента DNSRecon.

Выполните приведенную ниже команду:

dnsrecon -d [target-domain]
например:
dnsrecon -d youtube.com

4. Команда Host

Команда host широко используется для определения IP-адреса доменного имени.

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

🖧 9 Примеров команд Host для запроса сведений о DNS

5. NsLookup

NsLookup – это еще один инструмент, который вы можете использовать для перечисления DNS и который поставляется предустановленным в Kali Linux.

🌐 Онлайн инструменты и приложения nslookup

Выполните команду nslookup в терминале, не передавая никаких аргументов, как показано ниже.

nslookup

Откроется интерактивная оболочка, в которой можно выполнять команды с помощью NsLookup.

Чтобы перечислить серверы имен, введите следующие команды и нажмите клавишу Enter.

set type=ns
[target-domain]

Чтобы перечислить записи MX, установите тип “mx”!

Чтобы закрыть интерактивную оболочку, введите exit и нажмите enter.

Заключение

¯\_(ツ)_/¯ Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий