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.