サーバーをUDPトラフィックでいっぱいにさせることを目的とした、NTPプロトコルの脆弱性を利用するボリュームDDoS攻撃です。
この記事を読み終えると、以下のことができるようになります。
関連コンテンツ
是非、Cloudflareが毎月お届けする「theNET」を購読して、インターネットで最も人気のある洞察をまとめた情報を入手してください!
記事のリンクをコピーする
NTP増幅攻撃は、リフレクションベースのボリューム分散型サービス拒否(DDoS) 攻撃であり、攻撃者がネットワークタイムプロトコル(NTP)サーバー機能を活用して、増幅されたUDPトラフィックの量で標的のネットワークまたはサーバーを圧倒し、標的とその周辺インフラストラクチャを通常のトラフィックにアクセスできないようにします。
すべての増幅攻撃は、攻撃者と標的のWebリソースとの間の帯域幅コストの不均衡を悪用します。多くのリクエストでコストの格差が拡大すると、結果として生じるトラフィックの量がネットワークインフラストラクチャを混乱させる可能性があります。大規模な応答をもたらす小さなクエリを送信することにより、悪意のあるユーザーは少ないリソースからより多くのデータを取得できます。この拡大率にボットネット内のそれぞれのボットが同様のリクエストを掛けることにより、攻撃者は検出が不明瞭になり、攻撃トラフィックが大幅に増加する利点を享受できます。
DNSフラッド攻撃は DNS増幅攻撃とは異なります。DNSフラッドとは異なり、DNS増幅攻撃は、攻撃の発信元を隠してその有効性を高めるために、セキュリティ保護されていないDNS サーバーからのトラフィックをリフレクトおよび増幅します。DNS増幅攻撃は、帯域幅接続の小さいデバイスを使用して、セキュリティで保護されていないDNSサーバーに多数のリクエストを行います。デバイスは、非常に大きな DNSレコードに対して多くの小さなリクエストを行いますが、攻撃者はリクエストを行う際に、返信アドレスを標的となる被害者のものに偽装します。この増幅により、攻撃者は限られた攻撃リソースのみでより大きな標的を得ることができます。
DNS増幅と同様に、NTP増幅は、悪意のある10代の若者がレストランに電話し、「すべて1つずつください。折り返し電話して、すべての注文を教えてください」というような文脈として考えることができます。レストラン側が折り返し電話するための番号を聞くと、指定される番号は標的となる被害者の電話番号です。その標的となった者は、レストランから電話を受け、要求しなかった多くの情報を受けとります。
ネットワークタイムプロトコルは、インターネットに接続されたデバイスが内部クロックを同期できるように設計されており、インターネットアーキテクチャで重要な機能を果たします。一部のNTPサーバーで有効になっているmonlistコマンドを悪用することにより、攻撃者は最初のリクエストトラフィックを増やすことができ、結果として大きな応答が得られます。このコマンドは古いデバイスでデフォルトで有効になっており、NTPサーバーに対して行われたリクエストの最後の600個の送信元IPアドレスで応答します。メモリに600個のアドレスを持つサーバーからのmonlistリクエストは、最初のリクエストよりも206倍も大きくなります。これは、1 GBのインターネットトラフィックを持つ攻撃者は200ギガバイト以上の攻撃を行うことができることを意味し、結果として生じる攻撃トラフィックは大幅に増加します。
有効なサーバーからの正当なトラフィックのように見える攻撃トラフィックの結果、正当なアクティビティから実際のNTPサーバーをブロックせずにこの種の攻撃トラフィックを軽減することは困難です。 UDPパケットはハンドシェイクを必要としないため、NTPサーバーは、リクエストが本物であることを確認せずに、標的のサーバーに大量の応答を送信します。これらの事実は、デフォルトで大きな応答を送信する組み込みコマンドと合わせて、NTPサーバーをDDoS増幅攻撃の優れたリフレクションソースにします。
Webサイトまたはサービスを実行している個人または企業の場合、軽減オプションは限られています。これは、標的となる可能性のある個人のサーバーが、帯域幅消費型攻撃の主な影響を直接受ける場所にないことが原因です。大量のトラフィックが生成されるため、サーバーを取り巻くインフラストラクチャが影響を受けます。インターネットサービスプロバイダー(ISP)または他のアップストリームインフラストラクチャプロバイダーは、圧倒されることなく着信トラフィックを処理できない場合があります。その結果、ISPは標的となる被害者のIPアドレスへのすべてのトラフィックをブラックホール化し、ISP自体を保護し、標的のサイトをオフラインにする可能性があります。軽減戦略は、Cloudflare DDoS攻撃対策などのオフサイト保護サービスを除き、ほとんどが予防的なインターネットインフラストラクチャソリューションです。
monlist脆弱性につぎはぎを当てる簡単なソリューションは、コマンドを無効にすることです。バージョン4.2.7より前のNTPソフトウェアのすべてのバージョンは、デフォルトで脆弱です。 NTPサーバーを4.2.7以上にアップグレードすると、コマンドが無効になり、脆弱性にパッチが適用されます。アップグレードが不可能な場合、US-CERTの指示に従うと、サーバー管理者が必要な変更を加えることができます。
攻撃者のボットネットによって送信されるUDPリクエストには、送信元IPアドレスが被害者のIPアドレスになりすます必要があるため、UDPベースの増幅攻撃の効果を弱めるために重要なことは、インターネットサービスプロバイダー(ISP)が偽装IPアドレスを持つ内部トラフィックを拒否することです。ネットワークの外部から発信されたように見える送信元アドレスを使用して、ネットワークの内部からパケットが送信されている場合、偽装パケットの可能性があり、ドロップすることが可能です。Cloudflareでは、すべてのプロバイダーにイングレスフィルタリングを実装することを強くお勧めします。また、DDoS攻撃(BCP38に違反)に図らずも参加してしまっているISPに連絡し、脆弱性について知らせることもできます。
NTPサーバーでmonlistを無効にし、現在IPスプーフィングを許可しているネットワークにイングレスフィルタリングを実装する組み合わせは、意図したネットワークに到達する前にこのタイプの攻撃を阻止する効果的な方法です。
適切に設定されたファイアウォールと十分なネットワーク容量(Cloudflareの規模でない限り、常に簡単に手に入るとは限りません)を使用すると、NTP増幅攻撃などのリフレクション攻撃をブロックするのは簡単です。攻撃は単一のIPアドレスを標的にしますが、当社のエニーキャストネットワークは、すべての攻撃トラフィックを、障害を起こせないところまで分散します。Cloudflareはスケールの利点を活用して、攻撃の重みを多くのデータセンターに分散し、サービスが中断されず、攻撃が標的のサーバーのインフラストラクチャを圧倒しないように負荷を分散します。最近の6か月の間に、DDoS軽減システム「Gatebot」は、6,329件の単純なリフレクション攻撃(40分ごとに1回)を検出し、当社のネットワークはそれらすべてを正常に軽減しました。Cloudflareの高度なDDoS攻撃対策の詳細をご覧ください。