9 Nützliche Host-Befehlsbeispiele zum Abfragen von DNS-Details

Das Kommandozeilenwerkzeug host dient der einfachen DNS-Abfrage.

In der Welt der Sicherheitsforschung und des ethischen Hackings stellt die DNS-Enumeration den ersten Schritt bei der Informationsgewinnung über ein Ziel dar. Hierbei werden sämtliche potenziellen DNS-Einträge eines Nameservers abgefragt, einschließlich Informationen zu Nameservern, IP-Adressen, Mail-Exchangern, TTL-Werten und mehr.

Angreifer können diese DNS-Informationen nutzen, um Einblicke in interne Netzwerke zu erhalten.

Obwohl es viele Online-Tools für DNS-Aufklärung und -Enumeration gibt, kann die DNS-Enumeration problemlos mit einem einzigen Kommandozeilenwerkzeug durchgeführt werden. Dieses Werkzeug ist host.

In diesem Artikel werden wir uns einige nützliche Beispiele für den host-Befehl ansehen, um DNS-Details abzufragen.

Legen wir los!

Installation

Der Befehl host ist nicht immer standardmäßig auf einem neu installierten Computer vorhanden. Daher kann eine manuelle Installation erforderlich sein. Der Installationsprozess ist unkompliziert.

Sämtliche DNS-bezogene Befehle, wie nslookup, dig und host, sind in der Bibliothek „bind-utils“ enthalten. Installieren Sie diese mit folgendem Befehl im Terminal:

sudo apt-get install dnsutils -y

Der host-Befehl funktioniert sowohl unter macOS als auch unter Linux.

Verwendung

Allgemeine Syntax: Der Befehl host zeigt die allgemeine Syntax des Befehls, seine Argumente und eine kurze Beschreibung jedes Arguments an.

Beispielausgabe:

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

Die IP-Adresse einer Domain ermitteln

Um die IP-Adresse einer bestimmten Domain herauszufinden, geben Sie den Namen der Zieldomain als Argument nach dem Befehl host an.

host Zieldomain

Beispielausgabe:

┌──(wdzwdz㉿kali)-[~]
└─$ host wdzwdz.com
wdzwdz.com hat die Adresse 104.27.118.115
wdzwdz.com hat die Adresse 104.27.119.115
wdzwdz.com hat die IPv6-Adresse 2606:4700:20::681b:7673
wdzwdz.com hat die IPv6-Adresse 2606:4700:20::681b:7773
Die E-Mails für wdzwdz.com werden von 1 aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 5 alt1.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 5 alt2.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 10 alt3.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 10 alt4.aspmx.l.google.com verarbeitet.

Für eine detailliertere Suche im ausführlichen Modus verwenden Sie die Option -a oder -v.

Beispielausgabe:

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

;; QUESTION SECTION:
;wdzwdz.com.                 IN      ANY

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

Received 161 bytes from 192.168.1.1#53 in 64 ms

Die Option -a wird verwendet, um alle Domain-Einträge und Zoneninformationen zu finden. Außerdem wird die lokale DNS-Serveradresse angezeigt, die für die Suche verwendet wurde.

Reverse-Lookup durchführen

Dieser Befehl führt eine umgekehrte Suche nach der IP-Adresse durch und gibt den Host- oder Domainnamen aus.

Die Syntax lautet beispielsweise:

host Ziel-IP-Adresse

Beispielausgabe:

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

Wenn Sie die Pointer-Adresse (li685-110.members.linode.com.) kopieren und in einen Webbrowser einfügen, werden Sie zur entsprechenden Website weitergeleitet.

Domain-Nameserver ermitteln

Verwenden Sie die Option -t, um die Domain-Nameserver abzurufen. Diese Option wird verwendet, um den Abfragetyp anzugeben.

Hier wird das Argument -t verwendet, um die Nameserver einer bestimmten Domain zu ermitteln.

Der NS-Eintrag gibt die autoritativen Nameserver an.

host -t ns Zieldomain

Beispielausgabe:

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

Bestimmte Domain-Nameserver abfragen

Um Details zu einem bestimmten autoritativen Nameserver zu erfragen, verwenden Sie den folgenden Befehl:

host Zieldomain [Nameserver]

Beispielausgabe:

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

wdzwdz.com hat die Adresse 104.27.118.115
wdzwdz.com hat die Adresse 104.27.119.115
wdzwdz.com hat die IPv6-Adresse 2606:4700:20::681b:7773
wdzwdz.com hat die IPv6-Adresse 2606:4700:20::681b:7673
Die E-Mails für wdzwdz.com werden von 1 aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 5 alt1.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 5 alt2.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 10 alt3.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 10 alt4.aspmx.l.google.com verarbeitet.

Domain-MX-Einträge ermitteln

Um eine Liste der MX-Einträge (Mail Exchanger) einer Domain zu erhalten:

host -t MX Zieldomain

Beispielausgabe:

┌──(wdzwdz㉿kali)-[~]
└─$ host -t mx  wdzwdz.com
Die E-Mails für wdzwdz.com werden von 1 aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 5 alt1.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 5 alt2.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 10 alt3.aspmx.l.google.com verarbeitet.
Die E-Mails für wdzwdz.com werden von 10 alt4.aspmx.l.google.com verarbeitet.

Dieser MX-Eintrag ist dafür zuständig, E-Mails an einen Mailserver weiterzuleiten.

Domain-TXT-Einträge ermitteln

Um eine Liste der TXT-Einträge einer Domain zu erhalten (vom Menschen lesbare Informationen über einen Domainserver):

host -t txt Zieldomain

Beispielausgabe:

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

Den SOA-Eintrag der Domain ermitteln

Um eine Liste des SOA-Eintrags (Start of Authority) einer Domain abzurufen:

host -t soa Zieldomain

Beispielausgabe:

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

Verwenden Sie den folgenden Befehl, um die SOA-Einträge aller autoritativen Nameserver für eine bestimmte Zone (den spezifischen Teil des DNS-Namensraums) zu vergleichen.

host -C Zieldomain

Beispielausgabe:

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

Domain-CNAME-Einträge ermitteln

CNAME steht für Canonical Name Record. Dieser DNS-Eintrag ist dafür verantwortlich, eine Domain auf eine andere umzuleiten, d.h. er ordnet den ursprünglichen Domainnamen einem Alias zu.

Verwenden Sie den folgenden Befehl, um die CNAME-DNS-Einträge der Domain herauszufinden.

host -t cname Zieldomain

Beispielausgabe:

┌──(wdzwdz㉿kali)-[~]
└─$ host -t cname  wdzwdz.com
wdzwdz.com hat keinen CNAME-Eintrag

Wenn die Zieldomain CNAME-Einträge enthält, werden diese nach Ausführung des Befehls angezeigt.

Domain-TTL-Informationen ermitteln

TTL steht für Time to Live. Es ist ein Teil des Domain Name Servers. Sie wird automatisch von einem autoritativen Nameserver für jeden DNS-Eintrag festgelegt.

Vereinfacht ausgedrückt bezieht sich TTL darauf, wie lange ein DNS-Server einen Datensatz zwischenspeichert, bevor die Daten aktualisiert werden. Verwenden Sie den folgenden Befehl, um die TTL-Informationen eines Domainnamens anzuzeigen.

host -v -t a Zieldomain

Beispielausgabe:

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

;; QUESTION SECTION:
;wdzwdz.com.                 IN      A

;; ANSWER SECTION:
wdzwdz.com.          30      IN      A       104.27.119.115
wdzwdz.com.          30      IN      A       104.27.118.115

Received 63 bytes from 192.168.1.1#53 in 60 ms

Fazit

Ich hoffe, dieser Artikel war hilfreich, um einige nützliche Beispiele für den host-Befehl zur Abfrage von DNS-Details kennenzulernen.

Möglicherweise interessiert es Sie auch, mehr über kostenlose Online-Tools zu erfahren, mit denen Sie DNS-Einträge eines Domainnamens überprüfen können.