プライベートな場所(おそらく、データベースの場所、または人がSSHで接続することを望まないコンピューターのIPアドレス)を指すサブドメインを作成したいと仮定して、何かという名前のDNSレコードを追加しますこのような:
private-AGhR9xJPF4.example.com
これは、サブドマンの正確なURIを知っている人以外のすべての人に「隠され」ますか?または、特定のドメインのすべての登録済みサブドメインを「リスト」する方法はありますか?
プライベートな場所(おそらく、データベースの場所、または人がSSHで接続することを望まないコンピューターのIPアドレス)を指すサブドメインを作成したいと仮定して、何かという名前のDNSレコードを追加しますこのような:
private-AGhR9xJPF4.example.com
これは、サブドマンの正確なURIを知っている人以外のすべての人に「隠され」ますか?または、特定のドメインのすべての登録済みサブドメインを「リスト」する方法はありますか?
回答:
この特定の目的のためのクエリはありませんが、いくつかの間接的な方法があります。
AXFR
)。ほとんどのサーバーオペレーターは、特定のIPアドレスへのゾーン転送をロックダウンして、関係のない関係者がaround索するのを防ぎます。NSEC
要求を使用してゾーンをウォークできます。NSEC3
ゾーンウォーキングの計算量を増やすために実装されました。また、任意のサブドメインが存在するかどうかを誰かに知らせるトリックもあります。
example.com. IN A 198.51.100.1
www.sub.example.com. IN A 198.51.100.2
上記の例でwww
は、内にありますsub
。クエリsub.example.com IN A
はANSWERセクションを返しませんが、結果コードはNXDOMAINではなくNOERRORになり、ツリーのさらに下のレコードの存在を裏返します。(それらのレコードの名前ではありません)
いいえ。クライアントからデータを確実に隠す唯一の方法は、最初からデータを取得できないようにすることです。口コミまたはパケットを観察することにより、DNSレコードの存在が、それらにアクセスできるすべての人に広がると仮定します。
ルーティング可能なDNSクライアントからレコードを非表示にしようとする場合、Your Doing It Wrong™になります。データが必要な環境にのみ公開されていることを確認してください。(つまり、プライベートIPにプライベートルーティングドメインを使用する)そのような部門がセットアップされている場合でも、IPアドレスの知識はとにかく広まると想定してください。
セキュリティが重視されるのは、誰かがIPアドレスを取得したときに何が起きるかということです。
IPアドレスの秘密が夢のようなものである理由のリストは、さらに拡大される可能性があることを認識しています。IPスキャン、ソーシャルエンジニアリング...リストは無限にあり、私はこの質問のDNSプロトコルの側面に主に焦点を当てています。結局のところ、それはすべて同じ傘の下に落ちます:誰かがあなたのIPアドレスを取得しようとしています。
場合によります。
Andrew Bの答えは、たとえば、会社のMXレコードや公開WebサイトもホストしているパブリックDNSゾーンにサブドメインを登録するときです。
ほとんどの企業は、内部(シークレット)ホストのホスト名を登録する場所に公開されていない内部DNSサーバーを持っています。
推奨される方法は、内部使用専用のドメインを登録するか、内部使用のためにプライマリドメインにサブドメインを作成することです。
ただし、技術的には、ドメインに内部ビューを作成してプライマリドメインを使用することもできます。この場合、DNSクライアントの発信元に応じて、DNSゾーンの代替バージョンが表示されます。