Інструмент командного рядка HOST для запитів DNS
Команда HOST є простим інструментом, що використовується в командному рядку для отримання інформації про DNS.
У сфері кібербезпеки, зокрема при етичному хакінгу, аналіз DNS є початковим кроком для збору даних про ціль. Цей процес передбачає запит різноманітних DNS-записів із сервера доменних імен, включаючи відомості про сервери імен, IP-адреси, поштові обмінники, час життя (TTL) і так далі.
Зловмисники можуть скористатися цією інформацією, отриманою через аналіз DNS, для дослідження внутрішньої мережевої структури.
В інтернеті існує безліч інструментів для аналізу DNS, як онлайн, так і у вигляді програм. Однак, базовий аналіз DNS може бути легко здійснений за допомогою лише однієї команди – “HOST”.
В даній статті ми розглянемо кілька практичних прикладів використання команди host для отримання різноманітних DNS-відомостей.
Почнемо!
Встановлення
Команда “HOST” іноді може бути відсутня в стандартній комплектації щойно встановленої операційної системи. Тому, можливо, буде потрібно встановити її вручну. Процес встановлення є досить нескладним.
Усі команди, пов’язані з DNS, такі як nslookup, dig та host, входять до складу бібліотеки bind-utils. Для встановлення, введіть наступну команду в терміналі.
sudo apt-get install dnsutils -y
Ця команда HOST працює як на macOS, так і на Linux.
Використання
Загальний синтаксис: команда “host” без додаткових аргументів виводить на екран загальний синтаксис команди та її можливі параметри, разом з коротким описом кожного з них.
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host Usage: host [-aCdilrTvVw] [-c class] [-N ndots] [-t type] [-W time] [-R number] [-m flag] [-p port] hostname [server] -a is equivalent to -v -t ANY -A is like -a but omits RRSIG, NSEC, NSEC3 -c specifies query class for non-IN data -C compares SOA records on authoritative nameservers -d is equivalent to -v -l lists all hosts in a domain, using AXFR -m set memory debugging flag (trace|record|usage) -N changes the number of dots allowed before root lookup is done -p specifies the port on the server to query -r disables recursive processing -R specifies number of retries for UDP packets -s a SERVFAIL response should stop query -t specifies the query type -T enables TCP/IP mode -U enables UDP mode -v enables verbose output -V print version number and exit -w specifies to wait forever for a reply -W specifies how long to wait for a reply -4 use IPv4 query transport only -6 use IPv6 query transport only
Пошук IP-адреси домену
Щоб знайти IP-адресу певного домену, введіть ім’я цільового домену як аргумент після команди host.
host Цільовий-домен
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host techukraine.net.com techukraine.net.com has address 104.27.118.115 techukraine.net.com has address 104.27.119.115 techukraine.net.com has IPv6 address 2606:4700:20::681b:7673 techukraine.net.com has IPv6 address 2606:4700:20::681b:7773 techukraine.net.com mail is handled by 1 aspmx.l.google.com. techukraine.net.com mail is handled by 5 alt1.aspmx.l.google.com. techukraine.net.com mail is handled by 5 alt2.aspmx.l.google.com. techukraine.net.com mail is handled by 10 alt3.aspmx.l.google.com. techukraine.net.com mail is handled by 10 alt4.aspmx.l.google.com.
Для детального пошуку з розширеним виведенням використовуйте опцію -a або -v.
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host -a techukraine.net.com Trying "techukraine.net.com" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24690 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;techukraine.net.com. IN ANY ;; ANSWER SECTION: techukraine.net.com. 3789 IN HINFO "RFC8482" "" techukraine.net.com. 3789 IN RRSIG HINFO 13 2 3789 20220307065004 20220305045004 34505 techukraine.net.com. HW0Lfr5HazPMaACSBHmFqs94usKUljX+kONW/8Q2jwQ1QoAO9DEMjwDX rIQKODGtGnEizj2SzBF98mC2uQr7hQ== Received 161 bytes from 192.168.1.1#53 in 64 ms
Параметр (-a) призначений для отримання всіх записів домену та інформації про зону. Також відображається IP-адреса локального DNS-сервера, який використовується для пошуку.
Зворотний пошук DNS
Ця команда виконує зворотний пошук IP-адреси, виводячи ім’я хоста або доменне ім’я, яке їй відповідає.
Наприклад, синтаксис команди буде виглядати так:
host цільова-ip-адреса
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host dnsleaktest.com dnsleaktest.com has address 23.239.16.110 ┌──(techukraine.net㉿kali)-[~] └─$ host 23.239.16.110 110.16.239.23.in-addr.arpa domain name pointer li685-110.members.linode.com.
Якщо ви скопіюєте та вставите адресу вказівника (li685-110.members.linode.com.) у браузер, вас буде перенаправлено на відповідний веб-сайт.
Пошук серверів доменних імен
Використовуйте параметр -t для отримання списку серверів імен домену. Він визначає тип DNS-запису, який потрібно запитати.
В даному випадку ми використовуємо аргумент -t, щоб отримати список серверів імен конкретного доменного імені.
Запис NS визначає авторитетні сервери імен.
host -t ns цільовий-домен
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host -t ns techukraine.net.com techukraine.net.com name server olga.ns.cloudflare.com. techukraine.net.com name server todd.ns.cloudflare.com.
Запит до певного сервера імен домену
Щоб отримати інформацію з конкретного авторитетного сервера імен, використовуйте наступну команду.
host цільовий-домен [сервер-імен]
Приклад виведення:
┌──(root💀kali)-[/home/geekflare] └─# host techukraine.net.com olga.ns.cloudflare.com. 1 ⨯ Using domain server: Name: olga.ns.cloudflare.com. Address: 173.245.58.137#53 Aliases: techukraine.net.com has address 104.27.118.115 techukraine.net.com has address 104.27.119.115 techukraine.net.com has IPv6 address 2606:4700:20::681b:7773 techukraine.net.com has IPv6 address 2606:4700:20::681b:7673 techukraine.net.com mail is handled by 1 aspmx.l.google.com. techukraine.net.com mail is handled by 5 alt1.aspmx.l.google.com. techukraine.net.com mail is handled by 5 alt2.aspmx.l.google.com. techukraine.net.com mail is handled by 10 alt3.aspmx.l.google.com. techukraine.net.com mail is handled by 10 alt4.aspmx.l.google.com.
Пошук MX-записів домену
Для отримання списку MX-записів (поштових обмінників) домену, скористайтесь наступною командою.
host -t MX цільовий-домен
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host -t mx techukraine.net.com techukraine.net.com mail is handled by 1 aspmx.l.google.com. techukraine.net.com mail is handled by 5 alt1.aspmx.l.google.com. techukraine.net.com mail is handled by 5 alt2.aspmx.l.google.com. techukraine.net.com mail is handled by 10 alt3.aspmx.l.google.com. techukraine.net.com mail is handled by 10 alt4.aspmx.l.google.com.
Цей MX-запис відповідає за маршрутизацію електронної пошти до поштових серверів.
Пошук TXT-записів домену
Щоб переглянути список TXT-записів домену (інформація про домен, що є зрозумілою для людини), скористайтесь командою нижче.
host -t txt цільовий-домен
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host -t txt techukraine.net.com techukraine.net.com descriptive text "google-site-verification=MRSwa454qay1S6pwwixzoiZl08kfJfkhiQIslhok3-A" techukraine.net.com descriptive text "google-site-verification=7QXbgb492Y5NVyWzSAgAScfUV3XIAGTKKZfdpCvcaGM" techukraine.net.com descriptive text "yandex-verification: 42f25bad396e79f5" techukraine.net.com descriptive text "v=spf1 include:_spf.google.com include:mailgun.org include:zcsend.net ~all" techukraine.net.com descriptive text "ahrefs-site-verification_8eefbd2fe43a8728b6fd14a393e2aff77b671e41615d2c1c6fc365ec33a4d6d0" techukraine.net.com descriptive text "ca3-7fbfaa573ba248ddb17a618e5b46ca01"
Пошук SOA-запису домену
Для отримання списку SOA-запису домену (початок зони авторитетності), скористайтесь командою:
host -t soa цільовий-домен
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host -t soa techukraine.net.com techukraine.net.com has SOA record olga.ns.cloudflare.com. dns.cloudflare.com. 2271966690 10000 2400 604800 3600
Використовуйте наступну команду для порівняння SOA-записів з усіх авторитетних серверів імен для певної зони (частини простору імен DNS).
host -C цільовий-домен
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host -C techukraine.net.com 2 ⨯ Nameserver 173.245.58.137: techukraine.net.com has SOA record olga.ns.cloudflare.com. dns.cloudflare.com. 2271966690 10000 2400 604800 3600
Пошук CNAME-записів домену
CNAME – це канонічний запис імені. Цей DNS-запис відповідає за перенаправлення одного домену на інший, тобто він зіставляє оригінальне доменне ім’я з псевдонімом.
Щоб дізнатися про CNAME-записи домену, скористайтеся командою нижче.
host -t cname цільовий-домен
Приклад виведення:
┌──(techukraine.net㉿kali)-[~] └─$ host -t cname techukraine.net.com techukraine.net.com has no CNAME record
Якщо для цільового доменного імені існують CNAME-записи, вони будуть відображені після виконання команди.
Пошук інформації про TTL домену
TTL означає “час життя”. Це параметр, який зберігається на сервері доменних імен і встановлюється авторитетним сервером імен для кожного DNS-запису.
Простіше кажучи, TTL показує, як довго DNS-сервер зберігає запис у кеші до того, як запитувати оновлення даних. Скористайтесь наведеною командою для отримання інформації про TTL доменного імені.
host -v -t a цільовий-домен
Приклад виведення:
┌──(root💀kali)-[/home/geekflare] └─# host -v -t a techukraine.net.com 1 ⨯ Trying "techukraine.net.com" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2479 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;techukraine.net.com. IN A ;; ANSWER SECTION: techukraine.net.com. 30 IN A 104.27.119.115 techukraine.net.com. 30 IN A 104.27.118.115 Received 63 bytes from 192.168.1.1#53 in 60 ms
Висновок
Сподіваємось, ця стаття допомогла вам ознайомитись з деякими корисними прикладами використання команди host для запитів DNS.
Можливо, вам також буде цікаво дізнатися про безкоштовні онлайн-інструменти для перевірки DNS-записів доменних імен.