9 Užitečné příklady příkazů hostitele pro dotazování podrobností DNS

Příkaz host představuje užitečný nástroj pro interakci s příkazovým řádkem, který umožňuje efektivní prohledávání DNS záznamů.

V oblasti bezpečnostního výzkumu a etického hackingu, je zjišťování informací o DNS prvním krokem při získávání podrobností o cílovém systému. Tento proces zahrnuje dotazování na různé typy DNS záznamů ze serveru doménových jmen, včetně údajů o jmenných serverech, IP adresách, detailech o poštovních serverech (MX), dobách platnosti (TTL) a dalších.

Potenciální útočníci mohou tyto informace získané pomocí průzkumu DNS využít k analýze a odhalení interních síťových konfigurací.

Na webu je k dispozici celá řada nástrojů pro analýzu DNS a online průzkum. Nicméně, základní DNS dotazy lze snadno provést pomocí jednoduchého nástroje z příkazového řádku, konkrétně příkazu host.

V tomto článku se podíváme na několik užitečných příkladů použití příkazu host pro získávání informací z DNS.

Začněme!

Instalace

Příkaz host nemusí být vždy automaticky dostupný v nově nainstalovaném systému. V takovém případě je nutné jej do systému manuálně přidat. Nicméně, proces instalace je poměrně jednoduchý.

Všechny příkazy související s DNS, jako například nslookup, dig a host, jsou sdruženy v knihovně „bind-utils„. Pro její instalaci zadejte do terminálu následující příkaz:

sudo apt-get install dnsutils -y

Tento příkaz HOST je kompatibilní s operačními systémy MAC i Linux.

Použití

Základní syntaxe: Příkaz host bez dalších argumentů zobrazí kompletní syntaxi a dostupné argumenty, včetně krátkého popisu každého z nich.

Ukázkový výstup:

┌──(etechblog.cz㉿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

Zjištění IP adresy domény

Pro získání IP adresy konkrétní domény zadejte za příkaz host název cílové domény jako argument.

host Target-domain

Ukázkový výstup:

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

Pro detailnější vyhledávání s podrobnými informacemi použijte přepínač -a nebo -v.

Ukázkový výstup:

┌──(etechblog.cz㉿kali)-[~]
└─$ host -a etechblog.cz.com 
Trying "etechblog.cz.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24690
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;etechblog.cz.com.                 IN      ANY

;; ANSWER SECTION:
etechblog.cz.com.          3789    IN      HINFO   "RFC8482" ""
etechblog.cz.com.          3789    IN      RRSIG   HINFO 13 2 3789 20220307065004 20220305045004 34505 etechblog.cz.com. HW0Lfr5HazPMaACSBHmFqs94usKUljX+kONW/8Q2jwQ1QoAO9DEMjwDX rIQKODGtGnEizj2SzBF98mC2uQr7hQ==

Received 161 bytes from 192.168.1.1#53 in 64 ms

Přepínač -a umožňuje vyhledání všech dostupných záznamů domény a souvisejících informací. Zobrazí se také IP adresa lokálního DNS serveru, který se používá pro vyhledávání.

Provedení zpětného vyhledávání

Příkaz umí provést zpětné vyhledávání IP adresy a následně zobrazí odpovídající název hostitele nebo domény.

Příklad syntaxe:

host target-ip-address

Ukázkový výstup:

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

Pokud zkopírujete a vložíte adresu ukazatele (li685-110.members.linode.com) do prohlížeče, budete přesměrováni na webovou stránku.

Zjištění jmenných serverů domény

Pomocí přepínače -t můžete získat seznam jmenných serverů domény. Tento přepínač se používá k určení typu dotazu.

Argument -t s hodnotou ns se používá pro nalezení jmenných serverů pro konkrétní doménu.

Záznam NS určuje autoritativní servery doménových jmen.

host -t ns target-domain

Ukázkový výstup:

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

Dotazování na konkrétní jmenný server

Chcete-li získat informace o konkrétním autoritativním jmenném serveru, použijte následující příkaz.

host target-domain [name-server]

Ukázkový výstup:

┌──(root💀kali)-[/home/geekflare]
└─# host etechblog.cz.com  olga.ns.cloudflare.com.                                                           1 ⨯
Using domain server:
Name: olga.ns.cloudflare.com.
Address: 173.245.58.137#53
Aliases: 

etechblog.cz.com has address 104.27.118.115
etechblog.cz.com has address 104.27.119.115
etechblog.cz.com has IPv6 address 2606:4700:20::681b:7773
etechblog.cz.com has IPv6 address 2606:4700:20::681b:7673
etechblog.cz.com mail is handled by 1 aspmx.l.google.com.
etechblog.cz.com mail is handled by 5 alt1.aspmx.l.google.com.
etechblog.cz.com mail is handled by 5 alt2.aspmx.l.google.com.
etechblog.cz.com mail is handled by 10 alt3.aspmx.l.google.com.
etechblog.cz.com mail is handled by 10 alt4.aspmx.l.google.com.

Zjištění záznamů MX domény

Pro získání seznamu záznamů MX (Mail Exchanger) domény použijte následující příkaz.

host -t MX target-domain

Ukázkový výstup:

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

Tento MX záznam určuje, kam se mají směrovat e-maily pro danou doménu.

Zjištění záznamů TXT domény

Chcete-li zobrazit seznam TXT záznamů domény (textové informace o doménovém serveru), použijte následující příkaz.

host -t txt target-domain

Ukázkový výstup:

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

Zjištění záznamu SOA domény

Pro získání záznamu SOA (Start of Authority) domény použijte tento příkaz:

host -t soa target-domain

Ukázkový výstup:

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

Následující příkaz se používá k porovnání SOA záznamů ze všech autoritativních jmenných serverů pro určitou zónu (konkrétní část jmenného prostoru DNS).

host -C target-domain

Ukázkový výstup:

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

Zjištění záznamů CNAME domény

CNAME, neboli kanonický jmenný záznam, se používá pro přesměrování jedné domény na druhou, jinými slovy mapuje původní doménové jméno na alias.

Chcete-li zjistit DNS záznamy CNAME domény, použijte následující příkaz.

host -t cname target-domain

Ukázkový výstup:

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

Pokud má cílová doména nějaké záznamy CNAME, budou zobrazeny po spuštění příkazu.

Zjištění TTL informace domény

TTL, neboli Time To Live, je součástí systému doménových jmen. Hodnota TTL je nastavena autoritativním jmenným serverem pro každý DNS záznam.

Zjednodušeně řečeno, TTL udává, jak dlouho DNS server ukládá záznam do mezipaměti, než se znovu zeptá na aktuální data. Pomocí následujícího příkazu můžete zobrazit informace TTL pro danou doménu.

host -v -t a target-domain

Ukázkový výstup:

┌──(root💀kali)-[/home/geekflare]
└─# host -v -t a etechblog.cz.com                                                                            1 ⨯
Trying "etechblog.cz.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2479
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;etechblog.cz.com.                 IN      A

;; ANSWER SECTION:
etechblog.cz.com.          30      IN      A       104.27.119.115
etechblog.cz.com.          30      IN      A       104.27.118.115

Received 63 bytes from 192.168.1.1#53 in 60 ms

Závěr

Doufám, že vám tento článek pomohl pochopit, jak používat příkaz host k dotazování na různé aspekty DNS.

Mohly by vás také zajímat informace o bezplatných online nástrojích pro ověření DNS záznamů domény.