「オープンDNSリゾルバー」は、インターネット上のすべてのユーザーの再帰的なDNSルックアップを解決するDNSサーバーです。単純な認証の欠如により、悪意のあるサードパーティが安全でない機器を使用してペイロードを伝播できるという点で、これはオープンSMTPリレーによく似ています。オープンSMTPリレーでは、問題はスパムを転送することです。オープンDNSリゾルバの問題は、DNS増幅攻撃として知られるサービス拒否攻撃を許可することです。
この攻撃の仕組みは非常に簡単です-サーバーは誰からの再帰DNSクエリも解決するため、攻撃者はサーバーに大量のデータを返す再帰DNSクエリを送信することでDDoSに参加させることができます。元のDNS要求パケット。IPアドレスをスプーフィング(偽造)することで、この余分なトラフィックを被害者のコンピューターではなく被害者のコンピューターに転送します。もちろん、サーバーや他のオープンDNSにできるだけ多くのリクエストを送信します。彼らが見つけることができるリゾルバ。このようにして、比較的小さなパイプを持っている人は、パイプ上のすべての帯域幅を使用して犠牲者に大量のトラフィックを送信することにより、サービス拒否攻撃を「増幅」できます。
ArsTechnicaは、最近のSpamhausに対するDNS Amplification DDoS攻撃についてまともな記事を書いており、基本を理解するためにすぐに読む価値があります(そして増幅の優れたビジュアル)。
このような悪用からシステムを保護する最も簡単な方法は、サーバーがローカルサブネットに対して再帰的な検索を実行するアドレスを制限することです。(詳細は、もちろん、使用しているDNSサーバーによって異なります)。
たとえば、BIND 9を使用していて、外部アドレスからのDNS再帰を単に防止したい場合、構成で次のコードを使用します。
options {
directory "/var/named/master";
allow-recursion { 127.0.0.1; 10.0.0.0/8; 192.168.0.0/16; 172.16.0.0/12; };
このコード行は、ローカルループバックアドレス(ローカルループバックブロック、/ 8全体に設定できると思う)と3つのプライベートIPv4アドレススペースに対する再帰DNS要求のみを処理するようにBINDサーバーに指示します。
使用していると言うWindows Server 2012には、以下のオプションがあります。
1. DNSサーバーをIISサーバーから分離します。
- 少なくとも完璧な世界では、IISと同じボックスでDNSを実行する必要はありません。
- NATされていない内部ボックスにDNSを配置して、外部の世界がそれを取得できないようにし、IISを他の世界がアクセスできる外部向けのボックスに常駐させます。デュアルホーミングまたはファイアウォールルールを使用して、IISサーバーからDNSサーバーへのアクセスを選択的に許可できます。
2.組み込みのWindowsファイアウォールなどのファイアウォールで外部DNS要求をブロックします。
- 驚いたことに、Windows DNSでは、再帰DNS要求が受け入れられるアドレスを制限することは許可されていないため、これは実際にはMicrosoftが推奨する方法です。
-
- DNSルール(TCPおよびUDP)を選択し、
Remote IP address
セクションに移動して、LANで使用中のサブネット、およびActive Directoryへのアクセスを必要とするサーバーの公開IPアドレスを追加します。BINDの例と同様に、IPv4のプライベートアドレス空間がある127.0.0.0/8
10.0.0.0/8
192.168.0.0/16
と172.16.0.0/12
。
- あなたの環境でDNSとADがどのように設定されているかを実際に述べていないので、これがあなたの環境にどのような影響を与えるかは正直わかりません。
-
- DNSマネージャーを開きます。
- コンソールツリーで、該当するDNSサーバーを右クリックし、[プロパティ]をクリックします。
- どこ?
- DNS /適用可能なDNSサーバー
- [詳細設定]タブをクリックします。
- [サーバーオプション]で、[再帰を無効にする]チェックボックスをオンにして、[OK]をクリックします。
- マルチフォレスト環境があり、それを機能させるために条件付きフォワーダーを使用しているため、そのボックスをチェックしません。同様に考慮する必要があるかもしれません。