9DNSの詳細を照会するための便利なホストコマンドの例

公開: 2022-03-08

HOSTコマンドは、DNS列挙を実行するための単純なコマンドラインインターフェイスユーティリティです。

セキュリティ調査と倫理的ハッキングでは、DNS列挙はターゲットの情報収集の最初のフェーズです。 これは、ネームサーバーの詳細、IPアドレス、メールエクスチェンジャーの詳細、TTLなどのドメインネームサーバーからすべての潜在的なDNSレコードを照会するプロセスです。

攻撃者は、このDNSに列挙された情報を利用して、内部ネットワークレコードを調べる可能性があります。

インターネット上には多数のDNS偵察およびオンライン列挙ツールがあります。 ただし、DNS列挙は、単一のコマンドラインユーティリティを使用して簡単に実行できます。 それが「ホスト」です。

この記事では、DNSの詳細を照会するためのいくつかの便利なホストコマンドの例を見ていきます。

始めましょう!

インストール

「HOST」コマンドは、新しくインストールされたマシンではデフォルトで使用できない場合があります。 その結果、システムに手動でインストールする必要があります。 インストールのプロセスはかなり簡単です。

nslookupdighostなどのDNS関連のすべてのコマンドは、「bind-utils」ライブラリに含まれています。 そのためには、ターミナルで次のコマンドを入力するだけです。

 sudo apt-get install dnsutils -y

このHOSTコマンドは、MACとLinuxの両方で機能します。

使用法

一般的な構文:一般的な「host」コマンドは、コマンドの全体的な構文と、コマンドで使用できる引数、および各引数の簡単な説明を出力します。

サンプル出力:

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

ドメインIPアドレスを見つけるには

特定のドメインのIPアドレスを見つけるには、hostコマンドの後にターゲットドメイン名を引数として渡すだけです。

 host Target-domain

サンプル出力:

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

詳細モードを使用した包括的なルックアップには、 -aまたは-vフラグオプションを使用します。

サンプル出力:

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

この(-a)オプションは、すべてのドメインレコードとゾーン情報を検索するために使用されます。 ルックアップに使用されるローカルDNSサーバーアドレスにも気付くことができます。

リバースルックアップを実行するには

このコマンドは、IPアドレスの逆引き参照を実行し、ホスト名またはドメイン名を表示します。

例として、構文は次のようになります。

 host target-ip-address

サンプル出力:

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

Webブラウザにポインタアドレス(li685-110.members.linode.com。)をコピーして貼り付けると、Webサイトにリダイレクトされます。

ドメイン名サーバーを見つけるには

-tオプションを使用して、ドメインネームサーバーを取得します。 クエリタイプを指定するために使用されます。

ここでは、-t引数を渡して、特定のドメイン名のネームサーバーを検索しています。

NSレコードは、信頼できるネームサーバーを指定します。

 host -t ns target-domain

サンプル出力:

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

特定のドメインネームサーバーにクエリを実行するには

特定の権限のあるドメインネームサーバーに関する詳細を照会するには、以下のコマンドを使用します。

 host target-domain [name-server]

サンプル出力:

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

ドメインMXレコードを検索するには

ドメインのMX(メールエクスチェンジャー)レコードのリストを取得します。

 host -t MX target-domain

サンプル出力:

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

このMXレコードは、電子メールをメールサーバーに送信する役割を果たします。

ドメインTXTレコードを検索するには

ドメインのTXT(ドメインサーバーに関する人間が読み取れる情報)レコードのリストを取得します。

 host -t txt target-domain

サンプル出力:

 ┌──(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"

ドメインSOAレコードを見つけるには

ドメインのSOA(権限の開始)レコードのリストを取得するには

host -t soa target-domain

サンプル出力:

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

以下のコマンドを使用して、特定のゾーン(DNS名前空間の特定の部分)のすべての権限のあるネームサーバーからのSOAレコードを比較します。

 host -C target-domain

サンプル出力:

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

ドメインCNAMEレコードを検索するには

CNAMEは正規名レコードの略です。 このDNSレコードは、あるドメインを別のドメインにリダイレクトする役割を果たします。つまり、元のドメイン名をエイリアスにマップします。

ドメインCNAMEDNSレコードを見つけるには、次のコマンドを使用します。

 host -t cname target-domain

サンプル出力:

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

ターゲットドメイン名にCNAMEレコードがある場合は、コマンドの実行後にそれらが表示されます。

ドメインTTL情報を検索するには

TTLは存続時間の略です。 これは、ドメインネームサーバーの一部です。 これは、DNSレコードごとに権限のあるネームサーバーによって自動的に設定されます。

簡単に言うと、TTLは、DNSサーバーがデータを更新する前にレコードをキャッシュする時間を指します。 以下のコマンドを使用して、ドメイン名のTTL情報を確認します。

 host -v -ta target-domain

サンプル出力:

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

結論

この記事が、DNSの詳細を照会するためのいくつかの有用なホストコマンドの例を学ぶのに役立つことを願っています。

ドメイン名のDNSレコードをチェックするための無料のオンラインツールについても学ぶことができます。