この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
この章では、Cisco Traffic Anomaly Detector Module(Detector モジュール)のゾーン ポリシー、ポリシー構造、およびポリシー テンプレートについて説明します。また、ゾーン ポリシーとポリシー テンプレートのパラメータの設定方法についても説明します。
• ポリシーの監視
トラフィック フローの統計分析を行うために、Detector モジュールには特定のタイプのトラフィックを処理する定義があります。この定義を、ゾーン ポリシーといいます。ゾーン ポリシーは Detector モジュールの構成要素で、Detector モジュールがゾーン トラフィックを比較する基準になります。ゾーン ポリシーは、常にトラフィック フローを測定し、特定のトラフィック フローが悪意のあるものまたは異常なもの(トラフィック フローがポリシーのしきい値を超えた場合に発生する)と判断すると、そのフローに対してアクションを実行します。フィルタ(動的フィルタ)セットを動的に設定して、Detector がリモート Guard リストに定義された Cisco Anomaly Guard Module をアクティブにしてゾーンを保護するか、イベントを自身の syslog に記録します。
ゾーン ポリシーを作成するために、Detector モジュールは 2 つのフェーズでゾーン トラフィックをラーニングします。Detector モジュールは事前定義されたテンプレートを使用してポリシーを構築し、それからポリシーのしきい値をラーニングします。各ポリシー テンプレートは、Detector モジュールが特定の DDoS 攻撃(分散型サービス拒絶攻撃)の脅威を検出するために必要なポリシーの作成に使用します。
Detector モジュールがゾーン ポリシーを作成したら、ゾーン ポリシーの追加および削除、またはゾーン ポリシー パラメータの変更が行えます。
ゾーン ポリシーは、Detector モジュールがゾーン トラフィック フローの分析と測定に使用する特性を定義します。ポリシーの名前はセクションで構成されており、各セクションは測定対象であるトラフィック特性を示しています。たとえば、ポリシー http/80/analysis/syns/src_ip は、Detector モジュールの分析検出機能によって認証され、送信元 IP アドレスに応じて集約された、ポート 80 宛ての HTTP SYN パケットのトラフィック フローを測定します。
図 7-1 に、ゾーン ポリシー名の例を示します。
表7-1 に、ポリシー名のセクションを示します。
|
|
---|---|
ポリシーの構築に使用されたポリシー テンプレート。各ポリシー テンプレートは、特定の DDos 攻撃の脅威の検出のために Detector モジュールが必要とする特性を扱います。詳細については、「ポリシー テンプレートについて」を参照してください。 |
|
ゾーン ポリシーが監視するトラフィック フローのポート番号またはプロトコル番号。詳細については、「サービス」を参照してください。 |
|
Detector モジュールがトラフィック フローに適用する検出レベル。詳細については、「検出レベル」を参照してください。 |
|
Detector モジュールが監視するパケット タイプ。詳細については、「パケット タイプ」を参照してください。 |
|
Detector モジュールがポリシーの集約に使用するトラフィック特性。詳細については、「トラフィック特性」を参照してください。 |
ポリシー名の最初の 4 つのセクション(ポリシー テンプレート、サービス、検出レベル、および パケット タイプ)は、分析されるトラフィックのタイプを定義します。ポリシー パスの最後のセクション(トラフィック特性)は、フローの分析方法を定義します。
ポリシーには、相互依存性および優先度があります。同じトラフィック フローを定義する 2 つのポリシーがある場合、Detector モジュールは、より限定的なポリシーを使用してフローを分析します。たとえば、TCP サービスに関連するポリシーでは、HTTP 関連のポリシーによって処理される HTTP サービスが除外されます。
ポリシーの動作面を設定できます。動作面では、ポリシーのトリガーを定義し、ポリシーがアクティブになったときに実行するアクションを定義します。詳細については、「ポリシー パラメータの設定」を参照してください。
Detector モジュールは、次の 2 つのフェーズで構成されるラーニング プロセスでゾーン ポリシーを作成します。これらのフェーズでは、Detector モジュールはゾーン トラフィックをラーニングし、特定のゾーン トラフィック特性に合せて自己調整します。
1. ポリシー構築フェーズ:Detector モジュールは、ポリシー テンプレートを使用してゾーン ポリシーを構築し、ゾーンが使用する主なサービスを検出します。
2. しきい値調整フェーズ:Detector モジュールは、ポリシー構築フェーズで検出されたサービスのポリシーしきい値を、ゾーン サービスのトラフィック レートに合せて調整します。
ラーニング プロセス中、ゾーン トラフィックは Detector モジュールを透過的に通過します。詳細については、「Detector モジュールの Cisco Anomaly Guard Module とのゾーン設定の同期」を参照してください。
ポリシー テンプレートとは、Detector モジュールがポリシー構築フェーズでゾーン ポリシーを作成するときに使用する、ポリシー構築の規則の集まりです。ポリシー構築フェーズ終了時の各テンプレートの出力が、ポリシーの集まりになります。ポリシー テンプレートの名前は、テンプレートから作成されるすべてのポリシーに共通の特性に由来し、プロトコル(DNS など)、アプリケーション(HTTP など)、または目的(ip_scan など)が使用されます。たとえば、ポリシー テンプレート tcp_connections は、同時接続数など、接続に関連するポリシーを生成します。新しいゾーンを作成する場合、Detector モジュールのゾーン設定には一連のポリシー テンプレートが用意されています。
表7-2 で、Detector モジュールのポリシー テンプレートについて説明します。DETECTOR_DEFAULT ゾーン テンプレートを使用して新しいゾーンを作成する場合、Detector モジュールには次のポリシー テンプレートが用意されています。
Detector モジュールには、特定のタイプの攻撃または特定のサービス向けに設定されているゾーン テンプレートから作成されたゾーン用に追加のポリシー テンプレートがあります。 表7-3 に、特定のゾーン テンプレートに基づいて Detector モジュールがゾーン設定に追加する、ポリシー テンプレートを示します。
|
|
---|---|
worm_tcp:TCP ワームに関連するポリシーのグループを構築します。 TCP ポリシーは、ワーム攻撃を管理します。この攻撃では、1 つまたは複数の送信元 IP アドレスから、多数の宛先 IP アドレスに対する多数の未確立の接続が同一ポート上に作成されます。ポリシー テンプレートは、主に IP アドレス定義がサブネットであるゾーン向けに設計されています。 Detector モジュールは、ポリシー構築フェーズではなく、ラーニング プロセスのしきい値調整フェーズで、このポリシー テンプレートから作成されたポリシーにサービスを追加します。ポリシー テンプレート パラメータの |
|
sip_udp:SIP1 over UDP を使用して VoIP セッションを確立し、セッション確立後に RTP/RTCP2 を使用して音声データを SIP エンド ポイント間で伝送する VoIP3 アプリケーションを監視するポリシー グループを構築します。 |
1.SIP = Session Initiation Protocol 2.RTP/RTCP = Real-Time Transport Protocol/Real-Time Control Protocol |
GUARD_ ゾーン テンプレートからゾーンを作成する場合、Cisco Anomaly Guard Module に同期させることができる追加のポリシー テンプレートのパラメータを設定できます。Detector モジュールは、 表7-4 に示すポリシー テンプレートを使用して tcp_connections と tcp_outgoing のポリシー テンプレートを http_ns、tcp_connections_ns および tcp_outgoing_ns policies のポリシー テンプレートに置き換えます。http_ns、tcp_connections_ns、および tcp_outgoing_ns の各ポリシー テンプレートは、Cisco Anomaly Guard Module に対し、トラフィック フローに強化保護レベルを適用するよう要求するアクションを持つポリシーは作成しません。
表7-4 に、Detector モジュールの GUARD_TCP_NO_PROXY ポリシー テンプレートの詳細を示します。
テンプレート |
ポリシー テンプレート |
関連する対象 |
---|---|---|
すべてのポリシー テンプレートのリストを表示するには、ゾーン設定モードで policy-template コマンドを使用し、 Tab キーを 2 回押してください。
ラーニング プロセス中、ゾーン トラフィックは Detector モジュールを透過的に通過します。アクティブな各ポリシー テンプレートは、ポリシー定義とゾーン トラフィック特性に基づいてポリシー グループを作成します。Detector モジュールは、トラフィック量のレベルに応じて、ポリシー テンプレートが監視するサービス(プロトコルとポート番号)をランク付けします。次に Detector モジュールは、トラック量が最大のサービスと、定義済みの最小しきい値を超えたサービスを選択し、各サービスに対するポリシーを作成します。ポリシー テンプレートの中には、特定のポリシーが追加されなかったすべてのトラフィック フローを処理する、any というサービスを備えた追加のポリシーを作成するものもあります。
• サービスの最大数の設定:Detector モジュールがポリシー テンプレートを選択して特定のポリシーを作成する対象になるサービスの最大数を定義します。
• 最小しきい値の設定:Detector モジュールでサービスをランク付けするために超える必要のある最小しきい値を定義します。
• ポリシー テンプレートの状態の設定:Detector モジュールがポリシー テンプレートからポリシーを作成するかどうかを定義します。
ポリシー テンプレート パラメータである、サービスの最大数と最小しきい値は、worm_tcp ポリシー テンプレートには影響しません。
ポリシー テンプレートのパラメータを設定するには、ゾーン設定モードで次のコマンドを入力して、ポリシー テンプレート設定モードに入ります。
policy-template policy-template-name
policy-template-name 引数には、ポリシー テンプレートの名前を指定します。詳細については、 表7-2 を参照してください。
このコマンドを実行すると、Detector モジュールはポリシー テンプレート設定モードに入ります。
次の例は、http ポリシー テンプレート設定モードに入る方法を示しています。
特定のポリシー テンプレートのパラメータを表示するには、ポリシー テンプレート設定モードで show コマンドを使用します。
サービスの最大数のパラメータで、ポリシー テンプレートが選択してポリシーを作成する対象となるサービスの最大数(プロトコル番号またはポート番号)を定義します。 Detector モジュールは、ポリシー テンプレートに関連するサービスを、各サービスのトラフィック量のレベルによってランク付けします。次に Detector モジュールは、トラフィック量が最大のサービスと、定義済みの最小しきい値( min-threshold パラメータで定義される)を超えたサービスを選択し、各サービスに対するポリシーを作成します。Detector モジュールは any というサービスを備えた追加のポリシーを追加し、ポリシー テンプレートの特性を持つその他のすべてのトラフィック フローを処理することができます。
(注) サービスの最大数が大きいほど、ゾーンが使用するメモリも多くなります。
サービスの最大数のパラメータは、サービスを検出するポリシー テンプレート(tcp_services、tcp_services_ns、udp_services、および other protocols など)にのみ定義できます。特定のサービスを監視するポリシー テンプレート(サービス 53 を監視する dns_tcp など)や、特定のトラフィック特性に関連するポリシー テンプレート( fragments など)には、このパラメータは設定できません。
Detector モジュールは、ポリシーのトラフィック特性に基づいて、サービスのトラフィック レートを測定します。トラフィック特性は、送信元 IP アドレスまたは宛先 IP アドレスになります。 any サービスを監視するポリシーは、特定のポリシーで処理されないすべてのサービスで送信元 IP アドレスのレートを測定します。したがって、こちらの値は正確ではありません。
サービス数を制限すると、目的のトラフィック フロー要件に合せて Detector モジュールのポリシーを設定できます。
サービスの最大数を設定するには、ポリシー テンプレート設定モードで次のコマンドを使用します。
max-services 引数は、Detector モジュールが選択するサービスの最大数を定義する、1 より大きい整数です。サービスの最大数が 10 を超えないようにすることをお勧めします。
次の例は、Detector モジュールが監視するサービスの最大数を 5 に設定する方法を示しています。
最小しきい値のパラメータは、サービスの最小トラフィック量を定義します。このしきい値を超えると、Detector モジュールは、しきい値を超えた特定のトラフィック フローに応じて、サービスのトラフィックに関連するポリシーを構築します。このしきい値を設定すると、ゾーン サービスのトラフィック量に異常検出をより的確に合せることができます。
最小しきい値のパラメータは、正しいゾーン異常検出に不可欠で必ずポリシーを構築するポリシー テンプレート(tcp_services、udp_services、other_protocols、http、および fragments)には設定できません。
最小しきい値を設定するには、ポリシー テンプレート設定モードで次のコマンドを使用します。
min-threshold 引数は、0 以上の実数(小数点以下が 2 桁の浮動小数点型の数字)で、最小しきい値レートをパケット/秒(pps)単位で定義します。同時接続および SYN/FIN の比率を測定する場合、しきい値は接続の合計数を定義する整数になります。
次の例は、ポリシー テンプレート http の最小しきい値を設定する方法を示しています。
ポリシー テンプレートの状態のパラメータは、ポリシー テンプレートをイネーブルまたはディセーブルにするかどうかを定義します。ポリシー テンプレートをディセーブルにすると、Detector モジュールがポリシー構築フェーズになっても、ポリシーは作成されません。
次のコマンドを入力して、1 つのコマンドで、ポリシー テンプレートのすべての動作パラメータを設定できます。
policy-template policy-template-name max-services min-threshold {disabled | enabled}
表7-5 に、policy-template コマンドの引数とキーワードを示します。
|
|
---|---|
ポリシー テンプレート名。詳細については、 表7-1 を参照してください。 |
|
Detector モジュールが選択して特定のポリシー テンプレートからポリシーを構築する対象となるサービスの最大数。 Detector モジュールで現在の値が変更されないようにするには、-1 という値を入力します。 詳細については、「サービスの最大数の設定」を参照してください。 |
|
Detector モジュールでサービスをランク付けするために超える必要のある最小しきい値。 Detector モジュールで現在の値が変更されないようにするには、-1 という値を入力します。 詳細については、「最小しきい値の設定」を参照してください。 |
|
ポリシー テンプレートをディセーブルにして、ポリシーが作成されないようにします。 詳細については、 「ポリシー テンプレートの状態の設定」を参照してください。 |
|
ポリシー テンプレートをイネーブルにします。詳細については、 「ポリシー テンプレートの状態の設定」を参照してください。 |
次の例は、ポリシー テンプレート tcp_services のパラメータを設定する方法を示しています。この例では、サービスの最大数は 3 に、ポリシーの状態は enabled に設定され、最小しきい値は変更されていません(-1)。
• サービス
• 検出レベル
• パケット タイプ
• トラフィック特性
ポリシー テンプレートとは、Detector モジュールがポリシー構築フェーズでゾーン ポリシーを作成するときに使用する、ポリシー構築の規則の集まりです。詳細については、「ポリシー テンプレートについて」を参照してください。
サービス セクションは、各ポリシーに関連するゾーン アプリケーションのポートまたはプロトコルを定義します。ポリシーには、相互依存性および優先度があります。同じトラフィック フローを定義する 2 つのポリシーがある場合、Detector モジュールは、より限定的なポリシーを使用してフローを分析します。サービス any は、同じポリシー テンプレートから作成された他のサービスと特に一致しないすべてのトラフィックに関連します。
個々のニーズに最適な異常検出にするために、ゾーンのメイン サービスに具体的なポリシーを定義することをお勧めします。
ゾーン ポリシーへのサービスの追加またはゾーン ポリシーからのサービスの削除を行うと、Detector モジュールはそのゾーン ポリシーに未調整のマークを付けます。ゾーン異常検出とラーニング プロセスをイネーブルにした場合、次のいずれかの操作を実行するまで、Detector モジュールはゾーン トラフィックの異常を検出できません。
• ラーニング プロセスのしきい値調整フェーズを実行して、その結果を受け入れる(「ポリシーしきい値の調整」を参照)。
• ゾーンのポリシーを調整済みとしてマークする(「ポリシーに対する調整済みのマーク付け」を参照)。
• サービスの追加
• サービスの削除
特定のポリシー テンプレートから作成されたすべてのポリシーに、サービスを追加できます。新しいサービスは、ポリシー構築フェーズ中に検出されたサービスに追加され、デフォルト値で定義されます。しきい値を手動で定義することもできますが、ラーニング プロセスのしきい値調整フェーズを実行して、ポリシーをゾーン トラフィックに合せて調整することをお勧めします。詳細については、「ポリシーしきい値の調整」を参照してください。
新しいサービスを追加できるのは、次のポリシー テンプレートから作成されたポリシーです。
• tcp_services、udp_services、tcp_services_ns、worm_tcp
(注) サービスを追加した後でポリシー構築フェーズをアクティブにすると、新しいサービスによって、手動で追加したサービスが無効にされる場合があります。
次の状況では、ポリシー構築を再度実行しない場合は、サービスを手動で追加する必要があります。
• 新しいアプリケーションまたはサービスがゾーン ネットワークに追加された。
• ポリシー構築フェーズの実行期間が短かったため、一部のネットワーク サービスが反映されていない(たとえば、週に 1 回のみあるいは夜間のみアクティブになる既知のアプリケーションまたはサービスがある)。
サービスを追加するには、次のコマンドのいずれかを使用します。
• add-service service-num (ポリシー テンプレート設定モードの場合)
• policy-template policy-template-name add-service service-num (ゾーン設定モードの場合)
表7-6 に、add-service コマンドの引数を示します。
|
|
---|---|
|
ポリシー テンプレート名。詳細については、 表7-2 を参照してください。 |
次の例は、ポリシー テンプレート tcp_services から作成されたすべてのポリシーに、サービスを追加する方法を示しています。
-conf-zone-scannet-policy_template-tcp_services#
add-service 25
すべてのポリシー テンプレートから作成された特定のサービスを削除できます。Detector モジュールは、特定のポリシー テンプレートから作成されたすべてのポリシーからサービスを削除します。
サービスを削除するには、次のコマンドのいずれかを使用します。
• remove-service service-num (ポリシー テンプレート設定モードの場合)
• policy-template policy-template-name remove-service service-num (ゾーン設定モードの場合)
表7-7 に、 remove-service コマンドの引数を示します。
|
|
---|---|
|
ポリシー テンプレート名。詳細については、 表7-2 を参照してください。 |
• tcp_services、udp_services、tcp_services_ns
次の状況では、ラーニング プロセスのポリシー構築を実行しない場合は、サービスを手動で削除する必要があります。
• アプリケーションまたはサービスがネットワークから削除された。
• (ネットワーク環境では一般的でないため)イネーブルにしていないアプリケーションまたはサービスが、ポリシー構築フェーズ中に識別された。
(注) サービスを削除した後でポリシー構築フェーズを実行すると、同じサービスが再度追加される場合があります。
次の例は、ポリシー テンプレート tcp_services から作成されたすべてのポリシーから、サービスを削除する方法を示しています。
-conf-zone-scannet-policy_template-tcp_services#
remove-service 25
Guard は分析検出レベルをトラフィック フローに適用します。
(注) 検出レベルの設定は静的であり、手動で設定することはできません。
Detector モジュールはパケット特性を監視します。パケット特性は、次のいずれかです。
• パケット分析(認証済みパケットなど。認証済みパケットとは、パケット接続で TCP ハンドシェイクを実行していることを Detector モジュールが確認済みであるパケットのこと)
表7-8 で、Detector モジュールが監視するパケット タイプについて説明します。
|
|
---|---|
SYN および FIN フラグの付いたパケット。Detector モジュールは、SYN フラグの付いたパケット数と FIN フラグの付いたパケット数の比率を確認します。 |
|
トラフィック特性とは、トラフィック フローをどのように分析するか、またポリシーの集約にどのような特性が使用されたか定義するものです。分析するトラフィックが同じでも、異なる特性に基づいてレートを測定する異なるポリシーがあります。次にその例を示します。
dns_tcp/53/analysis/pkts/dst_ip と dns_tcp/53/analysis/pkts/src_ip。
表7-9 で、Detector モジュールが監視するトラフィック特性について説明します。
|
|
---|---|
特定の宛先ポート上でゾーン宛先 IP アドレスをスキャンする送信元 IP アドレスの数のヒストグラム。詳細については、「ワーム ポリシーについて」を参照してください。 |
|
多数のゾーン IP アドレスが同じポートにあることを調査する 1 つの IP アドレスからのトラフィック。このキーは IP スキャニングに使用されます。 |
|
1 つのゾーン宛先 IP アドレスに多数のポートがあることを調査する 1 つの IP アドレスからのトラフィック。このキーはポート スキャニングに使用されます。 |
ラーニング プロセスが完了したら、特定のポリシー パラメータを表示し、そのポリシー パラメータがゾーン トラフィックに適しているかどうかを判断することができます。必要に応じて、単一のポリシーまたはポリシー グループのポリシー パラメータがゾーン トラフィック要件を満たすように設定できます。
ポリシー パラメータの設定を表示するには、ポリシー設定モードで show コマンドを使用します。
ポリシー設定モードに入るには、ゾーン設定モードで次のコマンドを使用します。
policy-path 引数には、ポリシー パス セクションを指定します。パスは、ポリシー セクションの一部のみを含む部分パスでもかまいません。詳細については、「ポリシー パスの使用」を参照してください。
(注) ポリシー パス階層で 1 レベル上に移動するには、ポリシー パス プロンプトで policy .. を入力します。
次の例は、dns_tcp/53/analysis/syns/global ポリシー設定モードに入る方法を示しています。
• ポリシーの状態:「ポリシーの状態の変更」を参照してください。
• ポリシーのしきい値:「ポリシーのしきい値の設定」を参照してください。
• ポリシーのタイムアウト:「ポリシーのタイムアウトの設定」を参照してください。
• ポリシーのアクション:「ポリシーのアクションの設定」を参照してください。
• ポリシーのインタラクティブ ステータス:「ポリシーのインタラクティブ ステータスの設定」を参照してください。
ポリシーの アクション 、 タイムアウト、しきい値、 およびラーニングのパラメータは、ポリシー パスの各セクションで変更できます。ただし、上位レベルのポリシー セクション(ポリシー テンプレート セクションまたはサービス セクションなど)でこれらのパラメータを変更すると、より多くのポリシーが影響を受けます。上位レベルのポリシー パス階層でこれらのパラメータを設定すると、すべてのサブポリシー パスでこれらのパラメータが変更されます。
各ポリシー パス セクションでは、ワイルドカードとしてアスタリスク(*)を使用できます。ポリシー パス セクションを指定しないと、指定していないセクションが Detector モジュールによってワイルドカード(*)とみなされます。
たとえば、ポリシー tcp_services//analysis//global では、サービスとパケット タイプにワイルドカードが使用されています。
• アクティブ:ポリシーはトラフィックを監視し、しきい値を超えた場合にアクションを実行します。
• 非アクティブ:ポリシーはトラフィックを監視し、しきい値を取得しますが、しきい値を超えてもアクションは実行しません。ポリシーを非アクティブにし、ラーニング プロセスのしきい値調整フェーズが再度実行されないようにすることができます。
• ディセーブル:ポリシーはトラフィック フローを監視しないため、しきい値を取得しません。したがって、Detector モジュールが他のポリシーの正確なしきい値を監視するようにするには、ラーニング プロセスのしきい値調整フェーズをアクティブにすることをお勧めします。
ポリシーの状態を変更するには、ポリシー設定モードで次のコマンドを使用します。
state { active | disabled | inactive }
次の例は、すべてのグローバル ポリシーの状態を設定する方法を示しています。
ゾーン ポリシーをディセーブルにした後でポリシー構築フェーズを実行すると、現在のトラフィック フローに応じてすべてのゾーン ポリシーが再設定され、ポリシーが再度アクティブになることがあります。
ポリシーのしきい値は、特定のポリシーのしきい値トラフィック レートを定義するもので、しきい値調整フェーズで調整されます。このしきい値を超過すると、ポリシーはポリシー アクションによって定義されたアクションを実行します。
しきい値は、次のポリシー テンプレートで構築されたポリシーを除き、pps で測定されます。
• num_soruces:しきい値は IP アドレスまたはポートの数で測定されます。
• tcp_connections:しきい値は接続の数で測定されます。
• worm_tcp:しきい値は、送信元 IP からスキャンできるゾーン宛先 IP アドレスの最大数として測定されます。
ポリシーのしきい値の値を設定できます。「ポリシーのしきい値の設定」を参照してください。
Detector モジュールは、現在のポリシーのしきい値に係数を掛けます。新しい値を固定値として設定しない場合、後続のしきい値調整フェーズでこの値が変更されることがあります。「係数によるしきい値の乗算」を参照してください。
Detector モジュールは、ゾーン アドレス範囲内で、特定の IP 送信元アドレスを設定します。「特定の IP しきい値の設定」を参照してください。
ポリシーのしきい値は、しきい値調整フェーズをさらに実行すると変更される場合があります。後続のしきい値調整フェーズでしきい値が変更されるかどうかは、次の方法で指定できます。
Detector モジュールは、以後のしきい値調整フェーズで、ポリシーのしきい値(proxy-threshold および threshold-list)の値を変更しません。「固定値としてのしきい値の設定」を参照してください。
Detector モジュールは、以後のしきい値調整フェーズで、現在のポリシーのしきい値、ラーニングしたしきい値、および固定乗数に基づいてポリシーのしきい値を計算します。「しきい値の乗数の設定」を参照してください。
ポリシーのしきい値を設定するには、ポリシー設定モードで次のコマンドを使用します。
threshold 引数は、ポリシーのしきい値を指定する正数です。
次の例は、ポリシー policy dns_tcp/53/analysis/syns/global のしきい値を 300 に設定する方法を示しています。
ポリシーのしきい値(proxy-threshold および threshold-list)を固定値として設定できます。Detector モジュールは、ラーニング プロセスのしきい値調整フェーズで新しいしきい値を無視し、現在のしきい値を保持します。しきい値を固定値として設定することにより、ポリシーのしきい値を設定しながらも、引き続き他のポリシーのしきい値をラーニングすることが可能になります。
ポリシーのしきい値を固定値として設定するには、ポリシー設定モードで次のコマンドを使用します。
learning-params fixed-threshold
次の例は、ポリシー policy dns_tcp/53/analysis/syns/global のしきい値を固定値に設定する方法を示しています。
ゾーン設定モードで次のコマンドを入力すると、1 つのコマンドで複数のポリシーのしきい値を固定値に設定できます。ゾーン設定モードでポリシーのしきい値を固定値として設定するには、次のコマンドを使用します。
policy policy-path learning-params fixed-threshold
policy-path 引数には、ポリシー パスを指定します。パスは、ポリシー セクションの一部のみを含む部分パスでもかまいません。詳細については、「ポリシー パスの使用」を参照してください。
次の例は、ポリシー テンプレート dns_tcp から作成されたすべてのポリシーのしきい値を固定値にする方法を示しています。
ポリシーのラーニング パラメータを表示するには、ポリシー設定モードで show learning-params コマンドを使用するか、ゾーン設定モードで show policies policy-path learning-params コマンドを使用します。
ポリシーのしきい値の乗数を設定できます。Detector モジュールは、以後のしきい値調整フェーズの結果を受け入れる前に、指定された乗数をラーニングしたしきい値に掛けて新しいポリシーのしきい値を計算します。Detector モジュールは、設定されているしきい値選択方式を使用して、しきい値調整フェーズの結果を受け入れます。「しきい値選択方式の設定」を参照してください。
ポリシーのしきい値の乗数を設定するには、ゾーン設定モードで次のコマンドを使用します。
policy policy-path learning-params threshold-multiplier threshold-multiplier
表7-10 に、 policy learning-params threshold- multiplier コマンドの引数とキーワードを示します。
|
|
---|---|
しきい値を掛ける対象のポリシー パス。パスは、ポリシー セクションの一部のみを含む部分パスでもかまいません。詳細については、「ポリシー パスの使用」を参照してください。 |
|
ポリシーのしきい値を乗算します。 threshold-multiplier は、ポリシーのしきい値に掛ける正の実数(小数点以下が 2 桁の浮動小数点型の数字)。ポリシーのしきい値を小さくするには、1 より小さい数値を入力します。 |
ポリシー設定モードでポリシーのしきい値の乗数を設定するには、learning-params threshold-multiplier threshold-multiplier コマンドを使用します。
次の例は、以後のしきい値調整フェーズで Detector モジュールがポリシー テンプレート dns_tcp から作成されたポリシーのしきい値を半減するように、しきい値乗数を設定する方法を示しています。
ポリシーのラーニング パラメータを表示するには、ポリシー設定モードで show learning-params コマンドを使用するか、ゾーン設定モードで show policies policy-path learning-params コマンドを使用します。
ポリシーまたはポリシー グループのしきい値に係数を掛けて、トラフィック量がゾーン トラフィックを表していない場合に、ポリシーまたはポリシー グループのしきい値を増減することができます。Detector モジュールでは、ポリシーのしきい値、プロキシのしきい値、および policy threshold-list コマンドで定義されたしきい値の乗算をイネーブルにできます。
ポリシーのしきい値と係数を乗算するには、ゾーン設定モードで次のコマンドを使用します。
policy policy-path thresh-mult threshold-multiply-factor
表7-11 に、policy thresh-mult コマンドの引数とキーワードを示します。
|
|
---|---|
|
ポリシー テンプレート名。詳細については、 表7-2 を参照してください。 |
|
しきい値に掛ける 正の実数 (小数点以下が 4 桁の浮動小数点型の数字)ポリシーのしきい値を小さくするには、1 より小さい数値を入力します。 |
次の例は、ポリシー テンプレート dns_tcp から作成されたポリシーのしきい値を半減する方法を示しています。
(注) Detector モジュールは、後続のしきい値調整フェーズでしきい値を変更する場合があります。Detector モジュールがしきい値を変更しないようにするには、しきい値を固定値として設定します。「固定値としてのしきい値の設定」を参照してください。
ポリシーのラーニング パラメータを表示するには、ポリシー設定モードで show learning-params コマンドを使用するか、ゾーン設定モードで show policies policy-path learning-params コマンドを使用します。
トラフィックが大量であることが分かっている送信元または宛先 IP アドレスでトラフィックが増加したときに、Detector モジュールが攻撃を誤って検出しないようにするために、その IP アドレスに関連付けられたトラフィック用のしきい値を持つポリシーを設定できます。
次の状況のいずれかが発生した場合は、特定の IP しきい値を設定することを考慮する必要があります。
• ある送信元 IP アドレスから大量のトラフィックがあることが分かっている場合は、特定の送信元 IP アドレスからのトラフィックに適用するしきい値を設定できる。
• 非同種ゾーン(複数の IP アドレスが定義されているゾーン)があり、そのゾーンの一部に大量のトラフィックが流れることが分かっている場合は、そのゾーン内の特定の宛先 IP アドレスに適用するしきい値を設定できる。
宛先 IP(dest_ip)というトラフィック特性を持つポリシーだけに、特定の IP しきい値を設定できます。
特定の IP しきい値を設定するには、次のコマンドのいずれかを使用します。
• policy policy-path threshold-list ip threshold [ip threshold ...](ゾーン設定モードの場合)
• threshold-list ip threshold [ ip threshold ... ]( ポリシー設定モードの場合)
表7-12 に、threshold-list コマンドの引数を示します。
|
|
---|---|
|
ポリシー テンプレート名。詳細については、 表7-2 を参照してください。 |
|
|
|
しきい値トラフィック レート(pps)。ただし、同時接続および SYN 対 FIN の比率を測定するポリシーの場合、しきい値は接続数になります。 |
ポリシーごとに特定の IP しきい値を 10 個まで追加できます。特定の IP しきい値をすべて 1 つのコマンドで入力できます。
Detector モジュールは、しきい値選択方式が new-thresholds に設定されている場合、以後のしきい値調整フェーズでポリシーのしきい値を変更する可能性があります。詳細については、「しきい値選択方式の設定」を参照してください。
次の例は、ポリシー http/80/analysis/syns/src_ip に、IP アドレス 10.10.10.2 および 10.10.15.2 の特定の IP しきい値を設定する方法を示しています。
user@DETECTOR-conf-zone-scannet-policy-/http/80/analysis/syns/src_ip#
threshold-list 10.10.10.2 500 10.10.15.2 500
タイムアウト パラメータは、ポリシーによって作成される動的フィルタがアクションを適用する最小期間を定義します。
ポリシーのタイムアウトを設定するには、ポリシー設定モードで次のコマンドを使用します。
表7-13 に、timeout コマンドの引数とキーワードを示します。
|
|
---|---|
|
|
|
次の例は、ポリシー http/80/analysis/syns/src_ip のタイムアウトを 100 秒に設定する方法を示しています。
user@DETECTOR-conf-zone-scannet-policy-/http/80/analysis/syns/src_ip#
timeout 100
ポリシー グループのタイムアウトを同時に変更するには、ゾーン設定モードで policy set-timeout コマンドを使用します。
次の例は、HTTP ポリシー テンプレートから作成されたすべてのポリシーのタイムアウトを 100 秒に設定し、送信元 IP アドレスを測定する方法を示しています。
user@DETECTOR-conf-zone-scannet#
policy http/*/*/*/src_ip set-timeout 100
アクション パラメータは、しきい値を超過したときにポリシーが実行するアクションのタイプを定義します。
ポリシー アクションを設定するには、ポリシー設定モードで次のコマンドを使用します。
表7-14 に、ポリシー アクションを示します。
|
|
---|---|
しきい値超過が発生すると、リモート Guard をアクティブにします。リモート Guard はリモート Guard リストに定義されています。詳細については、「ゾーンを保護するためのリモート Guard のアクティブ化」を参照してください。 |
次の例は、ポリシー http/80/analysis/syns/src_ip にアクションを設定する方法を示しています。
user@DETECTOR-conf-zone-scannet-policy-/http/80/analysis/syns/src_ip#
action remote-activate
ポリシー グループのアクションを同時に変更するには、ゾーン設定モードで policy set-action コマンドを使用します。
次の例は、すべての dns_tcp ポリシーにアクションを設定する方法を示しています。
インタラクティブ ステータスのパラメータは、ポリシーによって作成される保留動的フィルタのインタラクティブ ステータスを定義します。インタラクティブ ステータスは、ゾーン異常検出がイネーブルになっていて、ゾーンがインタラクティブ検出モードになっている場合にのみ、ゾーンに適用されます。詳細については、「インタラクティブ検出モードの使用方法」 を参照してください。
ポリシーによって作成された保留動的フィルタのステータスを、推奨事項のインタラクティブ ステータスに設定した後で、 always-accept または always-ignore に変更するには、 interactive-status コマンドを使用します。
たとえば、推奨事項のステータスを always-accept に設定すると、推奨事項と推奨事項の保留動的フィルタが表示されなくなります。推奨事項または推奨事項によって生成される保留動的フィルタを無視するには、ポリシーのインタラクティブ ステータスを interactive または always-accept に変更します。
ポリシー インタラクティブ ステータスを設定するには、ポリシー設定モードで次のコマンドを使用します。
interactive-status { always-ignore | always-accept | interactive }
表7-15 に、interactive-status コマンドのキーワードを示します。
|
|
---|---|
ポリシーによって生成される動的フィルタを自動的に受け入れます。このアクションは、ポリシーによって新しい推奨事項が生成されるたびに、自動的に適用されます。 |
|
次の例は、ポリシー dns_tcp/53/analysis/pkts/src_ip のインタラクティブ ステータスを always-accept に設定する方法を示しています。
インターネット ワームは、自動化された、自己伝搬する侵入エージェントであり、自身のコピーを作成して容易に配布します。ワームは、脆弱なホストを攻撃して感染させた後、そのホストを基点として他の脆弱なターゲットを攻撃します。次に、ネットワーク検査形式(一般的にはスキャン)を使用して他のターゲットを探し、次のターゲットに伝搬します。スキャニング ワームは、脆弱なホストを見つけるために、探索するアドレスのリストを生成し、その後ホストにアクセスします。Code Red ワーム、Sasser ワーム、Blaster ワーム、および Slammer ワームはすべて、この方法で蔓延する知名度の高いワームの例です。
Detector モジュールは、ゾーン ネットワークがスキャンされていることを示す、異常なトラフィック パターンを通じてワームを識別することで TCP ワームを検出することができます。Detector モジュールは、TCP ワーム攻撃が進行中でない場合であっても、ネットワークにはスキャナーが存在する場合があると想定しています。このモジュールは、特定のポート上で、多くのゾーン宛先 IP アドレスに対する未確立の接続(SYN/ACK 応答パケットが識別されなかった着信 SYN パケット)の開始側である送信元 IP アドレスを、スキャナーとして識別します。
ゾーン トラフィックを分析するために、Detector モジュールは周波数データが含まれたテーブルを使用します。このテーブルはネットワーク スキャナーのヒストグラムとして知られています。Detector モジュールは、最初に、攻撃が進行中でないときにゾーンのネットワークをラーニングし、次に同時スキャナーのヒストグラムを作成します。ヒストグラムには、特定の数のゾーン宛先 IP アドレスを同時にスキャンするスキャナーの数が記載されます。Detector モジュールは、特定の数より多くのゾーン宛先 IP アドレスにアクセスするスキャナーの数を測定します。
Detector モジュールは、次の 2 つのタイプのしきい値を使用して、ワームのトラフィック特性を分析します。
• スキャニングしきい値:単一の送信元 IP アドレスからスキャンできるゾーン IP アドレスの最大数を定義します。このしきい値は、ポリシーのしきい値によって定義されます。
• ヒストグラムしきい値:指定された数を超えるゾーン IP アドレスをスキャンできる送信元 IP アドレスの最大数を定義します。
Detector モジュールは、攻撃が進行中でないときにラーニングしたヒストグラムとの偏差がある場合にワーム攻撃と判断します(つまり、その場合は、定義された数を超えるゾーン宛先 IP アドレスを同時にスキャンする送信元 IP アドレスの数が超過しています)。詳細については、「ワーム攻撃の識別」を参照してください。
ワーム ポリシーは、次の点で、他のポリシーと異なっています。
• Detector モジュールは、ポリシー構築フェーズ中ではなく、しきい値調整フェーズ中にワーム ポリシーの新しいサービスをラーニングするため、しきい値調整フェーズ中に、ワーム ポリシーに追加された新しいサービス(ポート)が表示される場合があります。
• any サービスは、Detector モジュールに特定のポリシーが存在しないポートに関連付けられます。たとえば、Detector モジュールに、worm_tcp/80 と worm_tcp/50 のポリシーが存在する場合、worm_tcp/any ポリシーは、ポート 50 または 80 を宛先とするトラフィックをすべて監視します。他のポリシーとは異なり、any サービスは、指定されていないポートすべてに対するトラフィックを集約しません。Detector モジュールは、ゾーン トラフィックを監視するとき、スキャンされるポートごとに別個の内部ヒストグラムを保持しています。次に、このヒストグラムを any サービスのヒストグラムと比較します。
• ワーム攻撃の識別
worm_tcp ポリシー テンプレートは、DETECTOR_WORM ゾーン テンプレートだけで使用できます。
TCP ワームを管理するポリシーは、worm_tcp ポリシー テンプレート、non_estb_conns パケット タイプ、および scanners トラフィック特性から構築されます。
ポリシー設定モードで次のコマンドを入力すると、ヒストグラムを設定し、スキャニングしきい値を変更することができます。
histogram num-dst-ips num-src-ips [ num-dst-ips num-src-ips ...]
表7-16 に、histogram コマンドの引数を示します。
ヒストグラムしきい値をすべて 1 つのコマンドで入力できます。
次の例は、すべての頻度についてヒストグラムしきい値を設定する方法を示しています。
user@DETECTOR-conf-zone-scannet- worm_tcp/445/analysis/non_estb_conns/scanners#
histogram 5 99 20 80 50 8 100 1
現在のヒストグラム設定を表示するには、 show policies コマンドを使用します。
単一の送信元 IP アドレスからスキャンできるゾーン IP アドレスの最大数を設定できます(スキャニングしきい値)。この数を設定するには、 threshold コマンドを使用します。詳細については、「ポリシーのしきい値の設定」を参照してください。
特定のポートのヒストグラムしきい値を指定するには、 add-service コマンドを使用して、特定のポート番号のサービスを、 worm_tcp ポリシー テンプレートから作成されたポリシーすべてに追加します。「サービスの追加」を参照してください。
Detector モジュールは、スキャニングしきい値とヒストグラムしきい値の 2 つのタイプのしきい値を使用して、ワームのトラフィック特性を分析します。詳細については、「ワーム ポリシーについて」を参照してください。
ヒストグラムしきい値を超えると、Detector モジュールは、指定されていない送信元 IP アドレス(*)を持つ動的フィルタを作成します。この動的フィルタは、ワーム攻撃が進行中であることを示します。動的フィルタのポリシーのしきい値は、超過したヒストグラムしきい値を指定します。Detector モジュールは、動的フィルタのポリシーしきい値と等しいスキャニングしきい値を新しく内部に定義します。
ゾーン宛先 IP アドレスをスキャンする送信元 IP アドレスは、ワームに感染したホストの IP アドレスです。ゾーンが攻撃中の場合、ワームに感染した各ホストがスキャンするゾーン宛先 IP アドレスの数が、新しい内部のスキャニングしきい値によって定義された最大数を超えると、動的フィルタが作成されます。Detector モジュールは、動的フィルタのアクションによって定義されたこれらの攻撃フローに対して作用します。
たとえば、ポリシーのしきい値(スキャニングしきい値)が 300 の場合、ポート 445 に関するポリシー スキャナーのヒストグラムは 表7-17 のようになり、Detector モジュールは、350 個のゾーン宛先 IP アドレスをスキャンするスキャナーを識別した場合、マス スキャナーが検出されたことを示す動的フィルタを作成します。ただし、このスキャナーからは、ワーム攻撃が進行中かどうかはまだわかりません。
|
|
|
|
|
|
|
|
Detector モジュールが、ポート 445 で 50 個より多くのゾーン宛先 IP アドレスを同時にスキャンする 6 個の送信元 IP アドレスを識別すると、指定されていない送信元 IP アドレス(*)を持つ動的フィルタを worm_tcp ポリシーから作成します。この動的フィルタは Detector モジュールがポート 445 に対するワーム攻撃を識別したことを示します。動的フィルタのポリシーしきい値である 50 が、新しい内部のスキャニングしきい値に指定されるため、Detector モジュールはスキャナーのしきい値定義を小さくします。この結果、Detector モジュールは新しいスキャニングしきい値(50)を超過してスキャンする送信元 IP アドレスごとに追加の動的フィルタを作成します。
ポリシーを監視して、ポリシーがゾーンのトラフィック量やサービスにどの程度適しているかを確認できます。
• ポリシーの表示
ゾーンのポリシーを表示して、ポリシーがゾーンのトラフィック特性に適しているかどうかを確認できます。ゾーンに構築されたポリシーを表示して、これらのポリシーがゾーンのトラフィックの特性に合せてカスタマイズされていることを確認できます。このリストに表示されるポリシーだけを設定できます。
Detector モジュールは、現在のゾーン ポリシーだけを表示します。ポリシー構築フェーズ中にポリシー テンプレートがディセーブルになっていた場合、Detector モジュールはそのポリシー テンプレートからポリシーを作成しないため、 show policies コマンドを入力してもポリシーは表示されません。
ゾーン ポリシーを表示するには、ゾーン設定モードで次のコマンドを使用します。
policy-path 引数には、ポリシー グループを指定します。各ポリシー パス セクションでは、ワイルドカードとしてアスタリスク(*)を使用できます。ポリシー パス セクションを指定しなかった場合、指定していないセクションは Detector モジュールによってワイルドカード(*)とみなされます。たとえば、tcp_services//analysis//global ポリシーでは、サービスとパケット タイプのセクションにワイルドカードが使用されています。
すべてのポリシーの統計情報を表示するには、ポリシー パスにアスタリスク(*)を入力します。
ポリシー パス セクションの詳細については、「ポリシー パスの使用」を参照してください。
次の例は、すべてのゾーン ポリシーを表示する方法を示しています。
user@DETECTOR-conf-zone-scannet#
show policies *
次の例は、ポート 53 で DNS-over-TCP 同期パケットを監視するすべてのポリシーを表示する方法を示しています。
user@DETECTOR-conf-zone-scannet#
show policies dns_tcp/53/*/syns/*
表7-18 に、 show policies コマンド出力のフィールドを示します。
|
|
---|---|
ポリシー パス セクションの詳細については、「ポリシー パスの使用」を参照してください。 |
|
ポリシーの状態を示します。詳細については、「ポリシーの状態の変更」を参照してください。 |
|
ポリシーのインタラクティブ ステータスを示します。詳細については、「ポリシーのインタラクティブ ステータスの設定」を参照してください。 a-accept は always-accept、a-ignor は always-ignore、interac は interactive を指します。 |
|
ポリシーのしきい値を示します。このしきい値を超過すると、Detector モジュールはアクションを実行します。詳細については、「ポリシーのしきい値の設定」を参照してください。 |
|
ポリシーに定義されている特定の IP しきい値の数を示します。詳細については、「特定の IP しきい値の設定」を参照してください。ワームに関連するポリシーの場合は、ヒストグラムを表す H が表示されます。詳細については、「ワーム ポリシーについて」を参照してください。 |
|
しきい値が超過した場合にポリシーが実行するアクションを示します。詳細については、「ポリシーのアクションの設定」を参照してください。 |
|
ポリシーのアクションが有効な最小期間を示します。Detector モジュールは、ポリシーによって作成された動的フィルタを非アクティブにするかどうかを、filter-termination しきい値に従って決定します。詳細については、「ポリシーのタイムアウトの設定」を参照してください。 |
1 つのゾーン ポリシーまたはゾーン ポリシーのグループを通過するトラフィックのレートを表示できます。サービス タイプおよびトラフィック量がゾーンのトラフィックを表すかどうかを判断できます。Detector モジュールは、ゾーンに転送されたトラフィック フローの中で、ポリシーによって測定された最も高いレートを持ついくつかのトラフィック フローを表示します。レートは、トラフィックのサンプルに基づいて計算されます。
ポリシーの統計情報を表示するには、ゾーン設定モードで次のコマンドを使用します。
show policies policy-path statistics [num-entries]
表7-19 に、show policies statistics コマンド出力の引数を示します。
|
|
---|---|
|
各ポリシー パス セクションでは、ワイルドカードとしてアスタリスク(*)を使用できます。ポリシー パス セクションを指定しないと、指定していないセクションが Detector モジュールによってワイルドカード(*)とみなされます。たとえば、tcp_services//analysis//global ポリシーでは、サービスとパケット タイプのセクションにワイルドカードが使用されています。 すべてのポリシーの統計情報を表示するには、ポリシー パスにアスタリスク(*)を入力します。 ポリシー パス セクションの詳細については、「ポリシー パスの使用」を参照してください。 |
|
表示するエントリの数を指定します。1 ~ 100 の数字を入力します。Detector モジュールは、最大の値を持つポリシーを表示します。 |
次の例は、すべてのゾーン ポリシーの統計情報を表示する方法を示しています。
user@DETECTOR-conf-zone-scannet#
show policies * statistics
次の例は、ポート 53 で DNS-over-TCP 同期パケットを監視するすべてのポリシーの統計情報を表示する方法を示しています。
user@DETECTOR-conf-zone-scannet#
show policies dns_tcp/53/*/syns/*
次の例は、ゾーンのグローバル トラフィックの統計情報を表示する方法を示しています。
user@DETECTOR-conf-zone-scannet#
show policies */*/*/*/global statistics
Detector モジュールは、4 つのテーブルに情報を表示します。各テーブルの情報は値によってソートされ、テーブルの一番上に最大値が表示されます。
表7-20 に、show policies statistics コマンド出力テーブルのフィールドを示します。
|
|
---|---|
|
|
キー(ポリシーの集約に使用されたトラフィック特性)を示します。 たとえば、tcp_services/any/analysis/syns/dst_ip ポリシーの場合、キーは宛先 IP アドレス(dst_ip)です。ポリシーの集約に使用されたトラフィック特性が global である場合、キーには N/A と表示されます。 ワームに関連するポリシー 詳細については、 表7-8 を参照してください。 |
|
詳細については、「ポリシー パスの使用」を参照してください。 |
|
|
|
ポリシーを通過し pps 単位で計測されるトラフィックのレートを示します。レートは、トラフィックのサンプルに基づいて計算されます。 |
|
この情報は、パケット タイプが in_nodata_conns の tcp_connections ポリシーについてのみ表示されます。 |
|
SYN フラグの付いたパケット数と FIN/RST フラグの付いたパケット数の比率を示します。この情報は、syn_by_fin ポリシーでのみ使用できます。 |
|
(注) Detector モジュールは、データを含まないテーブルを表示しません。
現在のゾーン ポリシーは、 snapshot threshold-selection cur-thresholds コマンドを使用していつでもバックアップできます。
次の例は、現在のポリシー設定をバックアップするために、スナップショットを作成する方法を示しています。
user@DETECTOR-conf-zone-scannet#
snapshot threshold-selection cur-thresholds