DNS増幅攻撃

DNS増幅は、DNSリゾルバーの効果を活用してトラフィックで被害者を圧倒するDDoS攻撃です。

学習目的

この記事を読み終えると、以下のことができるようになります。

  • DNS増幅攻撃の定義
  • DNS増幅攻撃の仕組みに関する説明
  • 複数のDNS増幅攻撃の軽減戦略とは

関連コンテンツ


さらに詳しく知りたいとお考えですか?

是非、Cloudflareが毎月お届けする「theNET」を購読して、インターネットで最も人気のある洞察をまとめた情報を入手してください!

当社がお客様の個人データをどのように収集し処理するかについては、Cloudflareのプライバシーポリシーをご確認ください。

記事のリンクをコピーする

DNS増幅攻撃とは?

このDDoS攻撃は、リフレクションベースのボリューム分散型サービス拒否(DDoS)攻撃であり、攻撃者はオープンDNSリゾルバーの機能を活用して、標的のサーバーまたはネットワークをトラフィック量で圧倒し、サーバーとその周辺のインフラストラクチャにアクセスできなくします。

DNS増幅攻撃の仕組みとは?

どの増幅攻撃でも、攻撃者と標的のWebリソースとの間の帯域幅消費の不均衡が悪用されます。多くのリクエストでコストの格差が拡大すると、結果として生じるトラフィックの量がネットワークインフラストラクチャを混乱させる可能性があります。大規模な応答をもたらす小さなクエリを送信することにより、悪意のあるユーザーは少ないリソースからより多くのデータを取得できます。ボットネット内のそれぞれのボットが同様のリクエストを行うと、この拡大率はボットの数を掛け合わせた分だけさらに増幅するため、攻撃者は検出されにくくなると同時に、攻撃トラフィックが大幅に増加するという利点を享受できるのです。

DNS増幅攻撃の1つのボットは、例えるなら、悪意のある10代の若者がレストランに電話し、「すべての料理を1つずつください。僕に折り返し電話して、注文した料理をすべて教えてください」というような状況です。そこでレストラン側が折り返し電話するための番号を聞くと、標的となる被害者の電話番号を指定してきます。その標的となった被害者は、レストランから電話を受け、要求しなかった多くの情報を受けとることになります。

それぞれのボットが、標的となる被害者の実際の発信元IPアドレスに変更された偽装IPアドレスを使用してDNSリゾルバーを開くリクエストを行うと、標的はDNSリゾルバーから応答を受け取ります。大量のトラフィックを作成するために、攻撃者はDNSリゾルバーが可能な限り大きな応答を生成する方法で要求を構築します。その結果、標的は攻撃者の最初のトラフィックの増幅を受け取り、そのネットワークは偽のトラフィックでいっぱいになり、サービス拒否を引き起こします。

DNS増幅DDoS攻撃の図

DNS増幅は次の4つのステップに分けることができます:

  1. 攻撃者は、侵害されたエンドポイントを使用して、偽装されたIPアドレスを含むUDPパケットをDNSリカーサーに送信します。パケットの偽装アドレスは、被害者の実際のIPアドレスを指します。
  2. それぞれのUDPパケットはDNSリゾルバーにリクエストを行い、多くの場合、可能な限り最大の応答を受信するために「ANY」などの引数を渡します。
  3. リクエストを受信した後、応答することで役に立とうとしているDNSリゾルバーは、偽装されたIPアドレスに大量の応答を送信します。
  4. 標的のIPアドレスが応答を受信し、周囲のネットワークインフラストラクチャが大量のトラフィックで圧倒され、サービス拒否が発生します。

ネットワークインフラストラクチャを停止させるには、いくつかのリクエストだけでは不十分ですが、このシーケンスに複数のリクエストとDNSリゾルバーの数を掛け合わせると、標的が受信するデータの増幅は相当なものになります。リフレクション攻撃に関する技術的な詳細をご覧ください。

DNS増幅攻撃を軽減する方法とは?

Webサイトまたはサービスを実行している個人または企業の場合、軽減オプションは限られています。これは、標的となる可能性のある個人のサーバーが、帯域幅消費型攻撃の主な影響を直接受ける場所にないことが原因です。大量のトラフィックが生成されるため、サーバーを取り巻くインフラストラクチャが影響を受けます。インターネットサービスプロバイダー(ISP)または他のアップストリームインフラストラクチャプロバイダーは、圧倒されることなく着信トラフィックを処理できない場合があります。その結果、ISPは標的となる被害者のIPアドレスへのすべてのトラフィックをブラックホール化し、ISP自体を保護し、標的のサイトをオフラインにする可能性があります。軽減戦略は、Cloudflare DDoS攻撃対策などのオフサイト保護サービスを除き、ほとんどが予防的なインターネットインフラストラクチャソリューションです。

オープンDNSリゾルバーの総数を減らす

DNS増幅攻撃の重要なコンポーネントは、オープンDNSリゾルバーへのアクセスです。不十分な構成のDNSリゾルバーをインターネットに公開すると、攻撃者は、DNSリゾルバーを発見しさえすれば、これを利用することができてしまいます。理想的には、DNSリゾルバーは信頼できるドメイン内で発信されたデバイスにのみサービスを提供するべきです。リフレクションベースの攻撃の場合、オープンDNSリゾルバーはインターネット上の任意の場所からのクエリに応答し、悪用の可能性を許可します。信頼できる送信元からのクエリにのみ応答するようにDNSリゾルバーを制限すると、サーバーはあらゆるタイプの増幅攻撃に対して貧弱な手段になります。

送信元IP検証–ネットワークを離れる偽装パケットを停止

攻撃者のボットネットによって送信されるUDPリクエストには、送信元IPアドレスが被害者のIPアドレスになりすます必要があるため、UDPベースの増幅攻撃の有効性を低下させる重要な要素は、インターネットサービスプロバイダー(ISP)が偽装IPアドレスを持つ内部トラフィックを拒否することです。ネットワークの外部から発信されたように見える送信元アドレスを使用して、ネットワークの内部からパケットが送信されている場合、偽装パケットの可能性があり、ドロップすることができます。Cloudflareでは、すべてのプロバイダーにイングレスフィルタリングを実装することを強くお勧めします。また、DDoS攻撃に図らずも参加してしまっているISPに連絡し、脆弱性について知らせることもできます。

CloudflareのDNS増幅攻撃対策とは?

適切に設定されたファイアウォールと十分なネットワーク容量(Cloudflareの規模でない限り、常に簡単に手に入るとは限りません)を使用すると、DNS増幅攻撃などのリフレクション攻撃をブロックするのは簡単です。攻撃は単一のIPアドレスを標的にしますが、当社のエニーキャストネットワークは、すべての攻撃トラフィックを、障害を起こせないところまで分散します。Cloudflareはスケールの利点を活用して、攻撃の重みを多くのデータセンターに分散し、サービスが中断されず、攻撃が標的のサーバーのインフラストラクチャを圧倒しないように負荷を分散します。最近の6か月の間に、DDoS軽減システム「Gatebot」は、6,329件の単純なリフレクション攻撃(40分ごとに1回)を検出し、当社のネットワークはそのすべてを正常に軽減しました。Cloudflareの高度なDDoS攻撃対策の詳細をご覧ください。