Cisco Traffic Anomaly Detector コンフィギュレーション ガイド Software Release 6.1
ゾーンのフィルタの設定
ゾーンのフィルタの設定
発行日;2012/02/04 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 3MB) | フィードバック

目次

ゾーンのフィルタの設定

ゾーン フィルタについて

フレックスコンテンツ フィルタの設定

フレックスコンテンツ フィルタの追加

tcpdump 式の構文の設定

パターン式構文の設定

フレックスコンテンツ フィルタの表示

フレックスコンテンツ フィルタの削除

フレックスコンテンツ フィルタの状態の変更

バイパス フィルタの設定

バイパス フィルタの追加

バイパス フィルタの表示

バイパス フィルタの削除

動的フィルタの設定

動的フィルタの表示

動的フィルタの追加

動的フィルタの削除

動的フィルタの作成防止

ゾーンのフィルタの設定

この章では、Cisco Traffic Anomaly Detector(Detector)のネットワーク トラフィック フィルタの設定方法について説明します。

この章では、Detector の関連製品である Cisco Guard(Guard)についても言及します。Guard は、Distributed Denial of Service(DDoS; 分散型サービス拒絶)攻撃検出および軽減デバイスです。トラフィックが通過するときにゾーン トラフィックをクリーンにして、攻撃トラフィックをドロップし、正当なトラフィックをネットワークに注入します。Detector は、ゾーンが攻撃を受けていると判断した時点で、Guard の攻撃軽減サービスをアクティブにできます。また、Detector は Guard とゾーン設定を同期させることができます。Guard の詳細については、『 Cisco Anomaly Guard Module Configuration Guide 』または『 Cisco Guard Configuration Guide 』を参照してください。

この章は、次の項で構成されています。

ゾーン フィルタについて

フレックスコンテンツ フィルタの設定

バイパス フィルタの設定

動的フィルタの設定

ゾーン フィルタについて

ゾーン フィルタは、Detector が特定のトラフィック フローを処理する方法を定義します。フィルタを設定することにより、Detector がトラフィック異常の検出に使用する方式をカスタマイズすることができます。

ゾーン フィルタを使用すると、Detector は次の機能を実行できます。

異常がないかゾーン トラフィックを分析する。

Detector の異常検出機能をバイパスする。

Detector には、次のタイプのフィルタがあります。

バイパス フィルタ:Detector が特定のトラフィック フローを分析しないようにします。信頼されたトラフィックが Detector の異常検出機能を通らないように誘導できます。詳細については、「バイパス フィルタの設定」を参照してください。

フレックスコンテンツ フィルタ:特定のトラフィック フローをカウントします。フレックスコンテンツ フィルタには、IP ヘッダーや TCP ヘッダー内のフィールドに基づいたフィルタリング、ペイロード コンテンツに基づいたフィルタリング、複雑なブール式に基づいたフィルタリングなどの非常に柔軟なフィルタリング機能があります。詳細については、「フレックスコンテンツ フィルタの設定」を参照してください。

動的フィルタ:必要な保護レベルを指定されたトラフィック フローに適用します。Detector は、トラフィック フロー分析に基づいて動的フィルタを作成し、ゾーン トラフィックや DDoS 攻撃のタイプに合せて常に動的フィルタ セットを修正しています。動的フィルタは有効期間が限定されており、攻撃が終了すると Detector によって削除されます。詳細については、「動的フィルタの設定」を参照してください。

図5-1 に、Detector のフィルタ システムを示します。

図5-1 Detector のフィルタ システム

Detector は、ゾーン トラフィック フローのコピーに分析検出レベルを適用して、トラフィックを分析します。

トラフィック フローの統計分析を行うために、Detector はゾーン ポリシーを使用します。ゾーン ポリシーはすべて、特定のタイプのトラフィックを処理するように設定されます。ゾーン ポリシーは、常にトラフィック フローを測定し、特定のトラフィック フローが悪意のあるものまたは異常である(トラフィック フローがポリシーのしきい値を超えた)と判断すると、そのフローに対してアクションを実行します。Detector は、ゾーン トラフィックに異常を発見すると、Guard をアクティブにしてゾーンを保護できる新しいフィルタ(動的フィルタ)を作成するか、イベントを syslog に記録します。

フレックスコンテンツ フィルタの設定

フレックスコンテンツ フィルタは、パケット ヘッダー内のフィールドまたはパケット ペイロードのパターンに基づいて、ゾーン トラフィックをフィルタリングします。トラフィックに現れているパターンに基づいて攻撃を識別できます。これらのパターンでは、既知のワームまたは一定のパターンを持つフラッド攻撃が識別可能です。

フレックスコンテンツ フィルタは、目的のパケット フローをカウントし、トラフィックの特定の悪意ある送信元を明らかにするために使用します。

フレックスコンテンツ フィルタは、次の順序でフィルタリング基準を適用します。

1. プロトコルとポートのパラメータ値に基づいてパケットをフィルタリングする。

2. tcpdump 式の値に基づいてパケットをフィルタリングする。

3. 残りのパケットに対して pattern-expression の値を使用してパターン マッチングを実行する。


) フレックスコンテンツ フィルタは大量の CPU リソースを消費します。フレックスコンテンツ フィルタは Detector のパフォーマンスに影響を及ぼす可能性があるため、使用を制限することをお勧めします。動的フィルタによっても識別できる特定の攻撃(指定のポートに送信される TCP トラフィックなど)を検出するのにフレックスコンテンツ フィルタを使用している場合は、動的フィルタを使用してトラフィックをフィルタリングすることをお勧めします。


この項では、次のトピックについて取り上げます。

フレックスコンテンツ フィルタの追加

フレックスコンテンツ フィルタの表示

フレックスコンテンツ フィルタの削除

フレックスコンテンツ フィルタの状態の変更

フレックスコンテンツ フィルタの追加

Detector は、作成済みフレックスコンテンツ フィルタのリストを作成し、それらのフィルタを昇順でアクティブにします。新しいフレックスコンテンツ フィルタを追加する場合は、フィルタ リストの適切な位置に配置してください。

フレックスコンテンツ フィルタを設定するには、次の手順を実行します。


ステップ 1 フレックスコンテンツ フィルタのリストを表示して、リスト内で新しいフィルタを追加する位置を確認します(「フレックスコンテンツ フィルタの表示」を参照)。

ステップ 2 現在の行番号が連番の場合は、新しいフレックスコンテンツ フィルタを挿入するのに十分な間隔となるよう増分を指定して、フレックスコンテンツ フィルタの番号を振りなおします。ゾーン設定モードで次のコマンドを入力します。

flex-content-filter renumber [start [step]]
 

表5-1 に、 flex-content-filter renumber コマンドの引数を示します。

 

表5-1 flex-content-filter renumber コマンドの引数

パラメータ
説明

start

(オプション)フレックスコンテンツ フィルタ リストの新しい開始番号を示す 1 ~ 9,999 の整数。デフォルトは 10 です。

step

(オプション)フレックスコンテンツ フィルタの各行番号の増分を指定する 1 ~ 999 の整数。デフォルトは 10 です。

ステップ 3 (オプション)進行中の攻撃や以前に記録した攻撃のパターン式をフィルタリングします。Detector をアクティブにし、 show packet-dump signatures コマンドを使用して、攻撃のシグニチャを生成します。詳細については、「パケットダンプ キャプチャ ファイルからの攻撃シグニチャの生成」を参照してください。

ステップ 4 次のコマンドを入力して、新しいフレックスコンテンツ フィルタを追加します。

flex-content-filter row-num {disabled | enabled} {drop | count} protocol port [start start-offset [end end-offset]] [ignore-case] expression tcpdump-expression pattern pattern-expression
 

表5-2 に、 flex-content-filter コマンドの引数とキーワードを示します。

 

表5-2 flex-content-filter コマンドの引数とキーワード

パラメータ
説明

row-num

1 ~ 9,999 の固有な番号。行番号はフィルタの ID で、これによって複数のフレックスコンテンツ フィルタの優先順位が定まります。Detector は、行番号の昇順でフィルタを操作します。

disabled

フィルタの状態をディセーブルに設定します。フィルタはトラフィックを監視しません。

enabled

フィルタの状態をイネーブルに設定します。Detector はトラフィックを監視し、フィルタに一致するフロー上でアクション(ドロップまたはカウント)を実行します。

これがデフォルトの状態です。

drop

フィルタに一致するフローをドロップします。Guard ゾーン テンプレートからゾーンを作成した場合は、Guard 設定モードでドロップ アクションを設定できます。ドロップ アクションは、Guard にのみ適用できます。

count

フィルタに一致するフローをカウントします。

protocol

特定のプロトコルからのトラフィック。すべてのプロトコルを示すには、アスタリスク( * )を使用します。0 ~ 255 の整数を入力します。

指定可能なプロトコル番号については、次に示す Internet Assigned Numbers Authority(IANA; インターネット割り当て番号局)の Web サイトを参照してください。

http://www.iana.org/assignments/protocol-numbers

port

特定の宛先ポート宛のトラフィック。0 ~ 65535 の整数を入力します。特定のポート番号を定義するには、特定のプロトコル番号を定義する必要があります。

すべての宛先ポートを示すには、アスタリスク( * )を使用します。プロトコル番号を 6(TCP)または 17(UDP)に設定する場合に、アスタリスクを使用できます。

指定可能なポート番号については、次に示す IANA の Web サイトを参照してください。

http://www.iana.org/assignments/port-numbers

start-offset

パケット ペイロードの先頭から、 pattern-expression 引数のパターン マッチングを開始する位置までのオフセット(バイト単位)。デフォルトは 0(ペイロードの先頭)です。0 ~ 1800 の整数を入力します。

show packet-dump signatures コマンド出力からパターンをコピーする場合は、コマンド出力の Start Offset フィールドからこの引数をコピーします。

end-offset

パケット ペイロードの先頭から、 pattern-expression 引数のパターン マッチングを終了する位置までのオフセット(バイト単位)。デフォルトは、パケット長(ペイロードの末尾)です。0 ~ 1800 の整数を入力します。

show packet-dump signatures コマンド出力からパターンをコピーする場合は、コマンド出力の End Offset フィールドからこの引数をコピーします。

ignore-case

pattern-expression 引数で大文字と小文字が区別されないようにします。

デフォルトでは、 pattern-expression 引数では大文字と小文字が区別されます。

expression tcpdump-
expression

パケットと照合する式を指定します。式はバークリー パケット フィルタの形式です。詳細および設定例については、「tcpdump 式の構文の設定」を参照してください。

式にスペースを使用する場合は、式を引用符(" ")で囲みます。

空の式を入力するには、二重引用符(“ ”)を使用します。

式で引用符を使用するには、引用符の前にバックスラッシュ(\)をエスケープ文字として使用します(\”)。


) tcpdump 式の構文については、ヘルプを使用できません。


pattern pattern-
expression

パケット ペイロードと照合する正規表現のデータ パターンを指定します。詳細については、「パターン式構文の設定」を参照してください。

Detector をアクティブにし、 show packet-dump signatures コマンドを使用してシグニチャを生成できます。「パケットダンプ キャプチャ ファイルからの攻撃シグニチャの生成」を参照してください。

式にスペースを使用する場合は、式を引用符(" ")で囲みます。

空の式を入力するには、二重引用符(“ ”)を使用します。

式で引用符を使用するには、引用符(\”)の前にバックスラッシュ(\)をエスケープ文字として使用します。


) パターン式の構文については、ヘルプを使用できません。


フィルタの状態は、いつでもイネーブルまたはディセーブルにできます(「フレックスコンテンツ フィルタの状態の変更」を参照)。


 

次の例は、フレックスコンテンツ フィルタを設定する方法を示しています。

user@DETECTOR-conf-zone-scannet# flex-content-filter enabled count * * expression “ip[6:2] & 0x1fff=0” pattern
“/ HTTP/1\.1\ x0D\0AAccept: .*/.*\x0D\x0AAccept-Language: en*\x0D\x0AAccept-Encoding: gzip, deflate\x0D\x0AUser-Agent: Mozilla/4\.0”
 

この項では、次のトピックについて取り上げます。

tcpdump 式の構文の設定

パターン式構文の設定

tcpdump 式の構文の設定

tcpdump 式には、パケットと照合する式をバークリー パケット フィルタ形式で指定します。


) tcpdump 式を使用して宛先ポートとプロトコルに基づいてトラフィックをフィルタリングできますが、Detector のパフォーマンスに影響する可能性があります。これらの基準でトラフィックをフィルタリングする場合は、フレックスコンテンツ フィルタで protocol 引数と port 引数を使用することをお勧めします。


式には 1 つ以上の要素が含まれます。通常、要素は ID と ID の前に付く 1 つ以上の修飾子からなります。

修飾子には次の 3 つがあります。

タイプ修飾子:ID(名前または番号)を定義します。指定可能なタイプは、 host net 、および port です。 host タイプ修飾子がデフォルトです。

方向修飾子:転送の方向を定義します。指定可能な方向は、 src dst src or dst 、および src and dst です。方向修飾子は src or dst がデフォルトです。

プロトコル修飾子:特定のプロトコルへの照合を制限します。指定可能なプロトコルは ether ip arp rarp tcp 、および udp です。プロトコル修飾子を指定しない場合、該当するタイプに適用されるすべてのプロトコルが照合されます。たとえば、ポート 53 とは、TCP または UDP のポート 53 を意味します。

表5-3 に、tcpdump 式の要素を示します。

 

表5-3 tcpdump 式の要素

要素
説明

dst host host_ip_address

宛先ホスト IP アドレスへのトラフィックを指定します。

src host host_ip_address

送信元ホスト IP アドレスからのトラフィックを指定します。

host host_ip_ address

送信元および宛先の両方のホスト IP アドレス間のトラフィックを指定します。

net net mask mask

特定のネットワークへのトラフィックを指定します。

net net/len

特定のサブネットへのトラフィックを指定します。

dst port destination_port_number

宛先ポート番号への TCP または UDP トラフィックを指定します。

src port source_port_number

送信元ポート番号からの TCP または UDP トラフィックを指定します。

port port_number

送信元および宛先の両方のポート番号間の TCP または UDP トラフィックを指定します。

less packet_length

特定のバイト長以下の長さを持つパケットを指定します。

greater packet_length

特定のバイト長以上の長さを持つパケットを指定します。

ip proto protocol

ICMP、UDP、または TCP のプロトコル番号を持つパケットを指定します。

ip broadcast

ブロードキャスト IP パケットを指定します。

ip multicast

マルチキャスト パケットを指定します。

ether proto protocol

IP、ARP、または RARP などの特定のプロトコル番号またはプロトコル名を持つイーサネット プロトコル パケットを指定します。プロトコル名もキーワードです。プロトコル名を入力する場合は、プロトコル名の前にバックスラッシュ(\)をエスケープ文字として使用する必要があります。

expr relop expr

特定の式に適合するトラフィック。 表5-4 に、tcpdump 式の規則を示します。

表5-4 に、tcpdump 式の規則を示します。

 

表5-4 フレックスコンテンツ フィルタの式の規則

式の規則
説明

relop

>, <, >=, <=, =, !=

expr

整数の定数(標準の C 構文で表現されたもの)、通常のバイナリ演算子(+、-、*、/、&、|)、長さ演算子、および特殊なパケット データ アクセスで構成される算術式。パケット内のデータにアクセスするには、次の構文を使用します。

proto [ expr : size ]

proto

インデックス操作用のプロトコル層。指定可能な値は ether、ip、tcp、udp、または icmp です。指定されたプロトコル層までの相対的なバイト オフセットは、expr 値で指定します。

パケット内のデータにアクセスするには、次の構文を使用します。

proto [ expr : size ]

size 引数はオプションで、フィールドのバイト数を指定します。この引数に可能な値は 1、2 または 4 です。デフォルトは 1 です。

次の方法により、式の要素を組み合せることができます。

要素と演算子の集まりを丸カッコで囲む:演算子は、通常のバイナリ演算子(+、-、*、/、&、|)と長さ演算子です。


) 式でカッコを使用するには、カッコの前にバックスラッシュをエスケープ文字として使用します(\()。


否定: ! または not を使用します。

連結: && または and を使用します。

代替: || または or を使用します。

否定は、最も高い優先度を持ちます。代替と連結の優先順位は同じで、左から右に関連付けられます。連結には、並置ではなく、明示的な and トークンが必要です。キーワードなしで識別子を指定した場合は、最後に指定されたキーワードが使用されます。

バークリー パケット フィルタの設定オプションの詳細については、次のサイトにアクセスしてください。

http://www.freesoft.org/CIE/Topics/56.htm

次の例は、断片化されていないデータグラムと断片化されたデータグラムのフラグメント 0 のみをカウントする方法を示しています。このフィルタは、TCP と UDP のインデックス操作に暗黙的に適用されます。たとえば、tcp[0] は常に TCP ヘッダーの最初のバイトを意味し、中間のフラグメントの最初のバイトを意味することはありません。

user@DETECTOR-conf-zone-scannet# flex-content-filter enabled count * * expression ip[6:2]&0x1fff=0 pattern ““
 

次の例は、すべての TCP RST パケットをカウントする方法を示しています。

user@DETECTOR-conf-zone-scannet# user@DETECTOR-conf-zone-scannet# flex-content-filter enabled count * * expression tcp[13]&4!=0 pattern ““
 

次の例は、エコー要求およびエコー応答(ping)ではないすべての ICMP パケットをカウントする方法を示しています。

user@DETECTOR-conf-zone-scannet# flex-content-filter enabled count * * expression “icmp [0]!=8 and icmp[0] != 0” pattern ““
 

次の例は、ポート 80 を宛先とし、ポート 1000 を送信元としないすべての TCP パケットをカウントする方法を示しています。

user@DETECTOR-conf-zone-scannet# flex-content-filter enabled count * * expression “tcp and dst port 80 and not src port 1000” pattern ““

パターン式構文の設定

パターン式構文とは、一連の文字を含んだ文字列を記述した正規表現です。パターン式は、一連の文字列をその要素を実際にリストせずに表現します。パターン式は、一般文字と特殊文字で構成されます。一般文字には、特殊文字とはみなされない印刷可能な ASCII 文字がすべて含まれます。特殊文字は特殊な意味を持ち、Detector がパターン式に対して実行するマッチングのタイプを指定します。フレックスコンテンツ フィルタは、パターン式とパケットの内容(パケット ペイロード)を照合します。たとえば、version 3.1、version 4.0、および version 5.2 という 3 つの文字列は、version .*\..* というパターンで表現できます。

表5-5 に、使用可能な特殊文字を示します。

 

表5-5 パターン式で使用する特殊文字

特殊文字
説明
.*

0 個またはそれ以上の文字を含んでいる文字列と照合します。たとえば、goo.*s は、goos、goods、good for ddos などと照合します。

\

特殊文字から特別な意味を取り除きます。特殊文字を文字列の中で 1 つの文字パターンとして使用するには、各文字の先頭にバックスラッシュ(\)を入力して特殊な意味を取り除きます。たとえば、2 つのバックスラッシュ(\\)は 1 つのバックスラッシュ(\)と照合し、1 つのバックスラッシュとピリオド(\.)は 1 つのピリオドと照合します。

文字として使用するアスタリスク(*)の前にもバックスラッシュを配置する必要があります。

\xHH

16 進値と照合します。H は 16 進数の数字で、大文字と小文字は区別されません。16 進数の値は 2 桁である必要があります。たとえば、\x41 は 16 進数の値 A と照合します。

デフォルトでは、パターン式では大文字と小文字が区別されます。パターン式で大文字と小文字を区別しないようにするには、 flex-content-filter コマンドに ignore-case キーワードを指定します。詳細については、「フレックスコンテンツ フィルタの追加」を参照してください。

次の例は、パケット ペイロードに特殊なパターンを持つパケットをドロップする方法を示しています。この例のパターンは、Slammer ワームから抽出されました。 protocol port 、および
tcpdump-expression
パラメータは特定のものでなくてもかまいません。

user@DETECTOR-conf-zone-scannet# flex-content-filter enabled drop * * expression “ “ pattern \x89\xE5Qh\.dllhel32hkernQhounthickChGetTf\xB9ll
Qh32\.dhws2_f\xB9etQhsockf\xB9toQhsend\xBE\x18\x10\xAEB

フレックスコンテンツ フィルタの表示

フレックスコンテンツ フィルタを表示するには、ゾーン設定モードで次のコマンドを入力します。

show flex-content-filters

表5-6 に、 show flex-content-filters コマンド出力のフィールドを示します。

 

表5-6 show flex-content-filters コマンド出力のフィールドの説明

フィールド
説明

Row

フレックスコンテンツ フィルタの優先順位。

State

フィルタの状態(イネーブルまたはディセーブル)。

Action

特定のトラフィック タイプに対してフィルタが実行するアクションを指定します。

Protocol

フィルタが処理するトラフィックのプロトコル番号。

Port

フィルタが処理するトラフィックの宛先ポート。

Start

パケット ペイロードの先頭から、パターン マッチングを開始する位置までのオフセット(バイト単位)。このオフセットは、 pattern フィールドに適用されます。

End

パケット ペイロードの先頭から、パターン マッチングを終了する位置までのオフセット(バイト単位)。このオフセットは、 pattern フィールドに適用されます。

Match-case

フィルタと一致するパターン式で、大文字と小文字が区別されるのか、またはされないのか。

yes の場合は大文字と小文字が区別され、no の場合は区別されません。

TCPDump-expression

バークリー パケット フィルタ形式でパケットと照合する tcpdump 式。tcpdump 式の構文については、「tcpdump 式の構文の設定」を参照してください。

Pattern-filter

パケット ペイロードと照合する正規表現のデータ パターン。パターン式の構文については、「パターン式構文の設定」を参照してください。

RxRate (pps)

このフィルタが測定する現在のトラフィック レート(パケット/秒)。

フレックスコンテンツ フィルタの削除

フレックスコンテンツ フィルタでフィルタ式に基づくパケットのフィルタリングを実行する必要がなくなった場合は、フレックスコンテンツ フィルタを削除できます。


) 後日フレックスコンテンツ フィルタが必要になる可能性がある場合は、フレックスコンテンツ フィルタを削除しないでください。フレックスコンテンツ フィルタをディセーブルにすると、後で必要になったときにイネーブルにできます(「フレックスコンテンツ フィルタの状態の変更」を参照)。


フレックスコンテンツ フィルタを削除するには、ゾーン設定モードで次のコマンドを入力します。

no flex-content-filter row-num

row-num 引数には、削除するフレックスコンテンツ フィルタの行番号を指定します。フレックスコンテンツ フィルタのリストを表示し、削除するフレックスコンテンツ フィルタの行番号を確認するには、show flex-content-filters コマンドを使用します(「フレックスコンテンツ フィルタの表示」を参照)。すべてのフレックスコンテンツ フィルタを削除するには、行番号としてアスタリスク( * )を入力します。

次の例は、フレックスコンテンツ フィルタを削除する方法を示しています。

user@DETECTOR-conf-zone-scannet# no flex-content-filters 5

フレックスコンテンツ フィルタの状態の変更

フレックスコンテンツ フィルタをディセーブルにすると、Detector はフィルタ式に基づくパケットのフィルタリングと、特定の種類のトラフィックのフィルタリングを実行しなくなりますフレックスコンテンツ フィルタをディセーブルにしても、そのフィルタはフレックスコンテンツ フィルタ リストに残ります。したがって、必要に応じてフィルタを再度イネーブルにできます。

フレックスコンテンツ フィルタを再度使用しない場合は、そのフィルタを削除できます(「フレックスコンテンツ フィルタの削除」を参照)。

フレックスコンテンツ フィルタの状態を変更するには、ゾーン設定モードで次のコマンドを入力します。

f lex-content-filter row-num {disabled | enabled}

表5-7 に、flex-content-filter コマンドの引数とキーワードを示します。

 

表5-7 flex-content-filter コマンドの引数とキーワード

パラメータ
説明

row-num

フレックスコンテンツ フィルタの行番号を指定します。

disabled

指定したフレックスコンテンツ フィルタをディセーブルにします。

enabled

指定したフレックスコンテンツ フィルタをイネーブルにします。

フレックスコンテンツ フィルタのリストを表示し、イネーブルまたはディセーブルにするフレックスコンテンツ フィルタの行番号を確認するには、show flex-content-filters コマンドを入力します(「フレックスコンテンツ フィルタの表示」を参照)。

次の例は、フレックスコンテンツ フィルタをディセーブルにする方法を示しています。

user@DETECTOR-conf-zone-scannet# flex-content-filters 5 disabled

バイパス フィルタの設定

バイパス フィルタは、信頼されたトラフィックを Detector の異常検出機能の対象外にして、特定のトラフィック フローが Detector によって分析されないようにします。

この項では、次のトピックについて取り上げます。

バイパス フィルタの追加

バイパス フィルタの表示

バイパス フィルタの削除

バイパス フィルタの追加

バイパス フィルタを追加するには、ゾーン設定モードで次のコマンドを入力します。

bypass-filter row-num src-ip [ ip-mask ] protocol dest-port [ fragments-type ]

表5-8 に、 bypass-filter コマンドの引数を示します。

 

表5-8 bypass-filter コマンドの引数

パラメータ
説明

row-num

1 ~ 9,999 の固有な番号を割り当てます。行番号はフィルタの ID で、これによって複数のバイパス フィルタの優先順位が定義されます。Detector は、行番号の昇順でフィルタを操作します。

src-ip

特定の IP アドレスからのトラフィックが処理されます。すべての IP アドレスを示すには、アスタリスク( * )を使用します。

ip-mask

(オプション)特定のサブネットからのフローが処理されます。サブネット マスクには、クラス C の値のみを指定できます。デフォルトのサブネットは、255.255.255.255 です。

protocol

特定のプロトコルからのトラフィックが処理されます。すべてのプロトコルを示すには、アスタリスク( * )を使用します。

指定可能なプロトコル番号については、次に示す Internet Assigned Numbers Authority(IANA; インターネット割り当て番号局)の Web サイトを参照してください。

http://www.iana.org/assignments/protocol-numbers

dest-port

特定の宛先ポートへのトラフィックが処理されます。すべての宛先ポートを示すには、アスタリスク( * )を使用します。

指定可能なポート番号については、次に示す IANA の Web サイトを参照してください。

http://www.iana.org/assignments/port-numbers

fragments-type

(オプション)断片化されたトラフィックをフィルタが処理するかどうか。断片化には、次の 3 つのタイプがあります。

no-fragments :断片化されていないトラフィック

fragments :断片化されたトラフィック

any-fragments :断片化されたトラフィックと断片化されていないトラフィック

デフォルトは、 no-fragments です。


) fragments-type と dest-port を両方指定することはできません。fragments-type を設定するには、dest-port にアスタリスク(*)を入力してください。


バイパス フィルタの表示

バイパス フィルタのリストを表示するには、ゾーン設定モードで次のコマンドを入力します。

show bypass-filters

表5-9 に、 show bypass-filters コマンド出力のフィールドを示します。

 

表5-9 show bypass-filters コマンド出力のフィールドの説明

フィールド
説明
Row

バイパス フィルタの優先順位。

Source IP

フィルタが処理するトラフィックの送信元 IP アドレス。

Source Mask

フィルタが処理するトラフィックの送信元アドレスのサブネット マスク。

Proto

フィルタが処理するトラフィックのプロトコル番号。

DPort

フィルタが処理するトラフィックの宛先ポート。

Frg

フィルタが処理する断片化の設定。

yes :フィルタは断片化されたトラフィックを処理します。

no :フィルタは断片化されていないトラフィックを処理します。

any :フィルタは、断片化されたトラフィックと断片化されていないトラフィックの両方を処理します。

RxRate (pps)

このフィルタが測定する現在のトラフィック レート(パケット/秒)。

送信元 IP アドレス、送信元アドレスのマスク、プロトコル番号、および宛先ポートは、特定のものでなくてもかまいません。アスタリスク(*)は、フィルタがすべてのフィールド値に対して動作するか、フィルタに複数の値が一致したことを示します。

バイパス フィルタの削除

バイパス フィルタを削除するには、ゾーン設定モードで次のコマンドを入力します。

no bypass-filter row-num

row-num 引数には、削除するバイパス フィルタの行番号を指定します。バイパス フィルタのリストを表示し、削除するバイパス フィルタの行番号を確認するには、 show bypass-filters コマンドを使用します(「バイパス フィルタの表示」を参照)。すべてのバイパス フィルタを削除するには、行番号としてアスタリスク( * )を入力します。

次の例は、バイパス フィルタを削除する方法を示しています。

user@DETECTOR-conf-zone-scannet# no bypass-filter 10

動的フィルタの設定

動的フィルタは必要な保護レベルをトラフィック フローに適用し、攻撃の処理方法を定義するものです。Detector は、ゾーン トラフィックに異常があると判断した場合(フローがゾーン ポリシーのしきい値を超えた場合)、動的フィルタを作成します。Detector は、ゾーン トラフィックや DDoS 攻撃のタイプの変化に応じて、新しい動的フィルタを作成します。動的フィルタは有効期間が限定されており、攻撃が終了すると Detector によって削除されます。Detector は、すべてのゾーンで同時にアクティブな動的フィルタを最大 150,000 個サポートします。

動的フィルタは、Detector の syslog に通知レコードを作成するか、リモート Guard をアクティブにしてゾーンを保護します。

この項では、次のトピックについて取り上げます。

動的フィルタの表示

動的フィルタの追加

動的フィルタの削除

動的フィルタの作成防止

動的フィルタの表示

ゾーン設定モードで次のいずれかのコマンドを使用して、Detector によって作成された動的フィルタを表示できます。

show dynamic-filters [ details ]:すべての動的フィルタのリストを表示します。

show dynamic-filters dynamic-filter-id [ details ]:特定の動的フィルタを 1 つ表示します。

show dynamic-filters sort { action | exp-time | id }:すべての動的フィルタのソートされたリストを表示します。

表5-10 に、 show dynamic-filters コマンドの引数とキーワードを示します。

 

表5-10 show dynamic-filters コマンドの引数とキーワード

パラメータ
説明

dynamic-filter-id

表示する特定の動的フィルタの ID。この整数は Detector によって割り当てられます。フィルタの ID を確認するには、動的フィルタの完全なリストを表示します。

details

(オプション)動的フィルタを詳細に表示します。詳細情報には、攻撃フローに関する追加情報、トリガーとなるレート、およびそのフィルタを作成したポリシーなどがあります。

action

動的フィルタをアクション別に表示します。

exp-time

動的フィルタを有効期限の昇順で表示します。

id

動的フィルタを ID 番号の昇順で表示します。


) Detector がインタラクティブ検出モードで動作しているときに、保留動的フィルタを表示するには、show recommendations コマンドを使用します。保留動的フィルタの詳細については、「インタラクティブ検出モードの使用方法」を参照してください。



Detector は、最大 1000 個の動的フィルタを表示します。1000 を超える動的フィルタがアクティブになっている場合は、ログ ファイルまたはゾーンのレポートで、動的フィルタに関するすべてのリストを確認してください。


次の例は、動的フィルタを詳細に表示する方法を示しています。

user@DETECTOR-conf-zone-scannet# show dynamic-filters 876 details
 

表5-11 に、 show dynamic-filters コマンド出力のフィールドを示します。

 

表5-11 show dynamic-filters コマンド出力のフィールドの説明

フィールド
説明

ID

フィルタの識別番号。

Action

フィルタがトラフィック フローに対して実行するアクション。

Exp Time

フィルタがアクティブになっている時間。この時間が経過すると、フィルタは削除されます。

Source IP

フィルタが処理するトラフィックの送信元 IP アドレス。

Source Mask

フィルタが処理するトラフィックの送信元アドレスのマスク。

Proto

フィルタが処理するトラフィックのプロトコル番号。

DPort

フィルタが処理するトラフィックの宛先ポート。

Frg

断片化されたトラフィックをフィルタが処理するかどうか。

yes :フィルタは断片化されたトラフィックを処理します。

no :フィルタは断片化されていないトラフィックを処理します。

any :フィルタは、断片化されたトラフィックと断片化されていないトラフィックの両方を処理します。

RxRate (pps)

このフィルタが測定する現在のトラフィック レート(パケット/秒)。

Destination IP

フィルタが処理するトラフィックの宛先 IP アドレス。Detector は、宛先 IP アドレスと、ゾーンに設定された protect-ip-state の値に基づいて Guard の保護をアクティブにします。

送信元 IP アドレス、送信元アドレスのマスク、プロトコル番号、および宛先ポートは、特定のものでなくてもかまいません。アスタリスク(*)は、フィルタがすべてのフィールド値に対して動作するか、フィルタに複数の値が一致したことを示します。

表5-12 に、 show dynamic-filters details コマンド出力の追加フィールドを示します。

 

表5-12 show dynamic-filters details コマンド出力のフィールドの説明

フィールド
説明

Attack flow

攻撃フローの特性。攻撃フローは、Source IP、Source Mask、Proto、Dport、および Frg フィールドで構成されています。これらのフィールドについては、 表5-11 で説明しています。

Triggering Rate

ポリシーのしきい値を超過した攻撃フローのレート。

Threshold

攻撃フローによって超過したポリシーのしきい値。

Policy

動的フィルタを作成したポリシー。詳細については、「ポリシー テンプレートとポリシーの設定」を参照してください。

動的フィルタの追加

ゾーンの攻撃中に、動的フィルタを追加してゾーンの異常検出を操作することができます。動的フィルタを設定すると、リモート Guard リストに定義されている Guard(リモート Guard)をアクティブにして、ゾーンを保護することができます。動的フィルタの宛先 IP アドレスが、 protect-ip-state コマンドを使用してゾーンに定義した Guard 保護アクティベーション方式、およびゾーンのアドレス範囲と一致しない場合、リモートのアクティベーションは失敗します。次のいずれかの方法を使用して動的フィルタを設定し、リモート Guard でのゾーン保護をアクティブにすることができます。

リモート Guard のゾーン保護をゾーン全体に対してアクティブにする:ゾーン全体に対してゾーン保護をアクティブにする場合は、 dst-ip 引数を指定しないでください。ゾーンの Guard 保護アクティベーション方式は、 entire-zone または policy-type に設定する必要があります。

リモート Guard のゾーン保護をゾーンの IP アドレス範囲内の特定の IP アドレスについてのみアクティブにする:特定の IP アドレスに対してゾーン保護をアクティブにする場合は、 dst-ip 引数を使用して IP アドレスを指定します。ゾーンの Guard 保護アクティベーション方式は、 dst-ip-by-name に設定する必要があります。

詳細については、「リモート Guard のアクティブ化によるゾーン保護」および 「Guard 保護のアクティベーション方式の設定」を参照してください。

動的フィルタを追加するには、ゾーン設定モードで次のコマンドを入力します。

dynamic-filter remote-activate { exp-time | forever } [ dst-ip ]

複数の動的フィルタを追加するには、 dynamic-filter コマンドを複数使用します。

表5-13 に、 dynamic-filter コマンドの引数とキーワードを示します。

 

表5-13 dynamic-filter コマンドの引数とキーワード

パラメータ
説明

remote-activate

リモート Guard をアクティブにして、ゾーンを保護します。

dst-ip 引数を入力しない場合、Detector がリモート Guard の保護をアクティブにするために使用するアクティベーション方式は、 entire-zone になります。

exp-time

フィルタがアクティブである期間(秒単位)を指定する 1 ~ 3,000,000 の整数。

forever

フィルタを無期限でアクティブにします。保護が終了すると、フィルタは削除されます。

dst-ip

(オプション)特定の宛先 IP アドレスへのトラフィック。Detector は、リモート Guard をアクティブにし、指定された IP アドレスに基づいてゾーンを保護します。IP アドレスをドット区切り 10 進表記で入力します(たとえば 192.168.100.1)。

Detector は、アクティベーション方式 dst-ip-by-name を使用してリモート Guard の保護をアクティブにします。

次の例は、リモート Guard でゾーン全体に対する保護をアクティブにする動的フィルタを追加する方法を示しています。

admin@GUARD-conf-zone-scannet# dynamic-filter remote-activate 600

動的フィルタの削除

動的フィルタを削除しても、削除が有効になっている期間は限られています。ゾーン異常検出がイネーブルで、ゾーンが攻撃を受けているときは、Detector が新しい動的フィルタの作成を続行するからです。Detector が動的フィルタを作成しないようにする方法の詳細については、「動的フィルタの作成防止」を参照してください。

動的フィルタを削除するには、ゾーン設定モードで次のコマンドを入力します。

no dynamic-filter dynamic-filter-id

dynamic-filter-id 引数には、動的フィルタの ID を指定します。動的フィルタのリストを表示し、削除する動的フィルタを確認するには、 show dynamic-filters コマンドを使用します(「動的フィルタの表示」を参照)。すべてのゾーン動的フィルタを削除するには、動的フィルタの ID としてアスタリスク( * )を入力します。

次の例は、動的フィルタを削除する方法を示しています。

user@DETECTOR-conf-zone-scannet# no dynamic-filter 876

動的フィルタの作成防止

Detector が不要な動的フィルタを作成しないようにするには、次のいずれかのアクションを実行します。

動的フィルタを作成するポリシーを非アクティブにします(詳細については、「ポリシーの状態の変更」を参照)。不要な動的フィルタを作成したポリシーを特定するには、「動的フィルタの表示」を参照してください。

目的のトラフィック フローにバイパス フィルタを設定します(「バイパス フィルタの設定」を参照)。

不要な動的フィルタを作成するポリシーのしきい値を増加させます(「ポリシーのしきい値の設定」を参照)。