この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章では、Cisco Anomaly Guard Module(Guard モジュール)の概要、コンポーネント、および動作のしくみについて説明します。この章は、次の項で構成されています。
• Cisco Anomaly Guard Module について
• ゾーンについて
Cisco Anomaly Guard Module(Guard モジュール) は、有効な Distributed Denial of Service(DdoS;分散型サービス拒絶)攻撃軽減デバイスで、疑わしいトラフィックを宛先変更して処理し、攻撃パケットをドロップし、正当なトランザクションを転送します。
Guard モジュールは、次の製品のどちらかに設置できます。
Guard モジュールは、ネットワーク要素であるゾーンを DDoS 攻撃から保護します。Guard モジュールは、攻撃対象から宛先変更されたトラフィックを受信し、特定の攻撃パケットを識別して削除し、正当なトラフィックを元の宛先に転送します。詳細については、「ゾーンについて」を参照してください。
通常 Guard モジュールは、分散型のアップストリーム構成にバックボーン レベルで導入します。Guard モジュールは攻撃を検出すると、攻撃されたゾーンのトラフィックのみを自分宛に宛先変更します。他のゾーンのトラフィックは、遅れることなくそのまま流されます。Guard モジュールはパケットを分析して DDoS コンポーネントを除去し、クリーンなトラフィック パケットが目的のゾーンに流れるようにします。
Guard モジュールは常にトラフィックをフィルタリングし、新たに発生する攻撃に対する警戒を続けます。
• トラフィックの宛先変更メカニズム。このメカニズムにより、ゾーンのトラフィックがラーニング システムと保護システムに宛先変更され、その後正当なトラフィック フローがゾーンに戻されます。この機能がネットワーク トラフィックに支障をきたすことはありません。
• アルゴリズムに基づいたラーニング システム。このラーニング システムは、ゾーンのトラフィックをラーニングし、それ自体を特定の特性に適合させ、しきい値とポリシーという形で参考値と保護のための指示を与えることにより、保護プロセスをサポートします。また、Guard モジュールには、Guard モジュールがゾーンのトラフィックのラーニング プロセスとそのトラフィックに合せた調整を完了していないときにゾーンが攻撃された場合に対応するために、オンデマンドの保護も用意されています。
• 保護プロセス。このプロセスでは、正当なトラフィックと疑わしいトラフックが区別され、悪意のあるトラフィックがフィルタリングされ、正当なトラフィックのみがゾーンに渡されます。
Guard モジュールは、これらのコンポーネントを統合することにより、攻撃時には保護の役割を果たし、それ以外のときにはバックグラウンドに控えた状態を保つことができます。攻撃の疑いがない場合は、宛先変更プロセスをアクティブにする必要はなく、Guard モジュールはトラフィックを監視しません。
DDoS 攻撃の主な目的は、正当なユーザが特定のコンピュータまたはネットワーク リソースにアクセスできないようにすることです。このような攻撃は、個人が悪意のある要求をターゲットに送信してネットワーク サービスの質を低下させ、サーバやネットワーク デバイスのネットワーク サービスを妨害し、不要なトラフィックでネットワーク リンクを飽和状態にすることで発生します。
DDoS 攻撃は、悪意のあるユーザがインターネット上で数百、数千台ものホスト(ゾンビ)を操作し、トロイの木馬を仕掛けることにより発生します。トロイの木馬とは、無害なアプリケーションを装った複製しないプログラムで、ユーザが予想もしない有害なアクションを起こすものです。トロイの木馬は、攻撃者によりマスター サーバ コントローラから、いつ、どのように組織的攻撃を開始するかの指示を受けます。ゾンビは、保護されたサーバのネットワーク リソースを偽のサービス要求によって使用不能にする自動化スクリプトを実行します。このような攻撃には、Web サーバに偽のホームページ要求を大量に送信して正当なユーザがアクセスできないようにしたり、Domain Name System(DNS; ドメイン ネーム システム)サーバのアベイラビリティと正確性を低下させようとしたりするものなどがあります。多くの場合、ゾンビは個人によって開始されますが、実際に攻撃用コードを実行しているコンピュータは、複数の組織によって管理される複数の自律システム上に分散しており、その数は何十万にも及ぶ可能性があります。このような分散攻撃は、一般的なゾーンで使用される低い帯域幅では処理できない大量のトラフィックを発生させます。ゾーンの詳細については、「ゾーンについて」を参照してください。
Guard モジュールは DDoS 攻撃からゾーンを保護します。ゾーンは、次のいずれかの要素です。
• ネットワーク リンクまたはサブネット、またはネットワーク全体
Guard モジュールは、ゾーンのネットワーク アドレスの範囲が重なっていなければ、複数のゾーンを同時に保護できます。
ゾーンを定義するときに、Guard モジュールがゾーンの保護に使用するネットワーク アドレスとポリシーを設定します。ゾーンに名前を割り当てて、この名前を使用してゾーンを参照します。
ターゲット ホスト(ゾーン)を保護するために、Guard モジュールはゾーン トラフィックを自分自身に宛先変更します。外部(Cisco Traffic Anomaly Detector Moduleなど)から攻撃の兆候が示されてから Guard モジュールを設定してゾーンを保護することも、ゾーンの設定完了後すぐにゾーンを保護するように Guard モジュールに指示することもできます。Guard モジュールはデータ フローを分析し、すべての DDoS 要素をブロックし、宛先変更されたストリームから悪意のあるパケットを除去し、クリーンなトラフィックが目的のゾーンに流れるようメインのデータ パスに戻します。図 1-1 に、保護動作を示します。
宛先変更は、Guard モジュールのルーティング設定を使用してグローバルに設定されます。詳細については、 第 5 章「トラフィックの宛先変更の設定」 を参照してください。
図 1-1 Cisco Anomaly Guard Moduleの動作
Guard モジュールは、ゾーン トラフィックの特性をラーニングしてゾーン トラフィックの比較基準とし、悪意のある攻撃になりうるあらゆる異常をトレースします。
現在ネットワーク上に攻撃が発生していないときに、ラーニング プロセスによって正常なトラフィック パターンのベースラインが作成されます。Guard モジュールはこれを参照ポイントとして使用し、異常の発生検出に役立てます。これらの参照ポイントをポリシーといいます。
ラーニング プロセスは、次の 2 つのフェーズで構成されています。
• ポリシー構築フェーズ:ゾーンのポリシーを作成します。ポリシー テンプレートは、Guard モジュールがゾーン ポリシーの構築に使用する規則を提供します。トラフィックが透過的に Guard モジュールを通過することにより、ゾーンが使用する主なサービスを検出できます。
• しきい値調整フェーズ:ゾーン サービスのトラフィック レートに合せてゾーン ポリシーを調整します。トラフィックが透過的に Guard モジュールを通過することにより、Guard モジュールはポリシー構築フェーズ中に検出されたサービスのしきい値を調整できます。
ゾーン ポリシーは Guard モジュールの構成要素で、悪意のあるものになりうる異常をトレースするために、Guard モジュールがゾーン トラフィックを比較する基準になります。トラフィック フローがポリシーしきい値を超えると、Guard モジュールはこれを異常または悪意のあるトラフィックとして認識し、フィルタ セット(動的フィルタ)を動的に設定し、攻撃の重大度に応じて適切な保護レベルをこのトラフィック フローに適用します。
トラフィックのラーニングの詳細については、 第 6 章「ゾーンの設定」 を参照してください。ゾーン ポリシーの詳細については、 第 8 章「ポリシー テンプレートとポリシーの設定」 を参照してください。
Guard モジュールの保護は、次の方法でアクティブにできます。
• 自動保護モード:動的フィルタは、自動でアクティブになります。
• インタラクティブ保護モード:動的フィルタは、手動でインタラクティブにアクティブになります。動的フィルタは、推奨処置としてグループ化されます。ユーザは、これらの推奨事項を確認して、推奨事項を受け入れるか、無視するか、自動アクティベーションに切り替えるかを決定できます。
詳細については、 第 11 章「インタラクティブ保護モードの使用方法」 を参照してください。
しきい値調整フェーズとゾーン保護を同時にアクティブにして(保護およびラーニング機能)、Guard モジュールがゾーン ポリシーのしきい値をラーニングすると同時に、ゾーン ポリシーのしきい値でトラフィックの異常がないかを監視するようにできます。Guard モジュールは、攻撃を検出するとラーニング プロセスを停止しますが、ゾーン保護は継続します。このプロセスにより、Guard モジュールでは悪意のあるトラフィックのしきい値がラーニングされなくなります。攻撃が終了すると、Guard モジュールはラーニング プロセスを再開します。詳細については、「ゾーンのポリシーのしきい値調整とゾーン保護のイネーブル化の同時実行」を参照してください。
システム定義のゾーン テンプレートを使用すると、Guard モジュールによるゾーン トラフィック特性のラーニングをイネーブルにしなくても、ゾーンを保護することができます。ゾーン テンプレートにおける定義済みのポリシーとフィルタにより、Guard モジュールに未知のトラフィック特性を持つゾーンを保護できます。詳細については、「オンデマンド保護のアクティブ化」を参照してください。
Guard モジュールはゾーンごとの攻撃レポートを提供し、ゾーン ステータスが表示できるようになっています。攻撃レポートでは、最初の動的フィルタの生成から保護の終了まで、攻撃の詳細な情報が提供されます。詳細については、 第 12 章「攻撃レポートの使用方法」 を参照してください。
Guard モジュールは、ゾーンのトラフィックを必要な保護レベルに誘導するために、4 種類のフィルタを使用します。これらのフィルタは、トラフィック フローをカスタマイズし、DDoS 保護防止操作を制御するように設定できます。
Guard モジュールでは、次のタイプのフィルタが使用されます。
• ユーザ フィルタ:指定されたトラフィック フローに必要な保護レベルを適用します。
• バイパス フィルタ:Guard モジュールが特定のトラフィック フローを処理しないようにします。
• フレックスコンテンツ フィルタ:指定されたトラフィック フローをカウントまたはドロップします。フレックスコンテンツ フィルタには非常に柔軟なフィルタリング機能があり、IP ヘッダーと TCP ヘッダー内のフィールドに応じたフィルタリングや、コンテンツ バイト数に応じたフィルタリングが可能です。
• 動的フィルタ:指定されたトラフィック フローに必要な保護レベルを適用します。Guard モジュールは、トラフィック フロー分析に基づいて動的フィルタを作成します。Guard モジュールは常にこれらのフィルタ セットをゾーン トラフィックや DDoS 攻撃のタイプに合せて調整しています。動的フィルタには有効期間があり、攻撃が終了すると削除されます。
Guard モジュールには次の 3 つの保護レベルがあり、各レベルでさまざまなプロセスをトラフィック フローに適用しています。
• 分析保護レベル:Guard モジュールはトラフィックを監視状態で流します。ただし、保護中に異常がトレースされていない場合、トラフィックは影響を受けません。Guard モジュールが異常をトレースすると、そのトラフィックを適切な保護レベルに誘導します。
• 基本保護レベル:Guard モジュールはスプーフィング防止機能やゾンビ防止機能をアクティブにし、疑わしいトラフィック フローを調べてトラフィックを認証し、その送信元を確認します。
• 強化保護レベル:Guard モジュールは、強力なスプーフィング防止機能をアクティブにします。この機能により、トラフィック フローのパケットが調べられ、その正当性が確認されます。
Guard モジュールはトラフィックを分析し、ゾーン トラフィックの異常を監視するゾーン ポリシーとゾーン フィルタを調整します。また、ゾーンに注入するトラフィックのレートを制限し、トラフィック フローが一杯にならないようにします。
Guard モジュールの保護サイクルは、ゾーン フィルタ、ゾーン ポリシー、および Guard の保護レベルをトラフィック フローに適用し、ゾーンをクリーンにして正当なトラフィックのみをゾーンに戻します。図 1-2 に Guard モジュールの保護サイクルを示します。
ゾーン保護がアクティブになると、ゾーン ポリシーによりゾーンのトラフィック フローが監視されます。ポリシーは、特定のトラフィック フローがポリシーのしきい値を超過すると、そのフローに対してアクションを実行します。実行するアクションは、通知の発行から、新しいフィルタ(動的フィルタ)の作成にまで及びます。このフィルタは、宛先変更されたトラフィックを関連する保護レベルに誘導するものです。Guard モジュールは、いくつかの認証方式を使用してトラフィックを認証します。Guard モジュールはトラフィック フローを分析し、ゾーンで対応可能な定義済みのレートを超えたトラフィックをドロップし、正当なトラフィックをゾーンに戻します。
Guard モジュールは、クローズド ループのフィードバック サイクルを制御して、動的に変化するゾーン トラフィック特性に合せて Guard モジュールの保護処置を調整します。Guard は適切な保護戦略を採用し、次々に変化する DDoS 攻撃のタイプやトラフィック フローに対応します。事前定義された期間中に、使用されている動的フィルタがなく、ゾーンへのトラフィックがドロップされず、新しい動的フィルタが追加されなかった場合、Guard はゾーン保護を停止します。