web-dev-qa-db-ja.com

ワイルドカードDNSエントリの不足はセキュリティの脆弱性ですか?

友人の友人がセキュリティ調査員から正当なメールを受信しました。研究者はいくつかの脆弱性を提出しました、それらの1つはこのように読みます

脆弱性#...

タイトル:ワイルドカードDNSエントリの欠如!

説明:攻撃者がワイルドカードを知っているリスク。これにより、DNSハイジャックやその他の脅威が発生する可能性があります。これに関連するいくつかの問題があります。私が考えることができる最も一般的なのはフィッシングです。ワイルドカードDNSは便利な機能であり、フィッシング詐欺師はこれを使用してフィルタリングをバイパスしているようです。多くの場合、フィルタリングは正確なホスト名とドメイン名の組み合わせに基づいているため、フィッシング詐欺師はワイルドカードDNSを使用してフィルタリングを回避します。ワイルドカードDNSを使用すると、フィッシャーは任意の数の異なるURLをその場で生成でき、多くの場合、フィルタリングテクノロジーを回避できます。

Webサーバー側では、簡単なコードでURLを解析し、サイトに到達するために使用されたホスト名を見つけ、必要に応じて訪問者をリダイレクトできます。

また、ワイルドカードエントリがないため、攻撃者は簡単にシークレットとパブリックサブドメインを列挙できます。

次に、DNSブルートフォースツール knock からの出力を使用して、概念実証を行います。

明確にするために、問題のウェブサイトのDNSエントリにはワイルドカード(*)がなく、DNSへの再帰的なサブクエリは許可されていません(たとえば、AXFRクエリは機能しません)。いずれにしても、ウェブサイトはDNSサブドメインを公開情報として扱います。 IMO、これは脆弱性ではありません-これは設計によるものであり、コミュニティとクロスチェックしたいだけです。

質問:DNSにワイルドカードエントリがないことはセキュリティの脆弱性ですか?

8
oleksii

これは、サブドメインの列挙に要約されます。

ワイルドカードDNSエントリがあり、攻撃者が次のサブドメインを試行するとします。

admin
cms
email
ssh
rdp
secure

ワイルドカードDNSエントリがある場合、次の結果が返されます。

admin.example.com - Exists
cms.example.com - Exists
email.example.com - Exists
ssh.example.com - Exists
rdp.example.com - Exists
secure.example.com - Exists

そうしないと、攻撃者はどのプライベートサイトとサービスが存在するかを判断する可能性があります。

admin.example.com - No entry
cms.example.com - No entry
email.example.com - No entry
ssh.example.com - No entry
rdp.example.com - No entry
secure.example.com - Exists

つまり、攻撃者はなんらかの機密サービスをホストしている可能性があるsecure.example.com FQDNを持っていると判断しました。ただし、最初の例でも、攻撃によって各エントリが同じIPに解決されるかどうかを確認できます。 Hostヘッダー付きのhttpやサーバー名表示(SNI)付きのhttpsなど、プロトコルにホスト名が含まれるサービスでのみ問題になります。つまり、攻撃者はそのようなサービスを発見し、ドメインに有効な要求を出して、そこにサービスがあるかどうかを判断する必要があります(最初の例ではcms.example.comを要求し、正しいホストヘッダーまたはSNIを設定するなど)フィールド)。

4
SilverlightFox

あなたが提供したコンテキストに基づいて、私は重大な脅威はないと思います。

あなたはかなり典型的なインターネット向けWebサービスを実行していると思います。その観点から、セキュリティ研究者が提供した説明は少し混乱しているようです。

私が考えることができる最も一般的なのはフィッシングです。ワイルドカードDNSは便利な機能であり、フィッシング詐欺師はこれを使用してフィルタリングをバイパスしているようです。

攻撃者がDNSレコードを変更できないと思われるため、これが直接的な脅威であることがわかりません。一般にDNSポイズニングまたはフィッシングに対して脆弱である可能性のあるユーザー(一般にインターネットユーザーのサブセットであること)に対する脅威である可能性があることがわかりますが、これはあなたのコントロールをはるかに超えています。

ワイルドカードDNSを使用すると、フィッシング詐欺師は任意の数の異なるURLをその場で生成でき、多くの場合フィルタリング技術を回避できます。

繰り返しますが、これは当てはまりますが、ドメインではなく、彼らが制御する任意のドメインでのみです。

また、ワイルドカードエントリがないため、攻撃者は簡単にシークレットとパブリックサブドメインを列挙できます。

正当なサービスと偽/ハニーポットのサービスを区別するのが攻撃者にとって難しい場合、ここにはある程度の妥当性があると思います。実際には、偽のサービスを実行している多数の偽のサーバーが必要であり、攻撃者が正当なサーバーを特定することを著しく困難にします。

さらに、公開サービスを単に隠すだけでなく、公開サービスを保護する より効果的な方法 があります。

あなたのシナリオが私が想定したものとは異なる場合に考慮すべき追加の攻撃ベクトルがあります。たとえば、誰かが制御する可能性のあるパブリックに解決可能なドメインのレコードを提供するプライベートDNSで内部ネットワークを実行している場合などです。しかし、これはケースのようには聞こえません。

4
thexacre