Polecenie HOST to proste narzędzie interfejsu wiersza polecenia 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 zapytań o szczegóły DNS.
Zacznijmy!
Spis treści:
Instalacja
Polecenie „HOST” czasami może nie być domyślnie dostę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:
┌──(newsblog.pl㉿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
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:
┌──(newsblog.pl㉿kali)-[~] └─$ host newsblog.pl.com newsblog.pl.com has address 104.27.118.115 newsblog.pl.com has address 104.27.119.115 newsblog.pl.com has IPv6 address 2606:4700:20::681b:7673 newsblog.pl.com has IPv6 address 2606:4700:20::681b:7773 newsblog.pl.com mail is handled by 1 aspmx.l.google.com. newsblog.pl.com mail is handled by 5 alt1.aspmx.l.google.com. newsblog.pl.com mail is handled by 5 alt2.aspmx.l.google.com. newsblog.pl.com mail is handled by 10 alt3.aspmx.l.google.com. newsblog.pl.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:
┌──(newsblog.pl㉿kali)-[~] └─$ host -a newsblog.pl.com Trying "newsblog.pl.com" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24690 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;newsblog.pl.com. IN ANY ;; ANSWER SECTION: newsblog.pl.com. 3789 IN HINFO "RFC8482" "" newsblog.pl.com. 3789 IN RRSIG HINFO 13 2 3789 20220307065004 20220305045004 34505 newsblog.pl.com. HW0Lfr5HazPMaACSBHmFqs94usKUljX+kONW/8Q2jwQ1QoAO9DEMjwDX rIQKODGtGnEizj2SzBF98mC2uQr7hQ== Received 161 bytes from 192.168.1.1#53 in 64 ms
Ta (-a) opcja 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 odwrotne wyszukiwanie 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:
┌──(newsblog.pl㉿kali)-[~] └─$ host dnsleaktest.com dnsleaktest.com has address 23.239.16.110 ┌──(newsblog.pl㉿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:
┌──(newsblog.pl㉿kali)-[~] └─$ host -t ns newsblog.pl.com newsblog.pl.com name server olga.ns.cloudflare.com. newsblog.pl.com name server todd.ns.cloudflare.com.
Aby wysłać zapytanie do określonego serwera nazw domen
Aby zapytać o szczegóły dotyczące określonej, autorytatywnej domeny serwer nazwużyj poniższego polecenia.
host target-domain [name-server]
Przykładowe dane wyjściowe:
┌──(root💀kali)-[/home/geekflare] └─# host newsblog.pl.com olga.ns.cloudflare.com. 1 ⨯ Using domain server: Name: olga.ns.cloudflare.com. Address: 173.245.58.137#53 Aliases: newsblog.pl.com has address 104.27.118.115 newsblog.pl.com has address 104.27.119.115 newsblog.pl.com has IPv6 address 2606:4700:20::681b:7773 newsblog.pl.com has IPv6 address 2606:4700:20::681b:7673 newsblog.pl.com mail is handled by 1 aspmx.l.google.com. newsblog.pl.com mail is handled by 5 alt1.aspmx.l.google.com. newsblog.pl.com mail is handled by 5 alt2.aspmx.l.google.com. newsblog.pl.com mail is handled by 10 alt3.aspmx.l.google.com. newsblog.pl.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:
┌──(newsblog.pl㉿kali)-[~] └─$ host -t mx newsblog.pl.com newsblog.pl.com mail is handled by 1 aspmx.l.google.com. newsblog.pl.com mail is handled by 5 alt1.aspmx.l.google.com. newsblog.pl.com mail is handled by 5 alt2.aspmx.l.google.com. newsblog.pl.com mail is handled by 10 alt3.aspmx.l.google.com. newsblog.pl.com mail is handled by 10 alt4.aspmx.l.google.com.
Ten Rekord MX odpowiada za skierowanie wiadomości e-mail na serwer pocztowy.
Aby znaleźć rekordy TXT domeny
Aby uzyskać listę domen tekst ( czytelne dla człowieka informacje o serwerze domeny ).
host -t txt target-domain
Przykładowe dane wyjściowe:
┌──(newsblog.pl㉿kali)-[~] └─$ host -t txt newsblog.pl.com newsblog.pl.com descriptive text "google-site-verification=MRSwa454qay1S6pwwixzoiZl08kfJfkhiQIslhok3-A" newsblog.pl.com descriptive text "google-site-verification=7QXbgb492Y5NVyWzSAgAScfUV3XIAGTKKZfdpCvcaGM" newsblog.pl.com descriptive text "yandex-verification: 42f25bad396e79f5" newsblog.pl.com descriptive text "v=spf1 include:_spf.google.com include:mailgun.org include:zcsend.net ~all" newsblog.pl.com descriptive text "ahrefs-site-verification_8eefbd2fe43a8728b6fd14a393e2aff77b671e41615d2c1c6fc365ec33a4d6d0" newsblog.pl.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:
┌──(newsblog.pl㉿kali)-[~] └─$ host -t soa newsblog.pl.com newsblog.pl.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:
┌──(newsblog.pl㉿kali)-[~] └─$ host -C newsblog.pl.com 2 ⨯ Nameserver 173.245.58.137: newsblog.pl.com has SOA record olga.ns.cloudflare.com. dns.cloudflare.com. 2271966690 10000 2400 604800 3600
Aby znaleźć rekordy CNAME domeny
CNAME oznacza zapis 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:
┌──(newsblog.pl㉿kali)-[~] └─$ host -t cname newsblog.pl.com newsblog.pl.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 -t a target-domain
Przykładowe dane wyjściowe:
┌──(root💀kali)-[/home/geekflare] └─# host -v -t a newsblog.pl.com 1 ⨯ Trying "newsblog.pl.com" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2479 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;newsblog.pl.com. IN A ;; ANSWER SECTION: newsblog.pl.com. 30 IN A 104.27.119.115 newsblog.pl.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.