9 przydatnych przykładów poleceń hosta do odpytywania szczegółów DNS

Opublikowany: 2022-03-08

Polecenie HOST to proste narzędzie interfejsu wiersza poleceń do wykonywania wyliczania DNS.

W badaniach nad bezpieczeństwem i etycznym hakowaniu wyliczanie DNS jest pierwszą fazą gromadzenia informacji o celu. Jest to proces sprawdzania wszystkich potencjalnych rekordów DNS z serwera nazw domen, takich jak szczegóły serwera nazw, adresy IP, szczegóły usługi wymiany poczty, czasy TTL i inne.

Atakujący mogą wykorzystać te wyliczone przez DNS informacje do zbadania wewnętrznych rekordów sieci.

W Internecie dostępnych jest wiele narzędzi do rozpoznawania DNS i wyliczania online. Jednak wyliczanie DNS można łatwo wykonać za pomocą jednego narzędzia wiersza polecenia. To jest „GOSPODARZ”.

W tym artykule przyjrzymy się kilku przydatnym przykładom poleceń hosta do zapytania o szczegóły DNS.

Zacznijmy!

Instalacja

Polecenie „HOST” czasami może być domyślnie niedostępne na nowo zainstalowanym komputerze. W rezultacie będziesz musiał zainstalować go ręcznie w systemie. Proces instalacji jest dość prosty.

Wszystkie polecenia związane z DNS, takie jak nslookup , dig i host , są zawarte w bibliotece „bind-utils”. W tym celu wystarczy wpisać w terminalu następujące polecenie.

 sudo apt-get install dnsutils -y

To polecenie HOST działa na komputerach Mac i Linux.

Stosowanie

Ogólna składnia: Ogólne polecenie „host” drukuje ogólną składnię polecenia i jej argumenty, których można z nim użyć, a także krótki opis każdego argumentu.

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿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 -sa 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

Aby znaleźć adres IP domeny

Aby znaleźć adres IP konkretnej domeny, po prostu przekaż nazwę domeny docelowej jako argument po poleceniu hosta.

 host Target-domain

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host geekflare.com geekflare.com has address 104.27.118.115 geekflare.com has address 104.27.119.115 geekflare.com has IPv6 address 2606:4700:20::681b:7673 geekflare.com has IPv6 address 2606:4700:20::681b:7773 geekflare.com mail is handled by 1 aspmx.l.google.com. geekflare.com mail is handled by 5 alt1.aspmx.l.google.com. geekflare.com mail is handled by 5 alt2.aspmx.l.google.com. geekflare.com mail is handled by 10 alt3.aspmx.l.google.com. geekflare.com mail is handled by 10 alt4.aspmx.l.google.com.

Aby uzyskać kompleksowe wyszukiwanie w trybie pełnym, użyj opcji flagi -a lub -v .

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host -a geekflare.com Trying "geekflare.com" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24690 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;geekflare.com. IN ANY ;; ANSWER SECTION: geekflare.com. 3789 IN HINFO "RFC8482" "" geekflare.com. 3789 IN RRSIG HINFO 13 2 3789 20220307065004 20220305045004 34505 geekflare.com. HW0Lfr5HazPMaACSBHmFqs94usKUljX+kONW/8Q2jwQ1QoAO9DEMjwDX rIQKODGtGnEizj2SzBF98mC2uQr7hQ== Received 161 bytes from 192.168.1.1#53 in 64 ms

Ta opcja (-a) służy do znajdowania wszystkich rekordów domen i informacji o strefach. Możesz również zauważyć lokalny adres serwera DNS używany do wyszukiwania.

Aby wykonać wyszukiwanie wsteczne

To polecenie wykonuje wyszukiwanie wsteczne adresu IP i wyświetla nazwę hosta lub nazwę domeny.

Na przykład składnia wyglądałaby następująco:

 host target-ip-address

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host dnsleaktest.com dnsleaktest.com has address 23.239.16.110 ┌──(geekflare㉿kali)-[~] └─$ host 23.239.16.110 110.16.239.23.in-addr.arpa domain name pointer li685-110.members.linode.com.

Jeśli skopiujesz i wkleisz adres wskaźnika ( li685-110.members.linode.com.) w przeglądarce internetowej, zostaniesz przekierowany na stronę.

Aby znaleźć serwery nazw domen

Użyj opcji -t, aby uzyskać serwery nazw domen. Służy do określenia typu zapytania.

Tutaj podaję argument -t, aby znaleźć serwery nazw o określonej nazwie domeny.

Rekord NS określa autorytatywne serwery nazw.

 host -t ns target-domain

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host -t ns geekflare.com geekflare.com name server olga.ns.cloudflare.com. geekflare.com name server todd.ns.cloudflare.com.

Aby zapytać o określony serwer nazw domen

Aby zapytać o szczegóły dotyczące konkretnego autorytatywnego serwera nazw domen, użyj poniższego polecenia.

 host target-domain [name-server]

Przykładowe dane wyjściowe:

 ┌──(rootkali)-[/home/geekflare] └─# host geekflare.com olga.ns.cloudflare.com. 1 ⨯ Using domain server: Name: olga.ns.cloudflare.com. Address: 173.245.58.137#53 Aliases: geekflare.com has address 104.27.118.115 geekflare.com has address 104.27.119.115 geekflare.com has IPv6 address 2606:4700:20::681b:7773 geekflare.com has IPv6 address 2606:4700:20::681b:7673 geekflare.com mail is handled by 1 aspmx.l.google.com. geekflare.com mail is handled by 5 alt1.aspmx.l.google.com. geekflare.com mail is handled by 5 alt2.aspmx.l.google.com. geekflare.com mail is handled by 10 alt3.aspmx.l.google.com. geekflare.com mail is handled by 10 alt4.aspmx.l.google.com.

Aby znaleźć rekordy MX domeny

Aby uzyskać listę rekordów MX (Mail Exchanger) domeny.

 host -t MX target-domain

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host -t mx geekflare.com geekflare.com mail is handled by 1 aspmx.l.google.com. geekflare.com mail is handled by 5 alt1.aspmx.l.google.com. geekflare.com mail is handled by 5 alt2.aspmx.l.google.com. geekflare.com mail is handled by 10 alt3.aspmx.l.google.com. geekflare.com mail is handled by 10 alt4.aspmx.l.google.com.

Ten rekord MX odpowiada za kierowanie wiadomości e-mail na serwer pocztowy.

Aby znaleźć rekordy TXT domeny

Aby uzyskać listę rekordów TXT domeny (informacje czytelne dla człowieka o serwerze domeny).

 host -t txt target-domain

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host -t txt geekflare.com geekflare.com descriptive text "google-site-verification=MRSwa454qay1S6pwwixzoiZl08kfJfkhiQIslhok3-A" geekflare.com descriptive text "google-site-verification=7QXbgb492Y5NVyWzSAgAScfUV3XIAGTKKZfdpCvcaGM" geekflare.com descriptive text "yandex-verification: 42f25bad396e79f5" geekflare.com descriptive text "v=spf1 include:_spf.google.com include:mailgun.org include:zcsend.net ~all" geekflare.com descriptive text "ahrefs-site-verification_8eefbd2fe43a8728b6fd14a393e2aff77b671e41615d2c1c6fc365ec33a4d6d0" geekflare.com descriptive text "ca3-7fbfaa573ba248ddb17a618e5b46ca01"

Aby znaleźć rekord SOA domeny

Aby uzyskać listę rekordów SOA (początek autorytetu) domeny

 host -t soa target-domain

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host -t soa geekflare.com geekflare.com has SOA record olga.ns.cloudflare.com. dns.cloudflare.com. 2271966690 10000 2400 604800 3600

Użyj poniższego polecenia, aby porównać rekordy SOA ze wszystkich autorytatywnych serwerów nazw dla określonej strefy (określonej części przestrzeni nazw DNS).

 host -C target-domain

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host -C geekflare.com 2 ⨯ Nameserver 173.245.58.137: geekflare.com has SOA record olga.ns.cloudflare.com. dns.cloudflare.com. 2271966690 10000 2400 604800 3600

Aby znaleźć rekordy CNAME domeny

CNAME oznacza rekord nazwy kanonicznej. Ten rekord DNS jest odpowiedzialny za przekierowanie jednej domeny do drugiej, co oznacza, że ​​mapuje oryginalną nazwę domeny na alias.

Aby znaleźć rekordy DNS CNAME domeny, użyj poniższego polecenia.

 host -t cname target-domain

Przykładowe dane wyjściowe:

 ┌──(geekflare㉿kali)-[~] └─$ host -t cname geekflare.com geekflare.com has no CNAME record

Jeśli nazwa domeny docelowej zawiera jakiekolwiek rekordy CNAME, zostaną one wyświetlone po uruchomieniu polecenia.

Aby znaleźć informacje o TTL domeny

TTL oznacza czas na życie. Jest częścią Serwera Nazw Domeny. Jest automatycznie ustawiany przez autorytatywny serwer nazw dla każdego rekordu DNS.

W prostych słowach TTL odnosi się do tego, jak długo serwer DNS przechowuje rekord w pamięci podręcznej przed odświeżeniem danych. Użyj poniższego polecenia, aby wyświetlić informacje TTL nazwy domeny.

 host -v -ta target-domain

Przykładowe dane wyjściowe:

 ┌──(rootkali)-[/home/geekflare] └─# host -v -ta geekflare.com 1 ⨯ Trying "geekflare.com" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2479 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;geekflare.com. IN A ;; ANSWER SECTION: geekflare.com. 30 IN A 104.27.119.115 geekflare.com. 30 IN A 104.27.118.115 Received 63 bytes from 192.168.1.1#53 in 60 ms

Wniosek

Mam nadzieję, że ten artykuł okazał się pomocny w nauce przydatnych przykładów poleceń hosta do zapytań o szczegóły DNS.

Możesz również zainteresować się bezpłatnymi narzędziami online do sprawdzania rekordów DNS nazwy domeny.