DCE/RPC トラフィックのデコード
ライセンス:Protection
DCE/RPC プロトコルにより、別々のネットワーク ホスト上のプロセスが、同一ホストに配置されている場合と同様に通信できます。通常、このようなプロセス間通信はホスト間で TCP および UDP 経由で転送されます。TCP 転送では、DCE/RPC が Windows Server Message Block(SMB)プロトコルまたは Samba にさらにカプセル化されることがあります。Samba は、Windows および UNIX 系または Linux 系のオペレーティング システムで構成される混合環境でのプロセス間通信に使用されるオープンソース SMB 実装です。また、ネットワーク上の Windows IIS Web サーバが、IIS RPC over HTTP を使用することがあります。IIS RPC over HTTP は、プロキシ TCP により伝送される DCE/RPC トラフィックに対し、ファイアウォールを介した分散通信を提供します。
DCE/RPC プリプロセッサ オプションとその機能の説明には、Microsoft による DCE/RPC の実装である MSRPC が含まれることに注意してください。SMB のオプションと機能についての説明は、SMB と Samba の両方に当てはまります。
ほとんどの DCE/RPC エクスプロイトは、DCE/RPC サーバ(ネットワーク上の Windows または Samba が稼働している任意のホスト)を対象とした DCE/RPC クライアント要求で発生します。またエクスプロイトはサーバ応答でも発生することがあります。DCE/RPC プリプロセッサは、TCP、UDP、および SMB トランスポートでカプセル化された DCE/RPC 要求と応答を検出します。これには、RPC over HTTP バージョン 1 を使用して TCP により伝送される DCE/RPC を含みます。プリプロセッサは DCE/RPC データ ストリームを分析し、DCE/RPC トラフィックにおける異常な動作と回避技術を検出します。また、SMB データ ストリームを分析し、異常な SMB 動作と回避技術を検出します。
DCE/RPC プリプロセッサは、IP 最適化と TCP ストリームの再構成のほかに、SMB のセグメント化解除および DCE/RPC の最適化も行います。SMB や RPC over HTTP などの TCP により伝送される DCE/RPC を検出するためには、TCP ストリームの前処理を有効にしておく必要があり、また DCE/RPC プリプロセッサを有効にする場合は、結局のところは IP によりすべての DCE/RPC トラフィックが伝送されることになるので、IP 最適化を有効にしておく必要があることに注意してください。「TCP ストリームの前処理の使用」および「IP パケットのデフラグ」を参照してください。
最後に、DCE/RPC プリプロセッサはルール エンジンで処理できるように DCE/RPC トラフィックを正規化します。特定の DCE/RPC ルール キーワードを使用してDCE/RPC サービス、操作、およびスタブ データを検出する方法については、「DCE/RPC キーワード」を参照してください。
DCE/RPC プリプロセッサを設定するには、プリプロセッサの機能を制御するグローバル オプションを変更するか、IP アドレスと稼働している Windows または Samba のバージョンによってネットワーク上の DCE/RPC サーバを識別する 1 つ以上のターゲットベース サーバ ポリシーを指定します。
• ジェネレータ ID(GID)が 132 または 133 の DCE/RPC プリプロセッサ ルールを使用してイベントを生成する場合は、これらのルールを有効にする必要があります。設定ページのリンクから、侵入ポリシーの [Rules] ページの DCE/RPC プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
• このプリプロセッサが無効になっている侵入ポリシーで、このプリプロセッサを必要とする共有オブジェクト ルールまたは標準テキスト ルールが有効になっている場合は、そのポリシーを保存する前に、プリプロセッサを有効にするか、システムが自動的にプリプロセッサを有効にできるように許可する必要があります。詳細については、「詳細設定の自動有効化」を参照してください。
詳細については、次の項を参照してください。
• 「グローバル DCE/RPC オプションの選択」
• 「ターゲットベース DCE/RPC サーバ ポリシーについて」
• 「DCE/RPC トランスポートについて」
• 「DCE/RPC ターゲットベース ポリシー オプションの選択」
• 「DCE/RPC プリプロセッサの設定」
グローバル DCE/RPC オプションの選択
ライセンス:Protection
グローバル DCE/RPC プリプロセッサ オプションは、プリプロセッサの機能を制御します。[Memory Cap Reached] オプション以外のこれらのオプションを変更すると、パフォーマンスまたは検出機能に悪影響を及ぼす可能性があります。プリプロセッサについて、またプリプロセッサと有効にされている DCE/RPC ルールとの間の相互作用について十分に理解していない場合は、これらのオプションを変更しないでください。特に [Maximum Fragment Size] オプションと [Reassembly Threshold] オプションは、ルールが検出する必要がある深さと同じかそれ以上にしてください。詳細については、「コンテンツ一致の制約」および「Byte_Jump と Byte_Test の使用」を参照してください。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Maximum Fragment Size
[Enable Defragmentation] が選択されている場合、DCE/RPC フラグメントの許容最大長を 1514 バイトから 65535 バイトまでの範囲で指定します。これよりも大きなフラグメントの場合、プリプロセッサは処理のためにフラグメントの一部を切り捨て、指定のサイズにしてから最適化を行いますが、実際のパケットは変更されません。空白フィールドの場合、このオプションは無効になります。
Reassembly Threshold
[Enable Defragmentation] が選択されている場合、0 を指定するとこのオプションは無効になり、1 バイトから 65535 バイトの範囲内の値を指定すると、それが、フラグメント化された DCE/RPC の最小バイト数となります。また該当する場合は、再構成されたパケットをルール エンジンに送信する前にキューに入れるセグメント化 SMB のバイト数が指定されます。低い値を指定すると、早期検出の可能性が高くなりますが、パフォーマンスに悪影響を及ぼす可能性があります。このオプションを有効にする場合は、パフォーマンスの影響をテストしておく必要があります。
Enable Defragmentation
フラグメント化された DCE/RPC トラフィックを最適化するかどうかを指定します。無効にすると、プリプロセッサは引き続き異常を検出して DCE/RPC データをルール エンジンに送信しますが、フラグメント化された DCE/RPC データでのエクスプロイトを見落とすリスクがあります。
このオプションには、DCE/RPC トラフィックを最適化しないという柔軟性がありますが、ほとんどの DCE/RPC エクスプロイトでは、フラグメント化を利用してエクスプロイトを隠ぺいする試みが行われます。このオプションを無効にすると、ほとんどの既知のエクスプロイトがバイパスされ、検出漏れが大量に発生します。
Memory Cap Reached
プリプロセッサに割り当てられた最大メモリ制限に達したか、またはこの制限を超過したことを検出します。最大メモリ制限に達したか、またはこの制限を超過した場合、プリプロセッサはメモリ キャップ イベントを引き起こしたセッションに関連付けられているすべての保留データを解放し、セッションのそれ以降の部分を無視します。
このオプションのイベントを生成するには、ルール 133:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Auto-Detect Policy on SMB Session
SMB Session Setup AndX
要求および応答に指定されている Windows または Samba のバージョンを検出します。検出されたバージョンが、[Policy] 設定オプションで設定されている Windows または Samba のバージョンと異なる場合、そのセッションに限り、検出されたバージョンが設定バージョンをオーバーライドします。詳細については、「ターゲットベース DCE/RPC サーバ ポリシーについて」を参照してください。
たとえば、[Policy] に Windows XP を設定した場合に、プリプロセッサが Windows Vista を検出すると、プリプロセッサはそのセッションでは Windows Vista ポリシーを使用します。その他の設定は引き続き有効です。
DCE/RPC トランスポートが SMB ではない場合は(トランスポートが TCP または UDP の場合)、バージョンを検出できず、ポリシーを自動的に設定できません。
このオプションを有効にするには、ドロップダウン リストで次のいずれかを選択します。
– サーバ/クライアント トラフィックでポリシー タイプを検査するには、[Client] を選択します。
– クライアント/サーバ トラフィックでポリシー タイプを検査するには、[Server] を選択します。
– サーバ/クライアント トラフィックとクライアント/サーバ トラフィックの両方でポリシー タイプを検査するには、[Both] を選択します。
ターゲットベース DCE/RPC サーバ ポリシーについて
ライセンス:Protection
ターゲットベース サーバ ポリシーを 1 つ以上作成することにより、指定されたタイプのサーバが処理するのと同様の方法で DCE/RPC トラフィックを検査するように、DCE/RPC プリプロセッサを設定することができます。ターゲットベース ポリシーの設定では、ネットワーク上の指定するホストで稼働している Windows または Samba のバージョンの識別、トランスポート プロトコルの有効化、DCE/RPC トラフィックをこれらのホストへ伝送するポートの指定、その他のサーバ固有オプションの設定などを行います。
Windows および Samba の DCE/RPC の実装は大きく異なります。たとえば、Windows のすべてのバージョンは、DCE/RPC トラフィックの最適化時に最初のフラグメントの DCE/RPC コンテキスト ID を使用しますが、Samba のすべてのバージョンは、最後のフラグメントのコンテキスト ID を使用します。また、特定の関数呼び出しを識別するために、Windows Vista では最初のフラグメントの opnum(操作番号)見出し フィールドを使用しますが、Samba とその他のすべてのバージョンの Windows では最後のフラグメントの opnum フィールドを使用します。
Windows と Samba の SMB の実装にも、大きな違いがあります。たとえば、Windows は名前付きパイプの操作時に SMB OPEN および READ コマンドを認識しますが、Samba はこれらのコマンドを認識しません。
DCE/RPC プリプロセッサを有効にすると、デフォルトのターゲットベース ポリシーが自動的に有効になります。オプションで、異なるバージョンの Windows または Samba が稼働している他のホストを対象とするターゲットベース ポリシーを追加できます。このためには、[Policy] ドロップダウン リストから適切なバージョンを選択します。デフォルトのターゲットベース ポリシーは、別のターゲットベース ポリシーに含まれていないホストに適用されます。
それぞれのターゲットベース ポリシーでは、1 つ以上のトランスポートを有効にし、それぞれについて 検出ポート を指定できます。また、 自動検出ポート を有効にして指定できます。詳細については、「DCE/RPC トランスポートについて」を参照してください。
その他のターゲットベースのポリシー オプションも設定できます。指定した 1 つ以上の共有 SMB リソースへの接続が試行された場合にそれを検出するように、プリプロセッサを設定できます。SMB トラフィックでファイルを検出し、検出されたファイルで指定のバイト数のデータを検査するように、プリプロセッサを設定できます。また、SMB プロトコルに関する知識を持つユーザだけが変更すべき拡張オプションを変更できます。このオプションでは、連結された SMB ANDX コマンドの数が指定された最大数を超えた場合にそのことを検出するようにプリプロセッサを設定できます。
各ターゲットベースのポリシーでは次の設定が可能です。
• 1 つ以上のトランスポートを有効にし、それぞれについて 検出ポート を指定します。
• 自動検出ポート を有効にして指定します。詳細については、「DCE/RPC トランスポートについて」を参照してください。
• 指定した 1 つ以上の共有 SMB リソースへの接続が試行された場合にそのことを検出するように、プリプロセッサを設定します。
• SMB トラフィックでファイルを検出し、検出されたファイルで指定された数のバイトを検査するように、プリプロセッサを設定します。
• SMB プロトコルの知識を持つユーザだけが変更すべき拡張オプションを変更できます。このオプションでは、連結された SMB ANDX コマンドの数が指定された最大数を超えた場合にそのことを検出するようにプリプロセッサを設定します。
[Auto-Detect Policy on SMB Session] グローバル オプションを有効にすることにより、SMB が DCE/RPC トランスポートの場合に、ターゲット ポリシーに対して設定されているポリシー タイプをセッションごとに自動的にオーバーライドできることに注意してください。「Auto-Detect Policy on SMB Session」を参照してください。
DCE/RPC プリプロセッサで SMB トラフィック ファイル検出を有効にする他に、オプションでこれらのファイルを検出してブロックするか、または動的分析のために Collective Security Intelligence クラウド に送信するように、ファイル ポリシーを設定できます。そのポリシー内で、[Action] として [Detect Files] または [Block Files] を選択し、[Application Protocol] として [Any] または [NetBIOS-ssn (SMB)] を選択して、ファイル ルールを作成する必要があります。詳細については、「ファイル ポリシーの作成」および「ファイル ルールの操作」を参照してください。
DCE/RPC トランスポートについて
ライセンス:Protection
各ターゲットベース ポリシーでは、TCP、UDP、SMB、および RPC over HTTP トランスポートのうち 1 つ以上を有効にできます。トランスポートを有効にする場合は、1 つ以上の 検出ポート (DCE/RPC トラフィックを伝送することがわかっているポート)を指定する必要があります。オプションで、 自動検出ポート (プリプロセッサが、DCE/RPC トラフィックを伝送するかどうかを判別するためにまずテストし、DCE/RPC トラフィックを検出した場合にのみ処理を続行するポート)を有効にして指定できます。
シスコは、ウェルノウン ポートまたは一般に使用されているポートであるデフォルト検出ポートを各プロトコルで使用することを推奨します。検出ポートを追加するのは、デフォルト以外のポートで DCE/RPC トラフィックを検出した場合だけです。
自動検出ポートを有効にする場合は、エフェメラル ポート範囲全体に対応するよう、自動検出ポートが 1024 から 65535 までのポート範囲に設定されていることを確認してください。[RPC over HTTP Proxy Auto-Detect Ports] オプションまたは [SMB Auto-Detect Ports] オプションで自動検出ポートを有効にしたり指定したりすることはほとんどないことに注意してください。これは、指定されているデフォルト検出ポートを除き、どちらの場合もトラフィックが発生することはほとんどなく、その見込みも少ないためです。また、自動検出は、トランスポート検出ポートによって識別されていないポートでのみ発生する点にも注意してください。トランスポートごとに自動検出ポートを有効または無効にする際の推奨事項については、「DCE/RPC ターゲットベース ポリシー オプションの選択」を参照してください。
[TCP Port] または [TCP Auto-Detect Ports] オプションで設定されているポートはすべて、設定されている TCP ポートを介した DCE/RPC セッション期間にわたり、TCP ストリーム プリプロセッサ クライアントまたはサーバの再構成ポートとして自動的にアクティブ化されます。TCP ポートだけがアクティブ化され、セッションの終了時に TCP ポートは自動的に非アクティブ化されます。詳細については、「TCP ストリームの再アセンブリ」および 「ストリームの再アセンブリのオプションの選択」を参照してください。
Windows のターゲットベース ポリシーでは、ネットワークのトラフィックに一致するように、1 つ以上の任意のトランスポートのポートを任意の組み合わせで指定できます。しかし、Samba のターゲットベース ポリシーでは SMB トランスポートのポートだけを指定できます。
少なくとも 1 つのトランスポートが有効になっている DCE/RPC ターゲットベース ポリシーを追加した場合を除き、デフォルトの ターゲットベース ポリシーでは少なくとも 1 つの DCE/RPC トランスポートを有効にする必要があります。たとえば、すべての DCE/RPC 実装用のホストを指定し、未指定のホストにはデフォルトのターゲットベース ポリシーを適用しないでおくことがあります。この場合、デフォルトのターゲットベース ポリシーのトランスポートを有効にしません。
詳細については、次の項を参照してください。
• 「コネクションレス型およびコネクション型 DCE/RPC トラフィックについて」
• 「RPC over HTTP トランスポートについて」
コネクションレス型およびコネクション型 DCE/RPC トラフィックについて
ライセンス:Protection
DCE/RPC メッセージは、2 種類の DCE/RPC Protocol Data Unit(PDU)の 1 つに準拠します。
• コネクション型 DCE/RPC PDU プロトコル
DCE/RPC プリプロセッサは、TCP、SMB、および RPC over HTTP トランスポートでコネクション型 DCE/RPC を検出します。
• コネクションレス型 DCE/RPC PDU プロトコル
DCE/RPC プリプロセッサは、UDP トランスポートでコネクションレス型 DCE/RPC を検出します。
この 2 つの DCE/RPC PDU プロトコルには、それぞれ固有の見出しとデータ特性があります。たとえば、コネクション型 DCE/RPC 見出しの長さは通常は 24 バイトであり、コネクションレス型 DCE/RPC の見出しの長さは 80 バイト(固定)です。また、フラグメント化コネクションレス型 DCE/RPC のフラグメントの正しい順序は、コネクションレス型トランスポートでは処理できないため、代わりにコネクションレス型 DCE/RPC 見出し値により維持される必要があります。これとは対照的に、コネクション型 DCE/RPC の正しいフラグメント順序はトランスポート プロトコルによって維持されます。DCE/RPC プリプロセッサは、これらや他のプロトコル固有の特性を使用して、両方のプロトコルで異常やその他の回避技術をモニタし、トラフィックをデコードおよび最適化してからルール エンジンに渡します。
次の図は、DCE/RPC プリプロセッサが各種トランスポートの DCE/RPC トラフィックの処理を開始するポイントを示します。
この図の次の点に注意してください。
• ウェルノウン TCP または UDP ポート 135 は、TCP および UDP トランスポートの DCE/RPC トラフィックを特定します。
• この図には RPC over HTTP は含まれていません。
RPC over HTTP の場合、HTTP 経由での初期セットアップ シーケンスの後で、コネクション型 DCE/RPC は図に示すように TCP 経由で伝送されます。詳細については、「RPC over HTTP トランスポートについて」を参照してください。
• DCE/RPC プリプロセッサは通常、NetBIOS セッション サービス用のウェルノウン TCP ポート 139 か、同様に実装されたウェルノウン Windows ポート 445 で SMB トラフィックを受信します。
SMB には DCE/RPC 伝送以外にも多数の機能があるため、プリプロセッサは SMB トラフィックが DCE/RPC トラフィックを伝送しているかどうかをまず検査します。伝送していない場合は処理を停止し、伝送している場合は処理を続行します。
• IP によりすべての DCE/RPC トランスポートがカプセル化されます。
DCE/RPC プリプロセッサを有効にする場合は、IP 最適化が有効になっていることを確認する必要があります。詳細については、「IP パケットのデフラグ」を参照してください。
• TCP は、すべてのコネクション型 DCE/RPC を伝送します。
TCP、SMB、または RPC over HTTP トランスポートを有効にする場合は、TCP ストリームの前処理が有効になっていることを確認する必要があります。詳細については、「TCP ストリームの前処理の使用」を参照してください。
• UDP はコネクションレス型 DCE/RPC を伝送します。
UDP トランスポートを有効にする場合は、UDP ストリームの前処理が有効になっていることを確認する必要があります。詳細については、「UDP ストリームの前処理の使用」を参照してください。
RPC over HTTP トランスポートについて
ライセンス:Protection
Microsoft RPC over HTTP では、次の図に示すように、DCE/RPC トラフィックをトンネリングして、ファイアウォールを通過させることができます。DCE/RPC プリプロセッサは Microsoft RPC over HTTP バージョン 1 を検出します。
Microsoft IIS プロキシ サーバと DCE/RPC サーバは、同じホストまたは別々のホストにインストールできます。いずれの場合でも、個別のプロキシ オプションとサーバ オプションがあります。この図の次の点に注意してください。
• DCE/RPC サーバはポート 593 で DCE/RPC クライアント トラフィックをモニタしますが、ファイアウォールはこのポート 593 をブロックします。
通常、ファイアウォールではデフォルトでポート 593 がブロックされます。
• RPC over HTTP は、ファイアウォールが通常許可するウェルノウン HTTP ポート 80 を使用して、HTTP 経由で DCE/RPC を伝送します。
• 例 1 のように、DCE/RPC クライアントと Microsoft IIS RPC プロキシ サーバの間のトラフィックをモニタする場合は [RPC over HTTP proxy] オプションを選択できます。
• 例 2 のように、Microsoft IIS RPC プロキシ サーバと DCE/RPC サーバが別々のホストにあり、デバイスが 2 つのサーバ間のトラフィックをモニタしている場合は、[RPC over HTTP server] オプションを選択できます。
• RPC over HTTP により DCE/RPC クライアントとサーバ間でのプロキシ セットアップが完了した後は、トラフィックは TCP を経由したコネクション型 DCE/RPC だけで構成されます。
DCE/RPC ターゲットベース ポリシー オプションの選択
ライセンス:Protection
各ターゲットベース ポリシーでは、次に示すさまざまなオプションを指定できます。[Memory Cap Reached] および [Auto-Detect Policy on SMB Session] オプション以外のオプションを変更すると、パフォーマンスまたは検出機能に悪影響を及ぼす可能性があります。プリプロセッサについて、またプリプロセッサと有効にされている DCE/RPC ルールとの間の相互作用について十分に理解していない場合は、これらのオプションを変更しないでください。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Networks
DCE/RPC ターゲットベース サーバ ポリシーを適用するホストの IP アドレス。
単一の IP アドレスまたはアドレス ブロック、あるいはこれらのいずれかまたは両方をコンマで区切ったリストを指定できます。デフォルト ポリシーを含め、最大で合計 255 個のプロファイルを指定できます。FireSIGHT システムでの IPv4 および IPv6 アドレス ブロックの指定については、「IP アドレスの表記法」を参照してください。
デフォルト ポリシーの デフォルト
設定では、別のターゲットベース ポリシーでカバーされていないモニタ対象ネットワーク セグメントのすべての IP アドレスが指定されることに注意してください。したがって、デフォルト ポリシーの IP アドレスまたは CIDR ブロック/プレフィクス長は指定できず、また指定する必要もありません。また、別のポリシーでこの設定を空白にしたり、 すべて
を表すアドレス表記(0.0.0.0/0 または ::/0)を使用したりすることはできません。
Policy
モニタ対象ネットワーク セグメントのターゲット ホストが使用する Windows または Samba DCE/RPC の実装。これらのポリシーの詳細については、「ターゲットベース DCE/RPC サーバ ポリシーについて」を参照してください。
[Auto-Detect Policy on SMB Session] グローバル オプションを有効にすることで、SMB が DCE/RPC トランスポートの場合に、このオプションの設定をセッション単位で自動的にオーバーライドできることに注意してください。「Auto-Detect Policy on SMB Session」を参照してください。
SMB Invalid Shares
1 つ以上の SMB 共有リソースを識別する、大文字と小文字を区別しない英数字テキスト文字列です。指定した共有リソースへの接続が試行されると、プリプロセッサがそのことを検出します。複数の共有をカンマで区切って指定できます。またオプションで、共有を引用符で囲むこともできます。これは、以前のソフトウェア バージョンでは必須でしたが、現在は必須ではありません。次に例を示します。
"C$", D$, "admin", private
SMB ポートと SMB トラフィックの両方の検出が有効に設定されている場合、プリプロセッサは SMB トラフィックで無効な共有を検出します。
ほとんどの場合、Windows により名前が指定されたドライブを無効な共有として指定するには、このドライブにドル記号を付加する必要があることに注意してください。たとえば、ドライブ C は C$ または "C$" として指定します。
このオプションのイベントを生成するには、ルール 133:26 を有効にします。詳細については、「ルール状態の設定」を参照してください。
SMB Maximum AndX Chain
連結された SMB AndX コマンドの最大数(0 から 255)です。通常、多数の連結 AndX コマンドは異常な動作を表し、場合によっては回避試行を示している可能性があります。連結コマンドを許可しない場合は 1 を指定し、連結コマンドの数の検出を無効にするには 0 を指定します。
プリプロセッサは最初に連結コマンドの数をカウントし、関連する SMB プリプロセッサ ルールが有効であり、連結コマンドの数が設定されている値と等しいかそれ以上の場合にはイベントを生成することに注意してください。その後処理が続行されます。
(注) SMB プロトコルに詳しいユーザだけがこのオプションのデフォルト設定を変更するようにしてください。
このオプションのイベントを生成するには、ルール 133:20 を有効にします。詳細については、「ルール状態の設定」を参照してください。
RPC proxy traffic only
[RPC over HTTP Proxy Ports] が有効である場合、検出されるクライアント側の RPC over HTTP トラフィックがプロキシ トラフィックのみであるか、または他の Web サーバ トラフィックを含んでいる可能性があるかどうかを示します。たとえば、ポート 80 はプロキシ トラフィックとその他の Web サーバ トラフィックの両方を伝送する可能性があります。
このオプションが無効になっている場合は、プロキシ トラフィックとその他の Web サーバ トラフィックの両方が想定されます。たとえばサーバが専用プロキシ サーバである場合などに、このオプションを有効にします。有効にすると、プリプロセッサはトラフィックを調べて DCE/RPC を伝送しているかどうかを判別し、伝送していない場合はそのトラフィックを無視し、伝送している場合は処理を続行します。このオプションを有効にすることで機能が追加されるのは、[RPC over HTTP Proxy Ports] チェック ボックスも有効にされている場合だけであることに注意してください。
RPC over HTTP Proxy Ports
管理対象デバイスが DCE/RPC クライアントと Microsoft IIS RPC プロキシ サーバの間に配置されている場合に、指定の各ポートで RPC over HTTP によりトンネリングされている DCE/RPC トラフィックの検出を有効にします。「RPC over HTTP トランスポートについて」を参照してください。
有効である場合、DCE/RPC トラフィックが確認されるポートを追加できますが、Web サーバは一般に DCE/RPC トラフィックとその他のトラフィックの両方にデフォルト ポートを使用するため、この操作が必要になることはあまりありません。有効である場合、[RPC over HTTP Proxy Auto-Detect Ports] は有効にしませんが、検出されるクライアント側の RPC over HTTP トラフィックがプロキシ トラフィックのみであり、その他の Web サーバ トラフィックを含んでいない場合は、[RPC Proxy Traffic Only] を有効にします。
RPC over HTTP Server Ports
Microsoft IIS RPC プロキシ サーバおよび DCE/RPC サーバが異なるホスト上に配置されており、デバイスがこの 2 つのサーバ間のトラフィックをモニタしている場合、指定の各ポートで RPC over HTTP によりトンネリングされている DCE/RPC トラフィックの検出を有効にします。「RPC over HTTP トランスポートについて」を参照してください。
一般に、このオプションを有効にするときは、ネットワーク上にプロキシ Web サーバを認識していない場合であっても、1025 から 65535 までのポート範囲で [RPC over HTTP Server Auto-Detect Ports] も有効にする必要があります。場合によっては RPC over HTTP サーバ ポートを再設定することがあり、その際には再設定したサーバ ポートをこのオプションのポート リストに追加する必要があることに注意してください。
TCP Ports
指定の各ポートでの TCP の DCE/RPC トラフィックの検出を有効にします。
正当な DCE/RPC トラフィックとエクスプロイトは、さまざまなポートを使用する可能性があります。ポート 1024 より大きい番号のポートが一般的です。通常、このオプションを有効にする場合は、1025 から 65535 までのポート範囲で [TCP Auto-Detect Ports] も有効にする必要もあります。
UDP Ports
指定の各ポートでの UDP の DCE/RPC トラフィックの検出を有効にします。
正当な DCE/RPC トラフィックとエクスプロイトは、さまざまなポートを使用する可能性があります。ポート 1024 より大きい番号のポートが一般的です。通常、このオプションを有効にする場合は、1025 から 65535 までのポート範囲で [UDP Auto-Detect Ports] も有効にする必要があります。
SMB Ports
指定の各ポートでの SMB の DCE/RPC トラフィックの検出を有効にします。
デフォルトの検出ポートを使用した SMB トラフィックが発生することがあります。他のポートはほとんどありません。通常はデフォルト設定を使用してください。
RPC over HTTP Proxy Auto-Detect Ports
管理対象デバイスが DCE/RPC クライアントと Microsoft IIS RPC プロキシ サーバの間に配置されている場合に、指定のポートで RPC over HTTP によりトンネリングされている DCE/RPC トラフィックの自動検出を有効にします。「RPC over HTTP トランスポートについて」を参照してください。
有効である場合は、一時ポート範囲全体をカバーするため、一般にポート範囲として 1025 から 65535 を指定します。
RPC over HTTP Server Auto-Detect Ports
Microsoft IIS RPC プロキシ サーバおよび DCE/RPC サーバが異なるホスト上に配置されており、デバイスがこの 2 つのサーバ間のトラフィックをモニタしている場合、指定のポートで RPC over HTTP によりトンネリングされている DCE/RPC トラフィックの自動検出を有効にします。「RPC over HTTP トランスポートについて」を参照してください。
TCP Auto-Detect Ports
指定のポートで TCP の DCE/RPC トラフィックの自動検出を有効にします。
UDP Auto-Detect Ports
指定の各ポートで UDP の DCE/RPC トラフィックの自動検出を有効にします。
SMB Auto-Detect Ports
SMB の DCE/RPC トラフィックの検出を有効にします。
SMB File Inspection
ファイル検出のための SMB トラフィックの インスペクションを有効にします。次の選択肢があります。
– ファイル インスペクションを無効にするには、[Off] を選択します。
– SMB でファイル データを検査するが、DCE/RPC トラフィックは検査しない場合は、[Only] を選択します。このオプションを選択すると、ファイルと DCE/RPC トラフィックの両方を検査する場合よりもパフォーマンスが向上する可能性があります。
– SMB でファイルと DCE/RPC トラフィックの両方を検査するには、[On] を選択します。このオプションを選択すると、パフォーマンスに影響する可能性があります。
SMB トラフィックでの次のファイルについてのインスペクションはサポートされていません。
– SMB 2.0 および SMB 3.0 で転送されたファイル
– このオプションを有効にしてポリシーを適用する前に確立された TCP または SMB セッションで転送されたファイル
– 1 つの TCP または SMB セッションで同時に転送されたファイル
– 複数の TCP または SMB セッションにわたって転送されたファイル
– メッセージ署名のネゴシエート時など、非連続データを使用して転送されたファイル
– 同一オフセットに異なるデータが含まれており、データがオーバーラップしている転送ファイル
– リモート クライアントがファイル サーバに保存し、そのクライアントで編集用に開かれたファイル
SMB File Inspection Depth
[SMB File Inspection] が [Only] または [On] に設定されている場合に、SMB トラフィックでファイルが検出された時に検査されるデータのバイト数です。次のいずれかを指定します。
– 1
から 2147483647
(約 2GB)までの範囲内の整数
– 0
:ファイル全体を検査する場合
– -1
:ファイル インスペクションを無効にする場合
このフィールドには、アクセス コントロール ポリシーで定義されている値と等しいか、それよりも小さい値を入力します。[Limit the number of bytes inspected when doing file type detection] で定義されている値よりも大きい値をこのオプションに設定すると、アクセス コントロール ポリシーの設定が、有効な最大値として使用されます。詳細については、「アクセス コントロール ポリシーの詳細設定」参照してください。
[SMB File Inspection] が [Off] に設定されている場合、このフィールドは無効になります。
DCE/RPC プリプロセッサの設定
ライセンス:Protection
DCE/RPC プリプロセッサのグローバル オプションと、1 つ以上のターゲットベース サーバ ポリシーを設定できます。
ジェネレータ ID(GID)133 のルールを有効にしていない場合、プリプロセッサはイベントを生成しません。設定ページのリンクから、侵入ポリシーの [Rules] ページの DCE/RPC プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。特定の検出オプションに関連付けられているルールについては、「グローバル DCE/RPC オプションの選択」、「DCE/RPC ターゲットベース ポリシー オプションの選択」、および 「ルール状態の設定」を参照してください。
さらに、ほとんどの DCE/RPC プリプロセッサ ルールでは、SMB、コネクション型 DCE/RPC、またはコネクションレス型 DCE/RPC のトラフィックで異常や回避技術が検出されると、イベントが生成されます。トラフィック タイプ別に有効にできるルールを次の表に示します。
表 25-1 Traffic-Associated DCE/RPC ルール
|
|
SMB |
133:2 ~ 133:26、133:48 ~ 133:57 |
Connection-Oriented DCE/RPC |
133:27 ~ 133:39 |
Detect Connectionless DCE/RPC |
133:40 ~ 133:43 |
DCE/RPC プリプロセッサを設定する方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [DCE/RPC Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[DCE/RPC Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 「グローバル DCE/RPC オプションの選択」で説明するオプションを変更できます。
ステップ 6 次の 2 つのオプションから選択できます。
• 新しいターゲットベースのポリシーを追加します。ページの左側で [Servers] の横にある追加アイコン( )をクリックします。[Add Target] ポップアップ ウィンドウが表示されます。1 つ以上の IP アドレスを [Server Address] フィールドに指定し、[OK] をクリックします。
単一の IP アドレスまたはアドレス ブロック、あるいはこれらのいずれかまたは両方をコンマで区切ったリストを指定できます。FireSIGHT システムでの IPv4 および IPv6 アドレス ブロックの使用については、「IP アドレスの表記法」を参照してください。
デフォルト ポリシーを含め、最大 255 個のポリシー を設定できます。
ページの左側のサーバ リストに新しい項目が表示され、選択されていることを示すために強調表示されます。[Configuration] セクションが更新され、追加したプロフィールの現行設定が反映されます。
• 既存のターゲットベースのポリシーの設定を変更します。ページ左側の [Servers] の下で追加したポリシーの設定済みアドレスをクリックするか、または [default] をクリックします。
選択したエントリが強調表示され、[Configuration] セクションが更新されて、選択したポリシーの現在の設定が表示されます。既存のポリシーを削除するには、削除するポリシーの横にある削除アイコン( )をクリックします。
ステップ 7 変更できるターゲットベース ポリシー オプションを次に示します。
• DCE/RPC のターゲットベース サーバ ポリシーを適用する 1 つ以上のホストを指定するには、[Networks] フィールドに、1 つの IP アドレスまたはアドレス ブロック、あるいはこのいずれかまたは両方をカンマで区切ったリストを入力します。
デフォルト ポリシーを含め、最大で合計 255 個のプロファイルを指定できます。デフォルト ポリシーでは [Networks] の設定を変更できないことに注意してください。デフォルト ポリシーは、別のポリシーで指定されていないネットワーク内のすべてのサーバに適用されます。
• ネットワーク セグメントの指定のホストに適用するポリシーのタイプを指定するには、[Policy] ドロップダウン リストから、Windows または Samba ポリシー タイプの 1 つを選択します。
[Auto-Detect Policy on SMB Session] グローバル オプションを有効にすることで、SMB が DCE/RPC トランスポートの場合に、このオプションの設定をセッション単位で自動的にオーバーライドできることに注意してください。「Auto-Detect Policy on SMB Session」を参照してください。
• 指定の共有 SMB リソースへの接続が試行された場合にそのことを検出するようにプリプロセッサを設定するには、[SMB Invalid Shares] フィールドに、共有リソースを示す文字列を 1 つまたは複数指定します。文字列の大文字と小文字は区別されず、複数の文字列はカンマで区切って指定します。オプションで、個々の文字列を引用符で囲むこともできます。これは、以前のソフトウェア バージョンでは必須でしたが、現在は必須ではありません。
たとえば、C$、 D$、admin、および private という名前の共有リソースを検出するには、次のように入力します。
"C$", D$, "admin", private
SMB の無効な共有を検出するには、[SMB Ports] または [SMB Auto-Detect Ports] も有効にし、[SMB Traffics] グローバル オプションを有効にする必要があることに注意してください。
ほとんどの場合、Windows により名前が指定されたドライブを無効な共有として指定するには、このドライブにドル記号を付加する必要があることにも注意してください。たとえば、ドライブ C を指定するには C$
または "C$"
と入力します。
• SMB の DCE/RPC トラフィックで検出されたファイルを検査し、DCE/RPC トラフィックの分析はしない場合は、[SMB File Inspection] ドロップダウン リストから [Only] を選択します。SMB の DCE/RPC トラフィックで検出されたファイルと DCE/RPC トラフィックを検査するには、[SMB File Inspection] ドロップダウン リストから [On] を選択します。[SMB File Inspection Depth] フィールドに、検出されたファイル内の検査対象バイト数を入力します。検出されたファイル全体を検査するには、 0
を入力します。
• 連結された SMB AndX コマンドの最大許容数を指定するには、[SMB Maximum AndX Chains] のフィールドに 0 ~ 255 を入力します。連結されたコマンドを許可しない場合は 1
を指定します。この機能を無効にするには、 0
を入力するか、またはこのオプションを空白のままにします。
(注) SMB プロトコルに詳しいユーザだけが [SMB Maximum AndX Chains] オプションのデフォルト設定を変更するようにしてください。
• Windows ポリシー トランスポートの DCE/RPC トラフィックを伝送することが判明しているポートで、DCE/RPC トラフィックを処理できるようにするには、検出トランスポートの横のチェック ボックスをオンまたはオフにします。またオプションで、伝送用のポートを追加または削除できます。
Windows ポリシー用に、[RPC over HTTP Proxy Ports]、[RPC over HTTP Server Ports]、[TCP Ports]、および [UDP Ports] のいずれか 1 つまたは任意の組み合わせを選択します。[RPC over HTTP proxy] が有効であり、検出されるクライアント側の RPC over HTTP トラフィックがプロキシ トラフィックのみである(つまり他の Web サーバ トラフィックを含んでいない)場合は、[RPC Proxy Traffic Only] を選択します。
Samba ポリシー用に [SMB Ports] を選択します。
ほとんどの場合はデフォルト設定を使用します。詳細については、「DCE/RPC トランスポートについて」、「RPC over HTTP トランスポートについて」、および「DCE/RPC ターゲットベース ポリシー オプションの選択」を参照してください。
1 つのポートか、ダッシュ(-)を使用して表したポート番号範囲、またはポート番号と範囲をカンマで区切ったリストを入力できます。
• 指定のポートが DCE/RPC トラフィックを伝送するかどうかを調べ、伝送する場合は処理を続行するには、自動検出トランスポートの横のチェック ボックスをオンまたはオフにします。またオプションで、伝送用のポートを追加または削除します。
Windows ポリシー用に、[RPC over HTTP Server Auto-Detect Ports]、[TCP Auto-Detect Ports]、[UDP Auto-Detect Ports] のいずれかまたは任意の組み合わせを選択します。
[RPC over HTTP Proxy Auto-Detect Ports] または [SMB Auto-Detect Ports] を選択することはほとんどない点に注意してください。
通常、エフェメラル ポート範囲全体をカバーするために、有効にする自動検出ポートに対し 1025 から 65535 までのポート範囲を指定します。詳細については、「DCE/RPC トランスポートについて」、「RPC over HTTP トランスポートについて」、および「DCE/RPC ターゲットベース ポリシー オプションの選択」を参照してください。
詳細については、「DCE/RPC ターゲットベース ポリシー オプションの選択」を参照してください。
ステップ 8 オプションで、ページの上部にある [Configure Rules for DCE/RPC Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [DCE/RPC Configuration] ページに戻ります。
ステップ 9 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
DNS ネーム サーバ応答におけるエクスプロイトの検出
ライセンス:Protection
DNS プリプロセッサは、DNS ネーム サーバ応答を検査し、次に示す特定のエクスプロイトがあるかどうかを確認します。
• RData テキスト フィールドに対するオーバーフローの試行
• 古い DNS リソース レコード タイプ
• 試験的な DNS リソース レコード タイプ
詳細については、次の項を参照してください。
• 「DNS プリプロセッサ リソース レコード インスペクションについて」
• 「RData テキスト フィールドに対するオーバーフローの試行の検出」
• 「古い DNS リソース レコード タイプの検出」
• 「試験的な DNS リソース レコード タイプの検出」
• 「DNS プリプロセッサの設定」
DNS プリプロセッサ リソース レコード インスペクションについて
ライセンス:Protection
最も一般的なタイプの DNS ネーム サーバ応答には、応答を求めたクエリ内のドメイン名に対応する 1 つ以上の IP アドレスが示されています。その他のタイプのサーバ応答には、たとえば、電子メール メッセージの宛先や、元のクエリの対象のサーバからは取得できない情報を提供できるネームサーバの位置などが記述されています。
DNS 応答は、メッセージ 見出し、1 つ以上の要求を含む [Question] セクション、および [Question] セクションの要求に対応する 3 つのセクション([Answer]、[Authority]、および [Additional Information])で構成されます。この 3 セクションの応答には、ネーム サーバに保持されている リソース レコード (RR)の情報が反映されます。次の表で、これらの 3 つのセクションについて説明します。
表 25-2 DNS ネーム サーバ RR 応答
|
|
|
Answer |
クエリに対する特定の回答を提供する 1 つ以上のリソース レコード(オプション) |
ドメイン名に対応する IP アドレス |
Authority |
権威ネーム サーバを指し示す 1 つ以上のリソース レコード(オプション) |
応答の権威ネームサーバの名前 |
Additional Information |
[Answer] セクションに関連する追加情報を提供する 1 つ以上のリソース レコード(オプション) |
クエリ対象の別のサーバの IP アドレス |
さまざまなタイプのリソース レコードがありますが、これらはすべて一貫して次の構造を保っています。
理論上、すべてのタイプのリソース レコードを、ネーム サーバ応答メッセージの [Answer]、[Authority]、または [Additional Information] セクションで使用できます。DNS プリプロセッサは、検出されたエクスプロイトについて、3 つの各応答セクションのすべてのリソース レコードを検査します。
[Type] および [RData] リソース レコード フィールドは、DNS プリプロセッサでは特に重要です。[Type] フィールドは、リソース レコードのタイプを示します。[RData](リソース データ)フィールドは、応答の内容を示します。[RData] フィールドのサイズと内容は、リソース レコードのタイプによって異なります。
DNS メッセージは通常、UDP トランスポート プロトコルを使用しますが、信頼性のある配信を必要とするメッセージ タイプである場合や、メッセージ サイズが UDP で処理可能なサイズを超えている場合は、TCP を使用します。DNS プリプロセッサは、UDP および TCP の両方のトラフィックで DNS サーバ応答を検査します。DNS プリプロセッサを有効にするには、TCP ストリームの前処理を有効にする必要があります。ただし DNS プリプロセッサは UDP トラフィックをパケット単位で検査するため、UDP セッション トラッキングを有効にする必要はありません。詳細については、「TCP ストリームの前処理の使用」および 「UDP ストリームの前処理の使用」を参照してください。
DNS プリプロセッサは、ミッドストリームで検出された TCP セッションを検査せず、ドロップされたパケットが原因でセッションの状態が失われるとインスペクションを終了します。
DNS プリプロセッサに設定する一般的なポートは、ウェルノウン ポート 53 です。これは、DNS ネーム サーバが UDP および TCP の両方で DNS メッセージに使用するポートです。
RData テキスト フィールドに対するオーバーフローの試行の検出
ライセンス:Protection
リソース レコード タイプが TXT(テキスト)の場合、[RData] フィールドは、可変長の ASCII テキスト フィールドです。
DNS プリプロセッサの [Detect Overflow attempts on RData Text fields] オプションが選択されている場合、MITRE の Current Vulnerabilities and Exposures データベースの CVE-2006-3441 項目で指定されている特定の脆弱性が検出されます。これは、Microsoft Windows 2000 Service Pack 4、Windows XP Service Pack 1 および Service Pack 2、Windows Server 2003 Service Pack 1 の既知の脆弱性です。攻撃者はこの脆弱性を悪用して、[RData] テキスト フィールドの長さの誤算を引き起こし、結果としてバッファ オーバーフローを発生させるよう悪意をもって作られたネーム サーバ応答をホストに送信するか受信させることで、ホストを完全に制御できます。
アップグレードによってこの脆弱性が修正されていないオペレーティング システムが稼働しているホストがネットワーク内に含まれている可能性がある場合は、この機能を有効にする必要があります。
このオプションのイベントを生成するには、ルール 131:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
古い DNS リソース レコード タイプの検出
ライセンス:Protection
RFC 1035 ではさまざまなリソース レコード タイプが古いタイプとして指定されています。これらは古いレコード タイプであるため、一部のシステムはこれらのレコード タイプに対応しておらず、エクスプロイトの対象となることがあります。このようなレコード タイプを含めるようにネットワークを意図的に設定している場合を除き、通常の DNS 応答でこのようなレコード タイプが検出されることは想定されません。
既知の古いリソース レコード タイプを検出するようにシステムを設定できます。次の表に、これらのレコード タイプとその説明を示します。
表 25-3 古い DNS 応答レコード タイプ
|
|
|
3 |
MD |
メールの宛先 |
4 |
MF |
メールのフォワーダ |
このオプションのイベントを生成するには、ルール 131:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
試験的な DNS リソース レコード タイプの検出
ライセンス:Protection
RFC 1035 ではさまざまなリソース レコード タイプが試験的なタイプとして指定されています。これらは試験的なレコード タイプであるため、一部のシステムはこれらのレコード タイプに対応しておらず、エクスプロイトの対象となることがあります。このようなレコード タイプを含めるようにネットワークを意図的に設定している場合を除き、通常の DNS 応答でこのようなレコード タイプが検出されることは想定されません。
既知の試験的なレコード タイプを検出するようにシステムを設定できます。次の表に、これらのレコード タイプとその説明を示します。
表 25-4 試験的な DNS リソース レコード タイプ
|
|
|
7 |
MB |
メールボックスのドメイン名 |
8 |
MG |
メール グループ メンバー |
9 |
MR |
メール リネーム ドメイン名 |
10 |
NUL |
空白のリソース レコード |
このオプションのイベントを生成するには、ルール 131:2 を有効にします。詳細については、「ルール状態の設定」を参照してください。
DNS プリプロセッサの設定
ライセンス:Protection
DNS プリプロセッサを設定するには、次の手順に従います。このページのオプションの設定の詳細については、「RData テキスト フィールドに対するオーバーフローの試行の検出」、「古い DNS リソース レコード タイプの検出」、および 「試験的な DNS リソース レコード タイプの検出」を参照してください。
DNS プリプロセッサを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [DNS Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[DNS Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 オプションで、[Settings] エリアに表示されている次の項目のいずれかを変更できます。
• [Ports] フィールドに、DNS プリプロセッサが DNS サーバ応答をモニタする 1 つ以上の送信元ポートを指定します。複数のポートを指定する場合は、カンマで区切ります。
• RData テキスト フィールドでのバッファ オーバーフロー試行の検出を有効にするには、[Detect Overflow Attempts on RData Text fields] チェック ボックスをオンにします。
• 古いリソース レコード タイプを検出できるようにするには、[Detect Obsolete DNS RR Types] チェック ボックスをオンにします。
• 試験的なリソース レコード タイプを検出できるようにするには、[Detect Experimental DNS RR Types] チェック ボックスをオンにします。
ステップ 6 オプションで、ページの上部にある [Configure Rules for DNS Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [DNS Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
FTP および Telnet トラフィックのデコード
ライセンス:Protection
FTP/Telnet デコーダは FTP および Telnet データ ストリームを分析して、ルール エンジンによる処理の前に FTP および Telnet コマンドを正規化します。
FTP/Telnet デコーダを使用するときは、次の点に注意してください。
• FTP/Telnet デコーダは TCP ストリームの前処理を必要とします。TCP ストリームの前処理が無効になっている場合にプリプロセッサを有効にすると、ポリシーの保存時に、TCP ストリームの前処理を有効にするかどうかを尋ねられます。詳細については、「詳細設定の自動有効化」および 「TCP ストリームの前処理の使用」を参照してください。
• ジェネレータ ID(GID)125 および 126 の FTP および Telnet プリプロセッサ ルールを使用してイベントを生成する場合は、これらのルールを有効にする必要があります。設定ページのリンクから、侵入ポリシーの [Rules] ページの FTP および Telnet プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
詳細については、次のトピックを参照してください。
• 「グローバル FTP および Telnet オプションについて」
• 「グローバル FTP/Telnet オプションの設定」
• 「Telnet オプションについて」
• 「Telnet オプションの設定」
• 「サーバレベルの FTP オプションについて」
• 「サーバレベルの FTP オプションの設定」
• 「クライアントレベルの FTP オプションについて」
• 「クライアントレベル FTP オプションの設定」
グローバル FTP および Telnet オプションについて
ライセンス:Protection
FTP/Telnet デコーダがパケットのステートフル インスペクションまたはステートレス インスペクションを実行するかどうか、デコーダが暗号化 FTP または Telnet セッションを検出するかどうか、およびデコーダが暗号化データの検出後にデータ ストリームの検査を続行するかどうかを決定するグローバル オプションを設定できます。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Stateful Inspection
選択されている場合、FTP/Telnet デコーダは状態を保存し、各パケットにセッション コンテキストを提供し、再構成されたセッションだけを検査します。選択されていない場合、セッション コンテキストなしで個々のパケットを分析します。
FTP データ転送を検査するには、このオプションを選択する必要があります。
Detect Encrypted Traffic
暗号化 Tenet および FTP セッションを検出します。
このオプションのイベントを生成するには、ルール 125:7 および 126:2 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Continue to Inspect Encrypted Data
プリプロセッサに対し、データ ストリームの暗号化後もデータ ストリームの検査を続行し、最終的にデコードされたデータを検索するように指示します。
グローバル FTP/Telnet オプションの設定
ライセンス:Protection
ステートレスまたはステートフル インスペクションを実行するかどうか、暗号化トラフィックを検出するかどうか、および暗号化されていると判断されたデータ ストリームの暗号化データの検査をデコーダが続行するかどうかを制御するため、FTP/Telnet デコーダのグローバル オプションを設定する必要があります。グローバル設定の詳細については、「グローバル FTP および Telnet オプションについて」を参照してください。
グローバル オプションを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [FTP and Telnet Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[FTP and Telnet Configuration] ページが表示されます。
ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ヒント このページのその他オプションの設定の詳細については、「Telnet オプションの設定」、「サーバレベルの FTP オプションの設定」、および 「クライアントレベル FTP オプションの設定」を参照してください。
ステップ 5 オプションで、[Global Settings] の下に表示されている次の項目のいずれかを変更できます。
• FTP パケットを含む再構成された TCP ストリームを検査するには、[Stateful Inspection] を選択します。再構成されていないパケットだけを検査するには、[Stateful Inspection] をクリアします。
注意 侵入ポリシーで [TCP Stream Configuration] を無効にすると(非推奨)、TCP 層が状態情報を渡さないため、[Stateful Inspection] をここで選択している場合でも、FTP および Telnet 処理が暗黙的にステートレスになります。[TCP Stream Configuration] が有効になっているかどうかを確認するには、ページ左側の [Advanced Settings] を展開します。[TCP Stream Configuration] が [Advance Settings] の下にサブリンクとして表示される場合は、有効になっています。ステートフル インスペクションとストリーム再構成の設定の詳細については、
「TCP ストリームの前処理の使用」および
「TCP ストリームの再アセンブリ」を参照してください。
• 暗号化トラフィックを検出するには、[Detect Encrypted Traffic] を選択します。暗号化トラフィックを無視するには、[Detect Encrypted Traffic] をクリアします。
• 必要に応じて、ストリームが再度復号化され処理可能になる場合に備えて、暗号化後もストリームの検査を続行する場合は、[Continue] を選択します。
ステップ 6 オプションで、ページ上部にある [Configure Rules for FTP and Telnet Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [FTP and Telnet Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
Telnet オプションについて
ライセンス:Protection
FTP/Telnet デコーダによる Telnet コマンドの正規化を有効または無効にし、特定の異常ケースを有効または無効にし、許容可能な Are You There(AYT)攻撃数のしきい値を設定できます。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Ports
Telnet トラフィックを正規化するポートを示します。インターフェイスで、複数のポートをカンマで区切って指定します。
(注) Telnet の [Port] リストに追加するポートは、各 TCP ポリシーで、モニタ対象がクライアント トラフィックまたはサーバ トラフィック、あるいはこの両方のいずれであるかに応じて、該当する TCP 再構成ポートのリストにも追加する必要があります。ただし、追加のトラフィック タイプ(クライアント、サーバ、両方)を再構成すると、リソースの需要が増大します。TCP 再構成ポートの設定の詳細については、「ストリームの再アセンブリのオプションの選択」を参照してください。
Normalize
指定のポートへの Telnet トラフィックを正規化します。
Detect Anomalies
対応する SE(サブネゴシエーション終了)がない Telnet SB(サブネゴシエーション開始)の検出を有効にします。
Telnet がサポートするサブネゴシエーションは、SB(サブネゴシエーション開始)で開始し SE(サブネゴシエーション終了)で終了していなければなりません。しかし、一部の Telnet サーバ実装では、対応する SE のない SB が無視されます。これは、回避事例につながるおそれのある異常な動作です。FTP はコントロール接続で Telnet プロトコルを使用するため、FTP もこの動作の影響を受けます。
この異常が Telnet トラフィックで検出される場合にイベントを生成するにはルール 126:3 を有効にし、FTP コマンド チャネルで検出される場合にイベントを生成するにはルール 125:9 を有効にできます。詳細については、「ルール状態の設定」を参照してください。
Are You There Attack Threshold Number
連続する AYT コマンドの数が指定のしきい値を超えた場合にそのことを検出します。シスコは、AYT しきい値に 20 以下の値を設定することを推奨します。
このオプションのイベントを生成するには、ルール 126:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Telnet オプションの設定
ライセンス:Protection
正規化を有効または無効にし、特定の異常ケースを有効または無効にし、許容可能な Are You There(AYT)攻撃数のしきい値を制御することができます。Telnet オプションの詳細については、「Telnet オプションについて」を参照してください。
Telnet オプションを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [FTP and Telnet Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[FTP and Telnet Configuration] ページが表示されます。
ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ヒント このページのその他オプションの設定の詳細については、「グローバル FTP/Telnet オプションの設定」、「サーバレベルの FTP オプションの設定」、および 「クライアントレベル FTP オプションの設定」を参照してください。
ステップ 5 オプションで、[Telnet Settings] の下の次の項目のいずれかを変更できます。
• [Ports] フィールドに、Telnet トラフィックをデコードする 1 つ以上のポートを指定します。通常、Telnet は TCP ポート 23 に接続します。複数のポートを指定する場合は、カンマで区切ります。
TCP クライアント再構成ポートのリストに、ここに指定するものと同じ一連のポートを追加します。TCP 再構成ポートの設定の詳細については、「TCP ストリームの再アセンブリ」を参照してください。
注意 暗号化トラフィック(SSL)はデコードできないので、ポート 22 (SSH)を追加すると、予想外の結果が生じる可能性があります。
• Telnet 正規化を有効または無効にするには、Telnet プロトコル オプションの [Normalize] チェック ボックスをオンまたはオフにします。
• 異常検出を有効または無効にするには、Telnet プロトコル オプションの [Detect Anomalies] チェック ボックスをオンまたはオフにします。
• 許容する連続 ATY コマンドの数を [Are You There Attack Threshold Number] に指定します。
ヒント シスコは、AYT しきい値としてデフォルト値以下の値を設定することを推奨します。
ステップ 6 オプションで、ページ上部にある [Configure Rules for FTP and Telnet Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [FTP and Telnet Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
サーバレベルの FTP オプションについて
ライセンス:Protection
複数の FTP サーバでデコード オプションを設定できます。作成する各サーバ プロファイルには、トラフィックをモニタするサーバのサーバ IP アドレスとポートが含まれます。検証する FTP コマンドと、特定のサーバで無視する FTP コマンドを指定し、コマンドの最大パラメータ長を設定できます。また、デコーダが特定のコマンドで検証する特定のコマンド構文を設定し、代替最大コマンド パラメータ長を設定することもできます。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Networks
FTP サーバの 1 つ以上の IP アドレスを指定するには、このオプションを使用します。
単一 IP アドレスまたはアドレス ブロック、あるいはこのいずれかまたは両方をカンマで区切ったリストを指定できます。設定できる最大文字数は 1024 文字です。デフォルト プロファイルを含め最大 255 個のプロファイルを設定できます。FireSIGHT システムでの IPv4 および IPv6 アドレス ブロックの使用については、「IP アドレスの表記法」を参照してください。
デフォルト ポリシーの デフォルト
設定では、別のターゲットベース ポリシーでカバーされていないモニタ対象ネットワーク セグメントのすべての IP アドレスが指定されることに注意してください。したがって、デフォルト ポリシーの IP アドレスまたはアドレス ブロックは指定できず、また指定する必要もありません。また、別のポリシーでこの設定を空白にしたり、 すべて
を表すアドレス表記(0.0.0.0/0 または ::/0)を使用することはできません。
Ports
管理対象デバイスがトラフィックをモニタする FTP サーバのポートを指定するには、このオプションを使用します。インターフェイスで、複数のポートをカンマで区切って指定します。
(注) サーバレベル FTP の [Port] リストに追加するポートは、各 TCP ポリシーで、モニタ対象がクライアント トラフィックまたはサーバ トラフィック、あるいはこの両方のいずれであるかに応じて、該当する TCP 再構成ポートのリストにも追加する必要があります。ただし、追加のトラフィック タイプ(クライアント、サーバ、両方)を再構成すると、リソースの需要が増大します。TCP 再構成ポートの設定の詳細については、「ストリームの再アセンブリのオプションの選択」を参照してください。
File Get Commands
サーバからクライアントにファイルを転送するために使用する FTP コマンドを定義するには、このオプションを使用します。サポートからの指示がない限り、これらの値を変更しないでください。
File Put Commands
クライアントからサーバにファイルを転送するために使用する FTP コマンドを定義するには、このオプションを使用します。サポートからの指示がない限り、これらの値を変更しないでください。
Additional FTP Commands
デコーダが検出するコマンドを追加で指定するには、この行を使用します。複数のコマンドを追加する場合は、コマンドをスペースで区切ってください。
Default Max Parameter Length
代替最大パラメータ長が設定されていないコマンドの最大パラメータ長を検出するには、このオプションを使用します。
このオプションのイベントを生成するには、ルール 125:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Alternate Max Parameter Length
異なる最大パラメータ長を検出するコマンドを指定し、それらのコマンドの最大パラメータ長を指定するには、このオプションを使用します。[Add] をクリックして行を追加し、特定のコマンドで検出する異なる最大パラメータ長を指定します。
Check Commands for String Format Attacks
指定されたコマンドでフォーマット文字列攻撃を検査するには、このオプションを使用します。
このオプションのイベントを生成するには、ルール 125:5 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Command Validity
特定のコマンドの有効な形式を入力するには、このオプションを使用します。FTP 通信の一部として受信したパラメータの構文を検証する FTP コマンド パラメータ検証ステートメントの作成については、「FTP コマンド パラメータ検証ステートメントの作成」を参照してください。[Add] をクリックして、コマンド検証行を追加します。
このオプションのイベントを生成するには、ルール 125:2 および 125:4 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Ignore FTP Transfers
データ転送チャネルで状態インスペクション以外のすべてのインスペクションを無効にして FTP データ転送のパフォーマンスを改善するには、このオプションを使用します。
Detect Telnet Escape Codes within FTP Commands
FTP コマンド チャネルで Telnet コマンドが使用された場合にそのことを検出するには、このオプションを使用します。
このオプションのイベントを生成するには、ルール 125:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Ignore Erase Commands during Normalization
[Detect Telnet Escape Codes within FTP Commands] が選択されている場合に、FTP トラフィックの正規化時に Telnet の文字および行の消去コマンドを無視するには、このオプションを使用します。この設定は、FTP サーバによる Telnet 消去コマンドの処理方法と一致する必要があります。一般に、新しい FTP サーバは Telnet 消去コマンドを無視しますが、ほとんどの古いサーバは Telnet 消去コマンドを処理する点に注意してください。
FTP コマンド パラメータ検証ステートメントの作成
ライセンス:Protection
FTP コマンドに対する検証ステートメントを設定するときには、複数の代替パラメータをスペースで区切って指定できます。2 つのパラメータ間にバイナリ OR 関係を作成するには、検証ステートメントでこの 2 つのパラメータをパイプ文字( |
)で区切って指定します。パラメータを大カッコ( []
)で囲むと、これらのパラメータがオプションであることを示します。パラメータを中カッコ( {}
)で囲むと、これらのパラメータが必須であることを示します。
FTP 通信の一部として受信したパラメータの構文を検証する FTP コマンド パラメータ検証ステートメントを作成できます。詳細については、「サーバレベルの FTP オプションについて」を参照してください。
FTP コマンド パラメータ検証ステートメントに使用できるパラメータを次の表に示します。
表 25-5 FTP コマンド パラメータ
|
|
int |
示されるパラメータが整数である必要があります。 |
number |
示されるパラメータが1 ~ 255 の範囲内の整数である必要があります。 |
char _chars |
示されるパラメータが単一文字であり、かつ _chars 引数に指定した文字の 1 つである必要があります。 たとえば、検証引数 char SBC を使用して MODE のコマンド検証を定義すると、 MODE コマンドのパラメータが、文字 S (Stream モードを示す)、文字 B (Block モードを示す)、または文字 C (Compressed モードを示す)を含んでいるかどうかが検証されます。 |
date _datefmt |
_datefmt に # が含まれている場合、示されるパラメータは数値である必要があります。 _datefmt に C が含まれている場合、示されるパラメータは文字である必要があります。 _datefmt にリテラル文字列が含まれている場合、示されるパラメータはリテラル文字列に一致している必要があります。 |
string |
示されるパラメータが文字列である必要があります。 |
host_port |
示されるパラメータは、RFC 959(Network Working Group による File Transfer Protocol 仕様)で定義されている有効なホスト ポート指定子である必要があります。 |
上記の表の構文を必要に応じて組み合わせることにより、トラフィックを検証する必要がある各 FTP コマンドを正しく検証するパラメータ検証ステートメントを作成できます。
注 TYPE コマンドに複合式を含める場合は、式をスペースで囲んでください。また、式内の各オペランドをスペースで囲んでください。たとえば、char A|B
ではなく char A | B
と入力します。
サーバレベルの FTP オプションの設定
ライセンス:Protection
サーバ レベルでさまざまなオプションを設定できます。追加する FTP サーバごとに、モニタ対象のポート、検証対象のコマンド、コマンドのデフォルト最大パラメータ長、特定のコマンドの代替パラメータ長、および特定のコマンドの検証構文を指定できます。また、FTP チャネルでフォーマット文字列攻撃や Telnet コマンドを調べるかどうか、および各コマンドの設定情報を出力するかどうかを選択できます。サーバレベルの FTP オプションの詳細については、「サーバレベルの FTP オプションについて」を参照してください。
サーバレベルの FTP オプションを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [FTP and Telnet Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[FTP and Telnet Configuration] ページが表示されます。
ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ヒント このページのその他オプションの設定の詳細については、「グローバル FTP/Telnet オプションの設定」、「Telnet オプションの設定」、および 「クライアントレベル FTP オプションの設定」を参照してください。
ステップ 5 次の 2 つのオプションから選択できます。
• 新しいサーバ プロファイルを追加します。ページの左側で [FTP Server] の横にある追加アイコン( )をクリックします。[Add Target] ポップアップ ウィンドウが表示されます。クライアントの 1 つ以上の IP アドレスを [Server Address] フィールドに指定し、[OK] をクリックします。
単一の IP アドレスまたはアドレス ブロック、あるいはこれらのいずれかまたは両方をコンマで区切ったリストを指定できます。指定できる最大文字数は 1024 文字です。デフォルト ポリシーを含め最大 255 個のポリシーを設定できます。FireSIGHT システムでの IPv4 および IPv6 アドレス ブロックの使用については、「IP アドレスの表記法」を参照してください。
ページの左側の FTP サーバ リストに新しい項目が表示され、選択されていることを示すために強調表示されます。[Configuration] セクションが更新され、追加したプロフィールの現行設定が反映されます。
• 既存のサーバ プロファイルの設定を変更します。ページ左側の [FTP Server] の下で追加したプロファイルの設定済みアドレスをクリックするか、または [default] をクリックします。
選択した項目が強調表示され、[Configuration] セクションが更新され、選択したプロファイルの現行設定が表示されます。既存のプロファイルを削除するには、削除するプロファイルの横にある削除アイコン( )をクリックします。
ステップ 6 オプションで、[Configuration] の下に表示されている次の項目のいずれかを変更できます。
• [Networks] フィールドにリストされているアドレスを変更し、ページの他の領域をクリックします。
ページの左側で、強調表示されているアドレスが更新されます。
デフォルト プロファイルでは [Network] の設定を変更できないことに注意してください。デフォルト プロファイルは、別のプロファイルで指定されていないネットワーク上のすべてのサーバに適用されます。
• FTP トラフィックをモニタするポートを指定します。ポート 21 は FTP トラフィック用のウェルノウン ポートです。
注 TCP クライアント再構成ポートのリストに、ここに指定するものと同じ一連のポートを追加します。TCP 再構成ポートの設定の詳細については、「TCP ストリームの再アセンブリ」を参照してください。
• [File Get Commands] フィールドで、サーバからクライアントにファイルを転送するために使用される FTP コマンドを更新します。
• [File Put Commands] フィールドで、クライアントからサーバにファイルを転送するために使用される FTP コマンドを更新します。
注 サポートからの指示がない限り、[File Get Commands] フィールドと [File Put Commands] フィールドの値は変更しないでください。
• FTP/Telnet プリプロセッサによりデフォルトで検査される FTP コマンド以外に、追加の FTP コマンドを検出するには、[Additional FTP Commands] フィールドに、コマンドをスペースで区切って入力します。
追加 FTP コマンドは、必要な数だけ追加できます。
注 追加できるコマンドには、XPWD
、XCWD
、XCUP
、XMKD
、XRMD
があります。これらのコマンドの詳細については、RFC 775(Network Working Group によるディレクトリに基づく FTP コマンドの仕様)を参照してください。
• [Default Max Parameter Length] フィールドに、コマンド パラメータの最大長をバイト数で指定します。
• 特定のコマンドで異なる最大パラメータ長を検出するには、[Alternate Max Parameter Length] の横の [Add] をクリックします。表示される行の最初のテキスト ボックスに、最大パラメータ長を指定します。2 番目のテキスト ボックスに、この代替最大パラメータ長を適用するコマンドをスペースで区切って指定します。
代替最大パラメータ長は、必要な数だけ追加できます。
• 特定のコマンドでフォーマット文字列攻撃を検査するには、[Check Commands for String Format Attacks] テキスト ボックスにコマンドをスペースで区切って指定します。
• コマンドの有効な形式を指定するには、[Command Validity] の横の [Add] をクリックします。検証対象のコマンドを指定してから、コマンド パラメータの検証ステートメントを入力します。検証ステートメントの構文の詳細については、「サーバレベルの FTP オプションについて」を参照してください。
• データ転送チャネルで状態インスペクション以外のすべてのインスペクションを無効にして、FTP データ転送のパフォーマンスを改善するには、[Ignore FTP Transfers] を有効にします。
注 データ転送を検査するには、グローバル FTP/Telnet オプション [Stateful Inspection] を選択する必要があります。グローバル オプションの設定の詳細については、「グローバル FTP および Telnet オプションについて」を参照してください。
• Telnet コマンドが FTP コマンド チャネルで使用された場合にそのことを検出するには、[Detect Telnet Escape Codes within FTP Commands] を選択します。
• FTP トラフィックの正規化時に Telnet の文字消去コマンドおよび行消去コマンドを無視するには、[Ignore Erase Commands during Normalization] を有効にします。
ステップ 7 オプションで、ページ上部にある [Configure Rules for FTP and Telnet Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [FTP and Telnet Configuration] ページに戻ります。
ステップ 8 サポートから指示された場合にのみ、オプションで、関連するトラブルシューティング オプションを変更します。そのためには、[Troubleshooting] オプションの横にある [+] 記号をクリックします。詳細については、「トラブルシューティング オプションについて」を参照してください。
ステップ 9 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
クライアントレベルの FTP オプションについて
ライセンス:Protection
FTP クライアントのプロファイルを作成できます。各プロファイル内で、クライアントからの FTP 応答の最大応答長を指定できます。また、デコーダが特定のクライアントの FTP コマンド チャネルでのバウンス攻撃と telnet コマンドの使用を検出するかどうかを設定できます。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Networks
FTP クライアントの 1 つ以上の IP アドレスを指定するには、このオプションを使用します。
単一 IP アドレスまたはアドレス ブロック、あるいはこのいずれかまたは両方をカンマで区切ったリストを指定できます。指定できる最大文字数は 1024 文字です。デフォルト プロファイルを含め最大 255 個のプロファイルを設定できます。FireSIGHT システムでの IPv4 および IPv6 アドレス ブロックの使用については、「IP アドレスの表記法」を参照してください。
デフォルト ポリシーの デフォルト
設定では、別のターゲットベース ポリシーでカバーされていないモニタ対象ネットワーク セグメントのすべての IP アドレスが指定されることに注意してください。したがって、デフォルト ポリシーの IP アドレスまたはアドレス ブロックは指定できず、また指定する必要もありません。また、別のポリシーでこの設定を空白にしたり、 すべて
を表すアドレス表記(0.0.0.0/0 または ::/0)を使用することはできません。
Max Response Length
FTP クライアントからの応答文字列の最大長を指定するには、このオプションを使用します。
このオプションのイベントを生成するには、ルール 125:6 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect FTP Bounce Attempts
FTP バウンス攻撃を検出するには、このオプションを使用します。
このオプションのイベントを生成するには、ルール 125:8 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Allow FTP Bounce to
FTP PORT コマンドを FTP バウンス攻撃として扱わない追加のホストとそれらのホスト上のポートのリストを設定するには、このオプションを使用します。
Detect Telnet Escape Codes within FTP Commands
FTP コマンド チャネルで Telnet コマンドが使用された場合にそのことを検出するには、このオプションを使用します。
このオプションのイベントを生成するには、ルール 125:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Ignore Erase Commands During Normalization
[Detect Telnet Escape Codes within FTP Commands] が選択されている場合に、FTP トラフィックの正規化時に Telnet の文字および行の消去コマンドを無視するには、このオプションを使用します。この設定は、FTP クライアントによる Telnet 消去コマンドの処理方法に一致している必要があります。一般に、新しい FTP クライアントは Telnet 消去コマンドを無視しますが、ほとんどの古いクライアントは Telnet 消去コマンドを処理する点に注意してください。
クライアントレベル FTP オプションの設定
ライセンス:Protection
クライアントからの FTP トラフィックをモニタするように、FTP クライアントのクライアント プロファイルを設定できます。クライアントをモニタするために設定できるオプションの詳細については、「クライアントレベルの FTP オプションについて」を参照してください。Telnet オプションの詳細については、「Telnet オプションについて」を参照してください。その他の FTP オプションの詳細については、「サーバレベルの FTP オプションについて」および 「グローバル FTP および Telnet オプションについて」を参照してください。
クライアントレベルの FTP オプションを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [FTP and Telnet Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[FTP and Telnet Configuration] ページが表示されます。
ステップ 5 次の 2 つのオプションから選択できます。
• 新しいクライアント プロファイルを追加します。ページの左側で [FTP Client] の横にある追加アイコン( )をクリックします。[Add Target] ポップアップ ウィンドウが表示されます。クライアントの 1 つ以上の IP アドレスを [Client Address] フィールドに指定し、[OK] をクリックします。
単一の IP アドレスまたはアドレス ブロック、あるいはこれらのいずれかまたは両方をコンマで区切ったリストを指定できます。指定できる最大文字数は 1024 文字です。デフォルト ポリシーを含め最大 255 個のポリシーを設定できます。FireSIGHT システムでの IPv4 および IPv6 アドレス ブロックの使用については、「IP アドレスの表記法」を参照してください。
ページの左側の FTP クライアント リストに新しい項目が表示され、選択されていることを示すために強調表示されます。[Configuration] セクションが更新され、追加したプロフィールの現行設定が反映されます。
• 既存のクライアント プロファイルの設定を変更します。ページ左側の [FTP Client] の下で追加したプロファイルの設定済みアドレスをクリックするか、または [default] をクリックします。
選択した項目が強調表示され、[Configuration] セクションが更新され、選択したプロファイルの現行設定が表示されます。既存のプロファイルを削除するには、削除するプロファイルの横にある削除アイコン( )をクリックします。
ステップ 6 オプションで、[Configuration] の下に表示されている次の項目のいずれかを変更できます。
• オプションで、[Networks] フィールドにリストされているアドレスを変更し、ページの他の領域をクリックします。
ページの左側で、強調表示されているアドレスが更新されます。
デフォルト プロファイルでは [Network] の設定を変更できないことに注意してください。デフォルト プロファイルは、別のプロファイルで指定されていないネットワーク上のすべてのクライアント ホストに適用されます。
• [Max Response Length] フィールドに、FTP クライアントからの応答の最大長をバイト単位で指定します。
• FTP バウンス攻撃を検出するには、[FTP ] を選択します。
FTP/Telnet デコーダは、FTP PORT コマンドが発行されたとき、指定のホストがクライアントの指定のホストと一致しない場合にそのことを検出します。
• FTP PORT コマンドを FTP バウンス攻撃として扱わない追加のホストとポートのリストを設定するには、[Allow FTP Bounce to] フィールドに、各ホスト(または CIDR 形式のネットワーク)、コロン(:)、およびポートまたはポート範囲をこの順序で指定します。ホストのポート範囲を入力するには、範囲の開始ポートと範囲の最終ポートをダッシュ(-)でつなげて表します。複数のホストを入力するには、ホスト項目をカンマで区切って入力します。
たとえば、ホスト 192.168.1.1 に対する FTP PORT コマンドをポート 21 で許可し、ホスト 192.168.1.2 に対するコマンドをポート 22 ~ 1024 のいずれかで許可するには、次のように入力します。
192.168.1.1:21, 192.168.1.2:22-1024
FireSIGHT システムでの CIDR 表記とプレフィクス長の使用法については、「IP アドレスの表記法」を参照してください。
注 1 つのホストの個々の複数のポートを指定するには、ポート定義ごとにホストの IP アドレスを繰り返す必要があります。たとえば、192.168.1.1 のポート 22 と 25 を指定するには、192.168.1.1:22, 192.168.1.1:25
と入力します。
• Telnet コマンドが FTP コマンド チャネルで使用された場合にそのことを検出するには、[Detect Telnet Escape Codes within FTP Commands] を選択します。
• FTP トラフィックの正規化時に Telnet の文字消去コマンドおよび行消去コマンドを無視するには、[Ignore Erase Commands During Normalization] を選択します。
ステップ 7 オプションで、ページ上部にある [Configure Rules for FTP and Telnet Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [FTP and Telnet Configuration] ページに戻ります。
ステップ 8 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
HTTP トラフィックのデコード
ライセンス:Protection
HTTP Inspect プリプロセッサは、次の処理を行います。
• ネットワーク上の Web サーバに送信される HTTP 要求と Web サーバから受信する HTTP 応答をデコードおよび正規化する。
• HTTP 関連の侵入ルールのパフォーマンス向上のため、Web サーバに送信されたメッセージを URI、非 cookie の見出し、cookie 見出し、メソッド、メッセージ ボディの各コンポーネントに分ける。
• HTTP 関連の侵入ルールのパフォーマンス向上のため、Web サーバから受信したメッセージをステータス コード、ステータス メッセージ、非 set-cookie 見出し、cookie 見出し、および応答ボディの各コンポーネントに分ける。
• URI エンコード攻撃の可能性を検出する。
• 正規化データを追加ルール処理に使用できるようにする。
HTTP トラフィックはさまざまな形式でエンコードされている可能性があり、このことが、ルールによる適切な検査の実施を困難にしています。HTTP Inspect は 14 種類のエンコードをデコードし、HTTP トラフィックが最良のインスペクションを受けられるようにします。
HTTP Inspect のオプションは、グローバルに設定するか、1 つのサーバで設定するか、またはサーバ リストに対して設定することができます。
HTTP Inspect プリプロセッサを使用するときは、次の点に注意してください。
• プリプロセッサ エンジンは HTTP の正規化を ステートレス に実行します。つまり、パケット単位で HTTP 文字列を正規化し、TCP ストリーム プリプロセッサにより再構成された HTTP 文字列のみを処理できます。
HTTP Inspect プリプロセッサは TCP ストリームの前処理を必要とします。TCP ストリームの前処理が無効になっている場合にプリプロセッサを有効にすると、ポリシーの保存時に、TCP ストリームの前処理を有効にするかどうかを尋ねられます。詳細については、「詳細設定の自動有効化」および 「TCP ストリームの前処理の使用」を参照してください。
• ジェネレータ ID(GID)119 の HTTP プリプロセッサ ルールを使用してイベントを生成する場合は、これらのルールを有効にする必要があります。設定ページのリンクから、侵入ポリシーの [Rules] ページの HTTP プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
• このプリプロセッサを必要とするルールが、このプリプロセッサが無効にされている侵入ポリシーで有効になっている場合は、そのポリシーを保存する前に、このプリプロセッサを有効にするか、またはシステムが自動的にこのプリプロセッサを有効にできるように許可する必要があります。詳細については、「詳細設定の自動有効化」を参照してください。
詳細については、次の項を参照してください。
• 「グローバル HTTP 正規化オプションの選択」
• 「グローバル HTTP 設定オプションの設定」
• 「サーバレベル HTTP 正規化オプションの選択」
• 「サーバレベル HTTP 正規化エンコード オプションの選択」
• 「HTTP サーバ オプションの設定」
• 「追加の HTTP Inspect プリプロセッサ ルールの有効化」
グローバル HTTP 正規化オプションの選択
ライセンス:Protection
HTTP Inspect プリプロセッサのグローバル HTTP オプションは、プリプロセッサの機能を制御します。Web サーバ ポートとして指定されていないポートが HTTP トラフィックを受信する場合の HTTP 正規化を有効または無効にするには、このオプションを使用します。
次の点に注意してください。
• [Unlimited Decompression] を有効にすると、変更のコミット時に [Maximum Compressed Data Depth] および [Maximum Decompressed Data Depth] オプションが自動的に 65535 に設定されます。詳細については、「サーバレベル HTTP 正規化オプションの選択」を参照してください。
• アクセス コントロール ポリシーのデフォルト アクションに関連付けられている侵入ポリシーと、アクセス コントロール ルールに関連付けられている侵入ポリシーで、[Maximum Compressed Data Depth] と [Maximum Decompressed Data Depth] オプションの値が異なる場合は、最も大きな値が使用されます。詳細については、「デフォルト アクションの設定」および 「許可されたトラフィックに対するファイル インスペクションと侵入インスペクションの実行」を参照してください。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Detect Anomalous HTTP Servers
Web サーバ ポートとして指定されていないポートに送信された HTTP トラフィックまたはこのポートで受信した HTTP トラフィックを検出します。
(注) このオプションをオンにする場合は、[HTTP Configuration] ページで、HTTP トラフィックを受信するすべてのポートがサーバ プロファイルにリストされていることを確認してください。確認せずにこのオプションと関連するプリプロセッサ ルールを有効にすると、サーバとの間の通常のトラフィックによってイベントが生成されます。デフォルトのサーバ プロファイルには、HTTP トラフィックに一般に使用されるすべてのポートが含まれていますが、このプロファイルを変更した場合は、イベントの生成を防ぐために別のプロファイルにそれらのポートを追加する必要があります。
このオプションのイベントを生成するには、ルール 120:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect HTTP Proxy Servers
[Allow HTTP Proxy Use] オプションで定義されていないプロキシ サーバを使用する HTTP トラフィックを検出します。
このオプションのイベントを生成するには、ルール 119:17 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Maximum Compressed Data Depth
[Inspect Compressed Data] が有効である場合、圧縮解除する圧縮ファイルの最大サイズを設定します。指定できるバイト数は 1 ~ 65535 です。
Maximum Decompressed Data Depth
[Inspect Compressed Data] が有効である場合、正規化された圧縮解除データの最大サイズを設定します。指定できるバイト数は 1 ~ 65535 です。
グローバル HTTP 設定オプションの設定
ライセンス:Protection
非標準ポートへの HTTP トラフィックとプロキシ サーバを使用する HTTP トラフィックの検出を設定できます。グローバル HTTP 設定オプションの詳細については、「グローバル HTTP 正規化オプションの選択」を参照してください。
グローバル HTTP 設定オプションを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [HTTP Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[HTTP Configuration] ページが表示されます。
ステップ 5 「グローバル HTTP 正規化オプションの選択」で説明するグローバル オプションを変更できます。
ステップ 6 オプションで、ページの上部にある [Configure Rules for HTTP Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [HTTP Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
サーバレベル HTTP 正規化オプションの選択
ライセンス:Protection
サーバレベルのオプションは、モニタ対象サーバごとに設定するか、すべてのサーバに対してグローバルに設定するか、またはサーバ リストに対して設定することができます。また、事前定義のサーバ プロファイルを使用してこれらのオプションを設定するか、またはご使用の環境のニーズに合わせて個別に設定することができます。これらのオプション、またはこれらのオプションを設定するデフォルト プロファイルの 1 つを使用して、トラフィックを正規化する HTTP サーバ ポート、正規化するサーバ応答ペイロードの量、および正規化するエンコードのタイプを指定します。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Networks
1 つ以上のサーバの IP アドレスを指定するには、このオプションを使用します。
プロファイルの合計数はデフォルト プロファイルを含めて 255 までであることに加え、HTTP サーバ リストに指定できる文字数は496 文字(項目にして約 26 個分)まで、またすべてのサーバ プロファイルに対して指定できるアドレス項目の合計数は 256 個までであることに注意してください。FireSIGHT システムでの IPv4 CIDR 表記と IPv6 プレフィクス長の使用法については、「IP アドレスの表記法」を参照してください。
デフォルト ポリシーの デフォルト
設定では、別のターゲットベース ポリシーでカバーされていないモニタ対象ネットワーク セグメントのすべての IP アドレスが指定されることに注意してください。したがって、デフォルト ポリシーの IP アドレスまたは CIDR ブロック/プレフィクス長は指定できず、また指定する必要もありません。また、別のポリシーでこの設定を空白にしたり、 すべて
を表すアドレス表記(0.0.0.0/0 または ::/0)を使用したりすることはできません。
Ports
プリプロセッサ エンジンが HTTP トラフィックを正規化するポート。複数のポート番号を指定する場合は、カンマで区切ります。
(注) HTTP の [Port] リストに追加するポートは、各 TCP ポリシーで、モニタ対象がクライアント トラフィックまたはサーバ トラフィック、あるいはこの両方のいずれであるかに応じて、該当する TCP 再構成ポートのリストにも追加する必要があります。ただし、追加のトラフィック タイプ(クライアント、サーバ、両方)を再構成すると、リソースの需要が増大します。TCP 再構成ポートの設定の詳細については、「ストリームの再アセンブリのオプションの選択」を参照してください。
Oversize Dir Length
指定された値よりも長い URL ディレクトリを検出します。
このオプションのイベントを生成するには、ルール 119:15 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Client Flow Depth
[Ports] で定義されているクライアント側 HTTP トラフィックで、ルールにより検査される raw HTTP パケットのバイト数(見出しとペイロード データを含む)を指定します。ルール内の HTTP コンテンツ ルール オプションによって要求メッセージの特定の部分が検査される場合は、[Client Flow Depth] は適用されません。詳細については、「HTTP コンテンツ オプション」を参照してください。
-1 ~ 1460 の値を指定できます。シスコは、[Client Flow Depth] をその最大値に設定することを推奨しています。次のいずれかを指定します。
– 1 ~ 1460 を指定すると、最初のパケットで指定のバイト数が検査されます。最初のパケットのバイト数が指定のバイト数よりも少ない場合は、パケット全体が検査されます。指定された値は、セグメント化されたパケットと再構成されたパケットの両方に適用されることに注意してください。
また、値 300 を指定すると、通常は、多くのクライアント要求見出しの終わりにある大きな HTTP Cookie のインスペクションが排除されることにも注意してください。
– 0 を指定すると、すべてのクライアント側トラフィックが検査されます。これにはセッション内の複数のパケットが含まれ、必要な場合には 1460 バイトの制限を超えることもあります。この値はパフォーマンスに影響する可能性があることに注意してください。
– -1 を指定すると、クライアント側のすべてのトラフィックが無視されます。
Server Flow Depth
[Ports] で指定されたサーバ側 HTTP トラフィックで、ルールにより検査される raw HTTP パケットのバイト数を指定します。[Inspect HTTP Responses] が無効である場合は raw 見出しとペイロードが検査され、[Inspect HTTP Response] が有効である場合は、raw 応答ボディのみが検査されます。
Server Flow Depth は、[Ports] で定義されているサーバ側 HTTP トラフィックで、ルールにより検査されるセッション内の raw サーバ応答データのバイト数を指定します。このオプションを使用して、HTTP サーバ応答データのインスペクションのレベルとパフォーマンスのバランスを調整できます。ルール内の HTTP コンテンツ オプションによって要求メッセージの特定の部分が検査される場合は、Server Flow Depth は適用されません。詳細については、「HTTP コンテンツ オプション」を参照してください。
Client Flow Depth とは異なり、Server Flow Depth では、ルールが検査するバイト数を、HTTP 要求パケットごとではなく、HTTP 応答ごとのバイト数として指定します。
-1 ~ 65535 の値を指定できます。シスコは、[Server Flow Depth] をその最大値に設定することを推奨しています。次のいずれかの値を指定できます。
– 1 ~ 65535 の範囲の値:
[Inspect HTTP Responses] が 有効 である場合、raw HTTP 応答ボディのみが検査され、raw HTTP 見出しは検査されません。また、[Inspect Compressed Data] が有効である場合は、圧縮解除データも検査されます。
[Inspect HTTP Responses] が 無効 である場合、raw パケット 見出しとペイロードが検査されます。
セッションの応答バイト数が指定の値よりも少ない場合は、そのセッションで、ルールにより(必要に応じて複数パケットにわたって)すべての応答パケットが完全に検査されます。セッションの応答バイト数が指定の値よりも多い場合、そのセッションで、ルールにより(必要に応じて複数パケットにわたって)指定のバイト数だけが検査されます。
Flow Depth の値が小さい場合、[Ports] で定義されているサーバ側トラフィックを対象とするルールで、検出漏れが発生する可能性があります。これらのルールのほとんどは HTTP 見出しまたはコンテンツ(これは多くの場合非見出し データの先頭の約 100 バイト内にあります)を対象とします。通常見出しの長さは 300 バイト未満ですが、見出し サイズは異なることがあります。
指定された値は、セグメント化されたパケットと再構成されたパケットの両方に適用されることにも注意してください。
– 0 を指定すると、[Port] で定義されているすべての HTTP サーバ側トラフィックでパケット全体が検査されます。これにはセッションでの 65535 バイトよりも大きな応答データも含まれます。
この値はパフォーマンスに影響する可能性があることに注意してください。
– -1:
[Inspect HTTP Responses] が 有効 な場合、raw HTTP 見出しだけが検査され、raw HTTP 応答ボディは検査されません。
[Inspect HTTP Responses] が 無効 である場合、[Ports] で定義されているすべてのサーバ側トラフィックは無視されます。
Maximum Header Length
[Inspect HTTP Responses] が有効である場合は、HTTP 要求、および HTTP 応答で、指定されている最大バイト数よりも長い見出し フィールドを検出します。値 0 を指定すると、このオプションが無効になります。有効にするには、1 ~ 65535 の値を指定します。
このオプションのイベントを生成するには、ルール 119:19 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Maximum Number of Headers
HTTP 要求で見出し数がこの設定を超えている場合にそのことを検出します。有効にするには、1 ~ 1024 の値を指定します。
このオプションのイベントを生成するには、ルール 119:20 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Maximum Number of Spaces
折りたたみ行のスペースの数が HTTP 要求のこの設定と等しいか、超えている場合にそのことを検出します。値 0 を指定すると、このオプションが無効になります。有効にするには、1 ~ 65535 の値を指定します。
このオプションのイベントを生成するには、ルール 119:26 を有効にします。詳細については、「ルール状態の設定」を参照してください。
HTTP Client Body Extraction Depth
HTTP クライアント要求のメッセージ ボディから抽出するバイト数を指定します。侵入ルールを使用して抽出データを検査するには、 content
キーワードを [HTTP Client Body] オプションと共に選択します。詳細については、「HTTP コンテンツ オプション」を参照してください。
-1 ~ 65495 の値を指定します。クライアント ボディを無視するには、 -1 を指定します。クライアント ボディ全体を抽出するには、0 を指定します。抽出対象のバイト数を指定すると、システム パフォーマンスが向上することがある点に注意してください。また、侵入ルールで [HTTP Client Body] オプションが機能するためには、0 ~ 65495 の値を指定する必要があります。
Small Chunk Size
チャンクが小さいとみなされるサイズの最大バイト数を指定します。1 ~ 255 の値を指定します。値 0 を指定すると、異常な小さなセグメントの連続の検出が無効になります。詳細については、[Consecutive Small Chunks] オプションを参照してください。
Consecutive Small Chunks
チャンク転送エンコードを使用するクライアント トラフィックまたはサーバ トラフィックで異常に大量であるとみなされる、連続する小さなチャンクの数を指定します。[Small Chunk Size] オプションは、小さなチャンクの最大サイズを指定します。
たとえば、10 バイト以下のチャンクが 5 つ連続していることを検出するには、[Small Chunk Size] に 10 を設定し、[Consecutive Small Chunks] に 5 を設定します。
大量の小さなチャンクが検出される場合にイベントをトリガーするには、クライアント トラフィックの場合はプリプロセッサ ルール 119:27 を有効にし、サーバ トラフィックの場合はルール 120:7 を有効にします。[Small Chunk Size] が有効であり、このオプションが 0 または 1 に設定されている場合にこれらのルールを有効にすると、指定されたサイズ以下のすべてのチャンクでイベントがトリガーとして使用されます。詳細については、「ルール状態の設定」を参照してください。
HTTP メソッド
システムがトラフィックで検出すると予期される、GET および POST 以外の HTTP 要求メソッドを指定します。複数の値はカンマで区切ります。
侵入ルールは、HTTP メソッドのコンテンツを検索するため、 content
キーワードをその HTTP Method 引数で使用します。「HTTP コンテンツ オプション」を参照してください。 GET、POST、およびこのオプションで設定されているメソッド以外のメソッドがトラフィックで検出される場合にイベントを生成するには、ルール 119:31 を有効にします。
No Alerts
関連するプリプロセッサ ルールが有効である場合に、侵入イベントを無効にします。
(注) このオプションでは、HTTP 標準テキスト ルールと共有オブジェクト ルールは無効になりません。
Normalize HTTP Headers
[Inspect HTTP Responses] が有効である場合は、要求見出しと応答見出しで非 cookie データの正規化が有効になります。[Inspect HTTP Responses] が有効 ではない 場合は、要求見出しと応答見出しで cookie を含む HTTP 見出し全体の正規化が有効になります。
Inspect HTTP Cookies
HTTP 要求見出しからの cookie の抽出を有効にします。また、[Inspect HTTP Responses] が有効である場合は、応答見出しの set-cookie データの抽出も有効になります。cookie の抽出が不要な場合は、このオプションを無効にするとパフォーマンスが向上します。
Cookie:
および Set-Cookie:
の見出し名、見出し行の先頭のスペース、および見出し行の末尾の CRLF
は、cookie の一部ではなく見出しの一部として検査されます。
Normalize Cookies in HTTP headers
HTTP 要求見出しの cookie の正規化を有効にします。[Inspect HTTP Responses] が有効である場合は、応答見出しで set-cookie データの正規化が有効になります。このオプションを選択する前に、[Inspect HTTP Cookies] を選択する必要があります。
Allow HTTP Proxy Use
モニタ対象 Web サーバを HTTP プロキシとして使用できるようにします。このオプションは、HTTP 要求のインスペクションでのみ使用されます。
Inspect URI Only
正規化された HTTP 要求パケットの URI 部分のみを検査します。
Inspect HTTP Responses
HTTP 応答の拡張インスペクションが有効になり、プリプロセッサは、HTTP 要求メッセージのデコードと正規化の他に、ルール エンジンによるインスペクションのために応答フィールドを抽出します。このオプションを有効にすると、応答見出し、ボディ、ステータス コードなどがシステムにより抽出されます。また [Inspect HTTP Cookies] が有効である場合は、set-cookie データも抽出されます。詳細については、「HTTP コンテンツ オプション」、「HTTP エンコードのタイプと位置によるイベントの生成」、「特定のペイロード タイプを指し示す」を参照してください。
このオプションのイベントを生成するには、ルール 120:2 および 120:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Normalize UTF Encodings to UTF-8
[Inspect HTTP Responses] が有効である場合、HTTP 応答で UTF-16LE、UTF-16BE、UTF-32LE、および UTF32-BE エンコードが検出され、UTF-8 に正規化されます。
このオプションのイベントを生成するには、ルール 120:4 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Inspect Compressed Data
[Inspect HTTP Responses] が有効である場合、HTTP 応答ボディでの gzip および deflate 互換圧縮データの圧縮解除と、正規化された圧縮解除データのインスペクションが有効になります。システムは、チャンク HTTP 応答データと非チャンク HTTP 応答データを検査します。システムは、必要に応じて複数のパケットにわたり圧縮解除データをパケット単位で検査します。つまり、システムが異なるパケットの圧縮解除データをインスペクションのために結合させることはありません。[Maximum Compressed Data Depth]、[Maximum Decompressed Data Depth]、または圧縮データの終わりに到達すると、圧縮解除が終了します。[Unlimited Decompression] を選択していない場合は、[Server Flow Depth] に到達すると、圧縮解除データのインスペクションが終了します。圧縮解除データを検査するには、 file_data
ルール キーワードを使用できます。詳細については、「特定のペイロード タイプを指し示す」を参照してください。
Unlimited Decompression
[Inspect Compressed Data] が有効である場合、複数パケットにわたって [Maximum Decompressed Data Depth] がオーバーライドされます。つまり、このオプションにより、複数パケットにわたる無制限の圧縮解除が有効になります。このオプションを有効にしても、単一パケット内での [Maximum Compressed Data Depth] または [Maximum Decompressed Data Depth] には影響しないことに注意してください。また、このオプションを有効にすると、変更のコミット時に、[Maximum Compressed Data Depth] と [Maximum Decompressed Data Depth] が 65535 に設定されることにも注意してください。「グローバル HTTP 正規化オプションの選択」を参照してください。
Normalize Javascript
[Inspect HTTP Responses] が有効な場合、HTTP 応答ボディ内での Javascript の検出と正規化を有効にします。プリプロセッサは unescape 関数や decodeURI 関数、String.fromCharCode メソッドなどの難読化 Javascript データを正規化します。プリプロセッサは、unescap、decodeURI、および decodeURIComponent 関数内の次のエンコードを正規化します。
– %XX
– %uXXXX
– 0xXX
– \xXX
– \uXXXX
プリプロセッサは連続するスペースを検出し、1 つのスペースに正規化します。このオプションが有効である場合、設定フィールドでは、難読化 Javascript データで許容する連続スペースの最大数を指定できます。1 ~ 65535 の値を入力できます。値 0 を指定すると、このフィールドに関連付けられているプリプロセッサ ルール(120:10)が有効かどうかに関係なく、イベントの生成が無効になります。
プリプロセッサは、Javascript の正符号(+)演算子も正規化し、この演算子を使用して文字列を連結します。
file_data
キーワードを使用して、侵入ルールに対し正規化された Javascript データを指し示すことができます。詳細については、「特定のペイロード タイプを指し示す」を参照してください。
このオプションのイベントを生成するには、次に示すように、ルール 120:9、120:10、および 120:11 を有効にします。
表 25-6 Normalize Javascript Option Rules
|
|
120:9 |
プリプロセッサ内の難読化レベルが 2 以上である。 |
120:10 |
Javascript 難読化データで連続するスペースの数が、許容される連続スペースの最大数として設定された値以上である。 |
120:11 |
エスケープされたデータまたはエンコードされたデータに、複数のエンコード タイプが含まれている。 |
詳細については、「ルール状態の設定」を参照してください。
Extract Original Client IP Address
X-Forwarded-For(XFF)見出しまたは True-Client-IP HTTP 見出しから、元のクライアント IP アドレスを抽出できるようにします。侵入イベント テーブル ビューで、抽出された元のクライアント IP アドレスを表示できます。詳細については、「侵入イベントについて」を参照してください。
このオプションのイベントを生成するには、ルール 119:23、119:29、および 119:30 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Log URI
raw URI が存在する場合に、HTTP 要求パケットから raw URI を抽出できるようにし、このセッションで生成されるすべての侵入イベントにこの URI を関連付けます。
このオプションが有効である場合、侵入イベント テーブル ビューの [HTTP URI] 列に、抽出された URI の先頭 50 文字を表示できます。パケット ビューでは、URI 全体(最大 2048 バイト)を表示できます。詳細については、「侵入イベントについて」および 「イベント情報の表示」を参照してください。
Log Hostname
ホスト名が存在する場合に、HTTP 要求の Host 見出しから raw URI を抽出できるようにし、このセッションで生成されるすべての侵入イベントにこのホスト名を関連付けます。複数の Host 見出しがある場合は、1 番目の見出しからホスト名を抽出します。
このオプションが有効である場合、侵入イベント テーブル ビューの [HTTP Hostname] 列に、抽出されたホスト名の先頭 50 文字を表示できます。パケット ビューでは、ホスト名全体(最大 256 バイト)を表示できます。詳細については、「侵入イベントについて」および 「イベント情報の表示」を参照してください。
このオプションのイベントを生成するには、ルール 119:25 を有効にします。詳細については、「ルール状態の設定」を参照してください。
プリプロセッサとルール 119:24 が有効である場合は、HTTP 要求で複数の Host 見出しが検出される場合でも、プリプロセッサはこのオプションの設定に関係なく、侵入イベントを生成することに注意してください。詳細については、「追加の HTTP Inspect プリプロセッサ ルールの有効化」を参照してください。
Profile
HTTP トラフィック向けに正規化されたエンコードのタイプを指定します。システムには、ほとんどのサーバに適用できるデフォルト プロファイル、Apache サーバと IIS サーバ用のデフォルト プロファイル、およびモニタ対象トラフィックのニーズに合わせて調整できるカスタムのデフォルト設定があります。詳細については、「サーバレベル HTTP 正規化エンコード オプションの選択」を参照してください。
サーバレベル HTTP 正規化エンコード オプションの選択
ライセンス:Protection
HTTP トラフィック向けに正規化されているエンコード タイプを指定し、このタイプのエンコードを含むトラフィックに対してシステムがイベントを生成するようにするには、サーバレベルの HTTP 正規化オプションを選択できます。
なお、base36 エンコード タイプは非推奨になりました。base36 オプションは、下位互換性のために既存の侵入ポリシーで許可されていますが、このオプションを使用しても、システムは base36 トラフィックを検出しません。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
ASCII Encoding
エンコードされた ASCII 文字をデコードし、ルール エンジンが ASCII エンコード URI でイベントを生成するかどうかを指定します。
このオプションのイベントを生成するには、ルール 119:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
UTF-8 Encoding
URI の標準 UTF-8 Unicode シーケンスをデコードします。
このオプションのイベントを生成するには、ルール 119:6 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Microsoft %U Encoding
%u とその後に続く 4 文字を使用する IIS %u エンコード スキームをデコードします。この 4 文字は、IIS Unicode コードポイントと相関する 16 進数のエンコード値です。
ヒント 正規のクライアントが %u エンコードを使用することはほとんどないため、シスコは、%u エンコードによってエンコードされている HTTP トラフィックをデコードすることを推奨します。
このオプションのイベントを生成するには、ルール 119:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Bare Byte UTF-8 Encoding
ベア バイト エンコードをデコードします。ベア バイト エンコードは、UTF-8 値のデコード時に非 ASCII 文字を有効な値として使用します。
ヒント ベア バイト エンコードにより、ユーザは IIS サーバをエミュレートし、非標準エンコードを正しく解釈することができます。正規のクライアントはこの方法で UTF-8 をエンコードしないため、 シスコは、このオプションを有効にすることを推奨します。
このオプションのイベントを生成するには、ルール 119:4 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Microsoft IIS Encoding
Unicode コードポイント マッピングを使用してデコードします。
ヒント これは主に攻撃と回避の試行で見られるため、シスコはこのオプションを有効にすることを推奨します。
このオプションのイベントを生成するには、ルール 119:7 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Double Encoding
要求 URI を 2 回通過し、それぞれでデコードを実行するようにすることで、IIS 二重エンコード トラフィックをデコードします。これは通常は攻撃シナリオでのみ検出されるため、 シスコはこのオプションを有効にすることを推奨します。
このオプションのイベントを生成するには、ルール 119:2 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Multi-Slash Obfuscation
1 つの行内の複数のスラッシュを 1 つのスラッシュに正規化します。
このオプションのイベントを生成するには、ルール 119:8 を有効にします。詳細については、「ルール状態の設定」を参照してください。
IIS Backslash Obfuscation
バックスラッシュをスラッシュに正規化します。
このオプションのイベントを生成するには、ルール 119:9 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Directory Traversal
ディレクトリ トラバーサルおよび自己参照用ディレクトリを正規化します。一部の Web サイトはディレクトリ トラバーサルを使用してファイルを参照するため、このタイプのトラフィックに対してイベントを生成するために、関連するプリプロセッサ ルールを有効にすると、誤検出が発生する可能性があります。
このオプションのイベントを生成するには、ルール 119:10 および 119:11 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Tab Obfuscation
スペース区切り記号としてタブを使用する非 RFC 標準を正規化します。Apache やその他の IIS 以外の Web サーバは、URL の区切り文字としてタブ文字(0x09)を使用します。
(注) このオプションの設定に関係なく、空白文字(0x20)がタブの前にある場合、HTTP Inspect プリプロセッサはそのタブをスペースとして扱います。
このオプションのイベントを生成するには、ルール 119:12 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Invalid RFC Delimiter
URI データの改行(\ n)を正規化します。
このオプションのイベントを生成するには、ルール 119:13 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Webroot Directory Traversal
URL の初期ディレクトリを越えて横断するディレクトリ トラバーサルを検出します。
このオプションのイベントを生成するには、ルール 119:18 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Tab URI Delimiter
URI の区切り文字としてタブ文字(0x09)を有効にします。Apache、新しいバージョンの IIS、およびその他の一部の Web サーバは、URL の区切り文字としてタブ文字を使用します。
(注) このオプションの設定に関係なく、空白文字(0x20)がタブの前にある場合、HTTP Inspect プリプロセッサはそのタブをスペースとして扱います。
Non-RFC characters
対応するフィールドに追加する非 RFC 文字リストが、着信または発信 URI データ内に含まれている場合にそれを検出します。このフィールドを変更する場合は、バイト文字を表す 16 進表記を使用します。このオプションを設定する場合は、値を慎重に設定してください。非常に一般的な文字を使用すると、イベントが大量に発生する可能性があります。
このオプションのイベントを生成するには、ルール 119:14 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Max Chunk Encoding Size
URI データで異常に大きなチャンク サイズを検出します。
このオプションのイベントを生成するには、ルール 119:16 および 119:22 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Disable Pipeline Decoding
パイプライン処理された要求の HTTP デコードを無効にします。このオプションが無効である場合、パイプラインで待機する HTTP 要求には、デコードおよび分析は行われず、汎用パターン マッチングを使用した検査のみが行われるため、パフォーマンスが向上します。
Non-Strict URI Parsing
Non-Strict URI 解析を有効にします。このオプションは、「GET /index.html abc xo qr \n」という形式の非標準 URI を受け入れるサーバのみで使用します。このオプションを使用すると、デコーダは URI が 1 番目のスペースと 2 番目のスペースで囲まれているものと想定します。これは、2 番目のスペースの後に有効な HTTP 識別子がない場合でも同様です。
Extended ASCII Encoding
HTTP 要求 URI の拡張 ASCII 文字の解析を有効にします。このオプションは、カスタム サーバ プロファイルでのみ使用可能であり、Apache、IIS、またはすべてのサーバ向けに提供されるデフォルト プロファイルでは使用できないことに注意してください。
HTTP サーバ オプションの設定
ライセンス:Protection
HTTP サーバ オプションを設定するには、次の手順に従います。HTTP サーバ オプションの詳細については、「サーバレベル HTTP 正規化オプションの選択」および 「サーバレベル HTTP 正規化エンコード オプションの選択」を参照してください。
サーバレベルの HTTP 設定オプションを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [HTTP Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[HTTP Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 次の 2 つのオプションから選択できます。
• 新しいサーバ プロファイルを追加します。ページの左側で [Servers] の横にある追加アイコン( )をクリックします。[Add Target] ポップアップ ウィンドウが表示されます。クライアントの 1 つ以上の IP アドレスを [Server Address] フィールドに指定し、[OK] をクリックします。
単一の IP アドレスまたはアドレス ブロック、あるいはこれらのいずれかまたは両方をコンマで区切ったリストを指定できます。リストに入力できる文字数は最大 496 文字、すべてのサーバ プロファイルで指定できるアドレス項目の総数は 256、作成できるプロファイルの総数はデフォルト プロファイルを含めて 255 です。FireSIGHT システムでの IPv4 および IPv6 アドレス ブロックの使用については、「IP アドレスの表記法」を参照してください。
ページの左側のサーバ リストに新しい項目が表示され、選択されていることを示すために強調表示されます。[Configuration] セクションが更新され、追加したプロフィールの現行設定が反映されます。
• 既存のプロファイルの設定を変更します。ページ左側の [Servers] の下で追加したプロファイルの設定済みアドレスをクリックするか、または [default] をクリックします。
選択した項目が強調表示され、[Configuration] セクションが更新され、選択したプロファイルの現行設定が表示されます。既存のプロファイルを削除するには、削除するプロファイルの横にある削除アイコン( )をクリックします。
ステップ 6 オプションで、[Networks] フィールドにリストされているアドレスを変更し、ページの他の領域をクリックします。
ページの左側で、強調表示されているアドレスが更新されます。
デフォルト プロファイルでは [Network] の設定を変更できないことに注意してください。デフォルト プロファイルは、別のプロファイルで指定されていないネットワーク上のすべてのサーバに適用されます。
ステップ 7 [Ports] フィールドに、HTTP Inspect でトラフィックを検査するポートを指定します。複数のポートを指定する場合は、カンマで区切ります。
ステップ 8 「サーバレベル HTTP 正規化オプションの選択」で説明するその他のオプションを変更できます。
ステップ 9 次の手順に従ってサーバ プロファイルを選択します。
• 独自のサーバ プロファイルを作成するには、[Custom] を選択します(詳細については、「サーバレベル HTTP 正規化エンコード オプションの選択」を参照)。
• すべてのサーバに対して適切な標準のデフォルト プロファイルを使用するには、[All] を選択します。
• デフォルトの IIS プロファイルを使用するには、[IIS] を選択します。
• デフォルトの Apache プロファイルを使用するには、[Apache] を選択します。
ステップ 10 [Custom] を選択すると、カスタム オプションが表示されます。
ステップ 11 プロファイルで、使用する HTTP デコード オプションを設定します。
使用可能な正規化オプションの詳細については「サーバレベル HTTP 正規化オプションの選択」、参照してください。
ステップ 12 オプションで、ページの上部にある [Configure Rules for HTTP Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [HTTP Configuration] ページに戻ります。
ステップ 13 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
追加の HTTP Inspect プリプロセッサ ルールの有効化
ライセンス:Protection
特定の設定オプションに関連付けられていない HTTP Inspect プリプロセッサ ルールのイベントを生成するには、次の表の 「プリプロセッサ ルール GID:SID」列のルールを有効にできます。詳細については、「ルール状態の設定」を参照してください。
表 25-7 追加の HTTP Inspect プリプロセッサ ルール
|
|
120:5 |
HTTP 応答トラフィックで UTF-7 エンコードが検出されるとイベントが生成されます。UTF-7 は、SMTP トラフィックなど、7 ビット パリティが必要な場合にだけ使用する必要があります。 |
119:21 |
HTTP 要求見出しに複数の content-length フィールドがある場合に、イベントが生成されます。 |
119:24 |
HTTP 要求に複数の Host 見出しがある場合に、イベントが生成されます。 |
119:28 120:8 |
これらのルールを有効にする場合、イベントは生成されません。 |
119:32 |
トラフィックで HTTP バージョン 0.9 が検出されると、イベントが生成されます。TCP ストリームの設定も有効にする必要があることに注意してください。「TCP ストリームの前処理の使用」を参照してください。 |
119:33 |
エスケープされていないスペースが HTTP URI に含まれている場合に、イベントが生成されます。 |
119:34 |
TCP 接続に 24 以上のパイプライン処理された HTTP 要求が含まれている場合に、イベントが生成されます。 |
Sun RPC プリプロセッサの使用
ライセンス:Protection
RPC(Remote Procedure Call)正規化では、フラグメント化された RPC レコードが 1 つのレコードに正規化されるので、ルール エンジンがそのレコード全体を検査できます。たとえば、攻撃者が RPC admind
が実行されているポートの検出を試行するとします。一部の UNIX ホストは、RPC admind
を使用してリモート分散システム タスクを実行します。ホストが弱い認証を実行する場合、悪意のあるユーザがリモート管理のコントロールを獲得できることがあります。Snort ID(SID)が 575 の標準テキスト ルール(ジェネレータ ID:1)は、この攻撃を検出するために、特定のロケーションでコンテンツを検索し、不適切な portmap GETPORT
要求を特定します。
ポート
トラフィックを正規化するポートを示します。インターフェイスで、複数のポートをカンマで区切って指定します。一般的な RPC ポートは 111 および 32771 です。ネットワークが他のポートに RPC トラフィックを送信する場合は、それらのポートの追加を検討してください。
(注) RPC の [Port] リストに追加するポートは、各 TCP ポリシーで、モニタ対象がクライアント トラフィックまたはサーバ トラフィック、あるいはこの両方のいずれであるかに応じて、該当する TCP 再構成ポートのリストにも追加する必要があります。ただし、追加のトラフィック タイプ(クライアント、サーバ、両方)を再構成すると、リソースの需要が増大します。TCP 再構成ポートの設定の詳細については、「ストリームの再アセンブリのオプションの選択」を参照してください。
Detect fragmented RPC records
RPC フラグメント化レコードを検出します。
このオプションのイベントを生成するには、ルール 106:1 および 106:5 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect multiple records in one packet
パケット(または再構成されたパケット)ごとに、複数の RPC 要求を検出します。
このオプションのイベントを生成するには、ルール 106:2 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect fragmented record sums which exceed one fragment
現在のパケット長を超える再構成されたフラグメント化レコード長を検出します。
このオプションのイベントを生成するには、ルール 106:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect single fragment records which exceed the size of one packet
部分的なレコードを検出します。
このオプションのイベントを生成するには、ルール 106:4 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Sun RPC プリプロセッサの設定
ライセンス:Protection
Sun RPC プリプロセッサを設定するには、次の手順を使用できます。Sun RPC プリプロセッサ設定オプションの詳細については、「Sun RPC プリプロセッサの使用」を参照してください。
Sun RPC プリプロセッサを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [Sun RPC Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[Sun RPC Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 [Ports] フィールドに、RPC トラフィックをデコードするポートの番号を入力します。複数のポートを指定する場合は、カンマで区切ります。
ステップ 6 [Sun RPC Configuration] ページの次の検出オプションを選択またはクリアできます。
• Detect fragmented RPC records
• Detect multiple records in one packet
• Detect fragmented record sums which exceed one packet
• Detect single fragment records which exceed the size of one packet
ステップ 7 オプションで、ページの上部にある [Configure Rules for Sun RPC Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [Sun RPC Configuration] ページに戻ります。
ステップ 8 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
Session Initiation Protocol のデコード
ライセンス:Protection
Session Initiation Protocol(SIP)は、インターネット テレフォニー、マルチメディア会議、インスタント メッセージング、オンライン ゲーム、ファイル転送などのクライアント アプリケーションの 1 人以上のユーザに対し、1 つ以上のセッションのコール設定、変更、およびティアダウンを提供します。各 SIP 要求の method フィールドは要求の目的を示し、Request-URI により要求の送信先が指定されます。各 SIP 応答のステータス コードは、要求されたアクションの結果を示します。
SIP を使用してコールがセットアップされた後、後続の音声およびビデオによる通信は Real-time Transport Protocol(RTP)により処理されます。セッションのこの部分は、コール チャネル、データ チャネル、または音声/ビデオ データ チャネルと呼ばれることがあります。RTP は、データチャネル パラメータ ネゴシエーション、セッション通知、およびセッションへの招待のための SIP メッセージ ボディ内で Session Description Protocol(SDP)を使用します。
SIP プリプロセッサは次の処理を実行します。
• SIP 2.0 トラフィックのデコードおよび分析
• SDP データが存在する場合はこのデータを含む SIP 見出しとメッセージ ボディを抽出し、抽出したデータを今後のインスペクションのためにルール エンジンに受け渡す
• 条件(SIP パケットにおける異常または既知の脆弱性、順序が正しくないコール シーケンス、または無効なコール シーケンス)が検出され、対応するプリプロセッサ ルールが有効である場合にイベントを生成する
• コール チャネルを無視する(オプション)
プリプロセッサは、SIP メッセージ ボディに組み込まれている SDP メッセージに示されているポートに基づいて RTP チャネルを識別しますが、RTP プロトコル インスペクションを実行しません。
SIP プリプロセッサを使用するときは、次の点に注意してください。
• UDP は通常、SIP でサポートされるメディア セッションを伝送します。UDP ストリームの前処理により、SIP プリプロセッサに対し SIP セッション トラッキングが提供されます。SIP プリプロセッサを有効にしてポリシーを保存する前に、UDP セッション トラッキングを有効にしておく必要があります。詳細については、「UDP ストリームの前処理の使用」および 「詳細設定の自動有効化」を参照してください。
• SIP ルール キーワードにより、SIP パケット 見出しまたはメッセージ ボディを指し示し、検出対象を特定の SIP メソッドまたはステータス コードのパケットに限定できます。詳細については、「SIP キーワード」を参照してください。
• 有効である場合、関連するルール(ジェネレータ ID(GID)140)も有効にしていないと、抽出したデータをルール エンジンに送信するまで、プリプロセッサはイベントを生成しません。設定ページのリンクから、侵入ポリシーの [Rules] ページの SIP プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
• このプリプロセッサが無効になっている侵入ポリシーで、このプリプロセッサを必要とする共有オブジェクト ルールまたは標準テキスト ルールが有効になっている場合は、そのポリシーを保存する前に、プリプロセッサを有効にするか、システムが自動的にプリプロセッサを有効にできるように許可する必要があります。詳細については、「詳細設定の自動有効化」を参照してください。
詳細については、次の項を参照してください。
• 「SIP プリプロセッサ オプションの選択」
• 「SIP プリプロセッサの設定」
• 「追加の SIP プリプロセッサ ルールの有効化」
SIP プリプロセッサ オプションの選択
ライセンス:Protection
変更できる SIP プリプロセッサ オプションについて以下で説明します。
[Maximum Request URI Length]、[Maximum Call ID Length]、[Maximum Request Name Length]、[Maximum From Length]、[Maximum To Length]、[Maximum Via Length]、[Maximum Contact Length]、および [Maximum Content Length] オプションでは、1 ~ 65535 バイト、または 0 バイトを指定できます。0 を指定すると、関連するルールが有効であるかかどうかに関係なく、このオプションのイベント生成が無効になります。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Ports
SIP トラフィックを検査するポートを指定します。0 ~ 65535 の整数を指定できます。複数のポート番号を指定する場合は、カンマで区切ります。
Methods to Check
検出する SIP メソッドを指定します。次に示す現在定義されている SIP メソッドを指定できます。
ack, benotify, bye, cancel, do, info, invite, join, message,
notify, options, prack, publish, quath, refer, register,
service, sprack, subscribe, unsubscribe, update
メソッドでは大文字と小文字が区別されません。メソッド名には英字、数字、下線文字を使用できます。その他の特殊文字は使用できません。複数のメソッドを指定する場合は、カンマで区切ります。
新しい SIP メソッドが今後定義される可能性があるため、設定には、現在定義されていない英字文字列を含めることができます。システムでは最大 32 個のメソッド(現在定義されている 21 個のメソッドと追加の 11 個のメソッド)がサポートされます。システムは、設定される未定義のメソッドをすべて無視します。
合計 32 個のメソッドには、このオプションに指定するメソッドの他に、侵入ルールで sip_method
キーワードを使用して指定するメソッドも含まれます。詳細については、「sip_method」を参照してください。
Maximum Dialogs within a Session
ストリーム セッション内で許容されるダイアログの最大数を指定します。この数より多くのダイアログが作成されると、ダイアログの数が、指定されている最大数以下になるまで、最も古いダイアログから順に削除されます。また、ルール 140:27 が有効である場合にもイベントがトリガーとして使用されます。
1 ~ 4194303 の整数を指定できます。
Maximum Request URI Length
[Request-URI] 見出し フィールドで許容される最大バイト数を指定します。ルール 140:3 が有効である場合、URI がこれよりも長いとイベントがトリガーとして使用されます。要求の [URI] フィールドは、要求の宛先のパスまたはページを示します。
Maximum Call ID Length
要求または応答の [Call-ID] 見出し フィールドで許容される最大バイト数を指定します。ルール 140:5 が有効である場合、Call-ID がこれよりも長いとイベントがトリガーとして使用されます。[Call-ID] フィールドは、要求および応答内で SIP セッションを一意に識別します。
Maximum Request Name Length
要求名で許容される最大バイト数を指定します。要求名は、CSeq トランザクション ID に指定されるメソッドの名前です。ルール 140:7 が有効である場合、要求名がこれよりも長いとイベントがとして使用されます。
Maximum From Length
要求または応答の [From] 見出し フィールドで許容される最大バイト数を指定します。ルール 140:9 が有効である場合、From がこれよりも長いとイベントがトリガーとして使用されます。[From] フィールドは、メッセージの発信側を識別します。
Maximum To Length
要求または応答の [To] 見出し フィールドで許容される最大バイト数を指定します。ルール 140:11 が有効である場合、To がこれよりも長いとイベントがトリガーとして使用されます。[To] フィールドは、メッセージの受信側を識別します。
Maximum Via Length
要求または応答の [Via] 見出し フィールドで許容される最大バイト数を指定します。ルール 140:13 が有効である場合、Via がこれよりも長いとイベントがトリガーとして使用されます。[Via] フィールドには要求がたどるパスが示され、応答の場合は受信者情報が示されます。
Maximum Contact Length
要求または応答の [Contact] 見出し フィールドで許容される最大バイト数を指定します。ルール 140:15 が有効である場合、Contact がこれよりも長いとイベントがトリガーとして使用されます。[Contact] フィールドには、後続のメッセージについての連絡先を指定する URI が示されます。
Maximum Content Length
要求または応答のメッセージ ボディのコンテンツで許容される最大バイト数を指定します。ルール 140:16 が有効である場合、コンテンツがこれよりも長いとイベントがトリガーとして使用されます。
Ignore Audio/Video Data Channel
データ チャネル トラフィックのインスペクションを有効または無効にします。このオプションを有効にすると、プリプロセッサはその他の非データ チャネル SIP トラフィックのインスペクションを続行することに注意してください。
SIP プリプロセッサの設定
ライセンス:Protection
SIP プリプロセッサを設定するには、次の手順に従います。
SIP プリプロセッサの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [SIP Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[SIP Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 「SIP プリプロセッサ オプションの選択」で説明するオプションを変更できます。
ステップ 6 オプションで、ページの上部にある [Configure Rules for SIP Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [SIP Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
追加の SIP プリプロセッサ ルールの有効化
ライセンス:Protection
次の表に示す SIP プリプロセッサ ルールは、特定の設定オプションに関連付けられていません。その他の SIP プリプロセッサ ルールと同様に、これらのルールによってイベントを生成する場合は、これらのルールを有効にする必要があります。ルールの有効化については、「ルール状態の設定」を参照してください。
表 25-8 追加の SIP プリプロセッサ ルール
|
|
140:1 |
プリプロセッサがモニタしている SIP セッションの数が、システムで許容される最大数である場合に、イベントが生成されます。 |
140:2 |
SIP 要求で [Request_URI] 必須フィールドが空である場合に、イベントが生成されます。 |
140:4 |
SIP 要求または応答で [Call-ID] 見出し フィールドが空である場合に、イベントが生成されます。 |
140:6 |
SIP 要求または応答で [CSeq] フィールドのシーケンス番号値が、231 未満の 32 ビット符号なし整数ではない場合に、イベントが生成されます。 |
140:8 |
SIP 要求または応答で [From] 見出し フィールドが空である場合に、イベントが生成されます。 |
140:10 |
SIP 要求または応答で [To] 見出し フィールドが空である場合に、イベントが生成されます。 |
140:12 |
SIP 要求または応答で [Via] 見出し フィールドが空である場合に、イベントが生成されます。 |
140:14 |
SIP 要求または応答で [Contact] 必須見出し フィールドが空である場合に、イベントが生成されます。 |
140:17 |
UDP トラフィック内の 1 つの SIP 要求または応答パケットに複数のメッセージが含まれている場合に、イベントが生成されます。SIP の旧バージョンでは複数メッセージがサポートされていますが、SIP 2.0 ではパケットあたり 1 メッセージだけがサポートされていることに注意してください。 |
140:18 |
UDP トラフィック内の SIP 要求または応答のメッセージ ボディの実際の長さが、SIP 要求または応答の [Content-Length] 見出し フィールドに指定されている値と一致しない場合に、イベントが生成されます。 |
140:19 |
プリプロセッサが SIP 応答の [CSeq] フィールドのメソッド名を認識しない場合に、イベントが生成されます。 |
140:20 |
SIP サーバが、認証済み招待メッセージに対してチャレンジを送信しない場合に、イベントが生成されます。これは InviteReplay 請求攻撃の場合に発生することに注意してください。 |
140:21 |
コール セットアップの前にセッション情報が変更されると、イベントが生成されます。これは FakeBusy 請求攻撃の場合に発生することに注意してください。 |
140:22 |
応答ステータス コードが 3 桁の数値ではない場合に、イベントが生成されます。 |
140:23 |
[Content-Type] 見出し フィールドにコンテンツ タイプが指定されておらず、メッセージ ボディにデータが含まれている場合に、イベントが生成されます。 |
140:24 |
SIP バージョンが 1、1.1、または 2.0 のいずれでもない場合に、イベントが生成されます。 |
140:25 |
SIP 要求で、[CSeq] 見出しで指定されたメソッドとメソッド フィールドが一致しない場合に、イベントが生成されます。 |
140:26 |
プリプロセッサが SIP 要求のメソッド フィールドに指定されたメソッドを認識しない場合に、イベントが生成されます。 |
GTP コマンド チャネルの設定
ライセンス:Protection
General Packet Radio Service(GPRS)Tunneling Protocol (GTP)により、GTP コア ネットワークを介した通信が実現します。GTP プリプロセッサは、GTP トラフィックの異常を検出し、コマンド チャネル シグナリング メッセージをインスペクションのためにルール エンジンに転送します。GTP コマンド チャネル トラフィックでエクスプロイトがあるかどうかを検査するには、 gtp_version
、 gtp_type
、および gtp_info
ルール キーワードを使用します。
1 つの構成オプションで、プリプロセッサが GTP コマンド チャネル メッセージを検査するポートのデフォルト設定を変更できます。
GTP プリプロセッサの使用に関する次の情報に注意してください。
• GTP プリプロセッサは、UDP ストリーム設定を必要とします。GTP プリプロセッサを有効にする場合、UDP ストリーム設定が無効になっていると、ポリシーの保存時に UDP ストリーム設定を有効にするかどうかが尋ねられます。
• GTP キーワードを使用したルールの処理を可能にするには、GTP コマンド チャネル設定と UDP ストリーム設定の両方の詳細設定を有効にする必要があります。いずれかが無効である場合に GTP キーワードを使用するルールを有効にすると、ポリシーの保存時に詳細設定を有効にするかどうかが尋ねられます。「詳細設定の自動有効化」を参照してください。
イベントを生成するには、次の表に示す GTP プリプロセッサ ルールを有効にする必要があります。ルールの有効化については、「ルール状態の設定」を参照してください。
表 25-9 GTP プリプロセッサ ルール
|
|
143:1 |
プリプロセッサが無効なメッセージの長さを検出すると、イベントが生成されます。 |
143:2 |
プリプロセッサが無効な情報要素の長さを検出すると、イベントが生成されます。 |
143:3 |
プリプロセッサが誤った順序の情報要素を検出すると、イベントが生成されます。 |
GTP プリプロセッサが GTP コマンド メッセージをモニタするポートを変更するには、次の手順を使用します。
GTP コマンド チャネルを設定するには、次の手順を実行します。
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [GTP Command Channel Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[GTP Command Channel Configuration] ページが表示されます。
ステップ 5 オプションで、プリプロセッサが GTP コマンド メッセージを検査するポートを変更します。0 ~ 65535 の整数を指定できます。複数のポートを指定する場合はカンマで区切ります。
ステップ 6 オプションで、ページの上部にある [Configure Rules for GTP Command Channel Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [GTP Command Channel Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
IMAP トラフィックのデコード
ライセンス:Protection
Internet Message Application Protocol(IMAP)は、リモート IMAP サーバから電子メールを取得するときに使用されます。IMAP プリプロセッサはサーバ/クライアント IMAP4 トラフィックを検査し、関連するプリプロセッサ ルールが有効である場合は異常なトラフィックがあるとイベントを生成します。プリプロセッサは、クライアント/サーバ IMAP4 トラフィックの電子メール添付ファイルを抽出してデコードし、添付ファイル データをルール エンジンに送信することもできます。添付ファイル データを指し示すには、侵入ルールで file_data
キーワードを使用します。詳細については、「特定のペイロード タイプを指し示す」を参照してください。
抽出とデコードでは、複数の添付ファイル(存在する場合)や、複数パケットにまたがる大きな添付ファイルなども処理されます。
IMAP プリプロセッサを使用するときは、次の点に注意してください。
• IMAP トラフィックは TCP/IP 接続を介して伝送されるため、IMAP プリプロセッサは TCP ストリームの前処理を必要とします。TCP ストリームの前処理が無効になっている場合に IMAP プリプロセッサを有効にすると、ポリシーの保存時に、TCP ストリームの前処理を有効にするかどうかを尋ねられます。詳細については、「詳細設定の自動有効化」および 「TCP ストリームの前処理の使用」を参照してください。
• IMAP プリプロセッサ ルールによりイベントを生成するには、それらのルールを有効にする必要があります。IMAP プリプロセッサ ルールのジェネレータ ID(GID)は 141 です。設定ページのリンクから、侵入ポリシーの [Rules] ページの IMAP プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
詳細については、次の項を参照してください。
• 「IMAP プリプロセッサ オプションの選択」
• 「IMAP プリプロセッサの設定」
• 「追加の IMAP プリプロセッサ ルールの有効化」
IMAP プリプロセッサ オプションの選択
ライセンス:Protection
変更できる IMAP プリプロセッサ オプションを以下で説明します。
MIME 電子メール添付ファイルのデコードが不要な場合のデコードまたは抽出では、複数の添付ファイル(存在する場合)および複数パケットにまたがる大きな添付ファイルが処理されることに注意してください。
[Base64 Decoding Depth]、[7-Bit/8-Bit/Binary Decoding Depth]、[Quoted-Printable Decoding Depth]、または [Unix-to-Unix Decoding Depth] の各オプションの値が、アクセス コントロール ポリシーに関連付けられている侵入ポリシーと、アクセス コントロール ルールに関連付けられている侵入ポリシーの間で異なる場合は、最も大きな値が使用されることに注意してください。詳細については、「デフォルト アクションの設定」および 「許可されたトラフィックに対するファイル インスペクションと侵入インスペクションの実行」を参照してください。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Ports
IMAP トラフィックを検査するポートを指定します。0 ~ 65535 の整数を指定できます。複数のポート番号を指定する場合は、カンマで区切ります。
(注) IMAP ポート リストに追加したすべてのポートを、各 TCP ポリシーの TCP クライアント再構成リストにも追加する必要があります。TCP 再構成ポートの設定については、「ストリームの再アセンブリのオプションの選択」を参照してください。
Base64 Decoding Depth
各 Base 64 エンコード MIME 電子メール添付ファイルから抽出してデコードできる最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、すべての Base64 データをデコードする場合は 0 を指定します。Base64 データを無視するには、-1 を指定します。
4 で割り切れない正の値は、次に大きい 4 の倍数に切り上げられることに注意してください。ただし 65533、65534、および 65535 は 65532 に切り下げられます。
Base64 デコードが有効である場合、ルール 141:4 を有効にして、デコードの失敗時にイベントを生成することができます。デコードは、エンコードが誤っている場合やデータが破損している場合などに失敗する可能性があります。
7-Bit/8-Bit/Binary Decoding Depth
デコードを必要としない各 MIME 電子メール添付ファイルから抽出するデータの最大バイト数を指定します。これらの添付ファイル タイプには、7 ビット、8 ビット、バイナリー、およびさまざまなマルチパート コンテンツ タイプ(プレーンテキスト、jpeg イメージ、mp3 ファイルなど)があります。1 ~ 65535 バイトを指定するか、または、パケットのすべてのデータを抽出する場合は 0 を指定します。非デコード データを無視するには、-1 を指定します。
Quoted-Printable Decoding Depth
各 quoted-printable(QP)エンコード MIME 電子メール添付ファイルから抽出してデコードできる最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、パケットのすべての QP エンコード データをデコードする場合は 0 を指定します。QP エンコード データを無視するには、-1 を指定します。
quoted-printable デコードが有効な場合、ルール 141:6 を有効にして、デコードの失敗時にイベントを生成することができます。デコードが失敗するのは、エンコードが誤っている場合やデータが破損している場合などです。
Unix-to-Unix Decoding Depth
各 Unix-to-Unix エンコード(UU エンコード)電子メール添付ファイルから抽出してデコードでき最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、パケットのすべての UU エンコード データをデコードする場合は 0 を指定します。UU エンコード データを無視するには、-1 を指定します。
Unix-to-Unix デコードが有効である場合、ルール 141:7 を有効にして、デコードの失敗時にイベントを生成することができます。デコードは、エンコードが誤っている場合やデータが破損している場合などに失敗する可能性があります。
IMAP プリプロセッサの設定
ライセンス:Protection
IMAP プリプロセッサを設定するには、次の手順に従います。IMAP プリプロセッサ設定オプションの詳細については、「IMAP プリプロセッサ オプションの選択」を参照してください。
IMAP プリプロセッサの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [IMAP Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[IMAP Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 IMAP トラフィックをデコードする必要があるポートを指定します。複数のポート番号を指定する場合は、カンマで区切ります。
注 IMAP ポート リストに追加したすべてのポートを、各 TCP ポリシーの TCP クライアント再構成リストにも追加する必要があります。TCP 再構成ポートの設定については、「ストリームの再アセンブリのオプションの選択」を参照してください。
ステップ 6 次に示す電子メール添付ファイル タイプの任意の組み合わせから抽出してデコードするデータの最大バイト数を指定します。
• Base64 Decoding Depth
• 7-Bit/8-Bit/Binary Decoding Depth(プレーン テキスト、jpeg イメージ、mp3 ファイルなどの各種マルチパート コンテンツ タイプを含む)
• Quoted-Printable Decoding Depth
• Unix-to-Unix Decoding Depth
タイプごとに 1 ~ 65535 バイトを指定するか、または、パケットのすべてのデータを抽出し、必要に応じてデコードする場合は 0 を指定します。添付ファイル タイプのデータを無視するには、-1 を指定します。
添付ファイル データを検査するには、侵入ルールで file_data
キーワードを使用できます。詳細については、「特定のペイロード タイプを指し示す」を参照してください。
ステップ 7 オプションで、ページの上部にある [Configure Rules for IMAP Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [IMAP Configuration] ページに戻ります。
ステップ 8 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
追加の IMAP プリプロセッサ ルールの有効化
ライセンス:Protection
次の表に示す IMAP プリプロセッサ ルールは、特定の設定オプションに関連付けられていません。その他の IMAP プリプロセッサ ルールと同様に、これらのルールによってイベントを生成する場合は、これらのルールを有効にする必要があります。ルールの有効化については、「ルール状態の設定」を参照してください。
表 25-10 追加の IMAP プリプロセッサ ルール
|
|
141:1 |
プリプロセッサが RFC 3501 に定義されていないクライアント コマンドを検出すると、イベントが生成されます。 |
141:2 |
プリプロセッサが RFC 3501 に定義されていないサーバ応答を検出すると、イベントが生成されます。 |
141:3 |
プリプロセッサが使用しているメモリの量が、システムでの最大許容量に達している場合に、イベントが生成されます。この時点で、プリプロセッサはメモリが使用可能になるまでデコードを停止します。 |
POP トラフィックのデコード
ライセンス:Protection
Post Office Protocol (POP)は、リモート POP メール サーバから電子メールを取得するときに使用されます。POP プリプロセッサはサーバ/クライアント POP3 トラフィックを検査し、関連するプリプロセッサ ルールが有効である場合は異常なトラフィックがあるとイベントを生成します。プリプロセッサは、クライアント/サーバ POP3 トラフィックで電子メール添付ファイルを抽出してデコードし、添付ファイル データをルール エンジンに送信することもできます。添付ファイル データを指し示すには、侵入ルールで file_data
キーワードを使用します。詳細については、「特定のペイロード タイプを指し示す」を参照してください。
抽出とデコードでは、複数の添付ファイル(存在する場合)や、複数パケットにまたがる大きな添付ファイルなども処理されます。
POP プリプロセッサを使用するときは、次の点に注意してください。
• POP トラフィックは TCP/IP 接続を介して伝送されるため、POP プリプロセッサは TCP ストリームの前処理を必要とします。TCP ストリームの前処理が無効になっている場合に POP プリプロセッサを有効にすると、ポリシーの保存時に、TCP ストリームの前処理を有効にするかどうかを尋ねられます。詳細については、「詳細設定の自動有効化」および 「TCP ストリームの前処理の使用」を参照してください。
• POP プリプロセッサ ルールによりイベントを生成するには、それらのルールを有効にする必要があります。POP プリプロセッサ ルールのジェネレータ ID(GID)は 142 です。設定ページのリンクから、侵入ポリシーの [Rules] ページの POP プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
詳細については、次の項を参照してください。
• 「POP プリプロセッサ オプションの選択」
• 「POP プリプロセッサの設定」
• 「追加の POP プリプロセッサ ルールの有効化」
POP プリプロセッサ オプションの選択
ライセンス:Protection
変更できる POP プリプロセッサ オプションを以下で説明します。
MIME 電子メール添付ファイルのデコードが不要な場合のデコードまたは抽出では、複数の添付ファイル(存在する場合)および複数パケットにまたがる大きな添付ファイルが処理されることに注意してください。
[Base64 Decoding Depth]、[7-Bit/8-Bit/Binary Decoding Depth]、[Quoted-Printable Decoding Depth]、または [Unix-to-Unix Decoding Depth] の各オプションの値が、アクセス コントロール ポリシーに関連付けられている侵入ポリシーと、アクセス コントロール ルールに関連付けられている侵入ポリシーの間で異なる場合は、最も大きな値が使用されることに注意してください。詳細については、「デフォルト アクションの設定」および 「許可されたトラフィックに対するファイル インスペクションと侵入インスペクションの実行」を参照してください。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Ports
POP トラフィックを検査するポートを指定します。0 ~ 65535 の整数を指定できます。複数のポート番号を指定する場合は、カンマで区切ります。
注 POP ポート リストに追加したすべてのポートを、各 TCP ポリシーの TCP クライアント再構成リストにも追加する必要があります。TCP 再構成ポートの設定については、「ストリームの再アセンブリのオプションの選択」を参照してください。
Base64 Decoding Depth
各 Base 64 エンコード MIME 電子メール添付ファイルから抽出してデコードできる最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、すべての Base64 データをデコードする場合は 0 を指定します。Base64 データを無視するには、-1 を指定します。
4 で割り切れない正の値は、次に大きい 4 の倍数に切り上げられることに注意してください。ただし 65533、65534、および 65535 は 65532 に切り下げられます。
Base64 デコードが有効である場合、ルール 142:4 を有効にして、デコードの失敗時にイベントを生成することができます。デコードは、エンコードが誤っている場合やデータが破損している場合などに失敗する可能性があります。詳細については、「ルール状態の設定」を参照してください。
7-Bit/8-Bit/Binary Decoding Depth
デコードを必要としない各 MIME 電子メール添付ファイルから抽出するデータの最大バイト数を指定します。これらの添付ファイル タイプには、7 ビット、8 ビット、バイナリー、およびさまざまなマルチパート コンテンツ タイプ(プレーンテキスト、jpeg イメージ、mp3 ファイルなど)があります。1 ~ 65535 バイトを指定するか、または、パケットのすべてのデータを抽出する場合は 0 を指定します。非デコード データを無視するには、-1 を指定します。
Quoted-Printable Decoding Depth
各 quoted-printable(QP)エンコード MIME 電子メール添付ファイルから抽出してデコードできる最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、パケットのすべての QP エンコード データをデコードする場合は 0 を指定します。QP エンコード データを無視するには、-1 を指定します。
quoted-printable デコードが有効である場合、ルール 142:6 を有効にして、デコードの失敗時にイベントを生成することができます。デコードが失敗するのは、エンコードが誤っている場合やデータが破損している場合などです。詳細については、「ルール状態の設定」を参照してください。
Unix-to-Unix Decoding Depth
各 Unix-to-Unix エンコード(UU エンコード)電子メール添付ファイルから抽出してデコードでき最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、パケットのすべての UU エンコード データをデコードする場合は 0 を指定します。UU エンコード データを無視するには、-1 を指定します。
Unix-to-Unix デコードが有効である場合、ルール 142:7 を有効にして、デコードの失敗時にイベントを生成することができます。デコードは、エンコードが誤っている場合やデータが破損している場合などに失敗する可能性があります。詳細については、「ルール状態の設定」を参照してください。
POP プリプロセッサの設定
ライセンス:Protection
POP プリプロセッサを設定するには、次の手順に従います。POP プリプロセッサ設定オプションの詳細については、「POP プリプロセッサ オプションの選択」を参照してください。
POP プリプロセッサの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに拡張エディタでの未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [POP Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[POP Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 IMAP トラフィックをデコードする必要があるポートを指定します。複数のポート番号を指定する場合は、カンマで区切ります。
注 POP ポート リストに追加したすべてのポートを、各 TCP ポリシーの TCP クライアント再構成リストにも追加する必要があります。TCP 再構成ポートの設定については、「ストリームの再アセンブリのオプションの選択」を参照してください。
ステップ 6 次に示す電子メール添付ファイル タイプの任意の組み合わせから抽出してデコードするデータの最大バイト数を指定します。
• Base64 Decoding Depth
• 7-Bit/8-Bit/Binary Decoding Depth(プレーン テキスト、jpeg イメージ、mp3 ファイルなどの各種マルチパート コンテンツ タイプを含む)
• Quoted-Printable Decoding Depth
• Unix-to-Unix Decoding Depth
タイプごとに 1 ~ 65535 バイトを指定するか、または、パケットのすべてのデータを抽出し、必要に応じてデコードする場合は 0 を指定します。添付ファイル タイプのデータを無視するには、-1 を指定します。
添付ファイル データを検査するには、侵入ルールで file_data
キーワードを使用できます。詳細については、「特定のペイロード タイプを指し示す」を参照してください。
ステップ 7 オプションで、ページの上部にある [Configure Rules for POP Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [POP Configuration] ページに戻ります。
ステップ 8 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
追加の POP プリプロセッサ ルールの有効化
ライセンス:Protection
次の表に示す POP プリプロセッサ ルールは、特定の設定オプションに関連付けられていません。その他の POP プリプロセッサ ルールと同様に、これらのルールによってイベントを生成する場合は、これらのルールを有効にする必要があります。ルールの有効化については、「ルール状態の設定」を参照してください。
表 25-11 追加の POP プリプロセッサ ルール
|
|
142:1 |
プリプロセッサが RFC 1939 に定義されていないクライアント コマンドを検出すると、イベントが生成されます。 |
142:2 |
プリプロセッサが RFC 1939 に定義されていないサーバ応答を検出すると、イベントが生成されます。 |
142:3 |
プリプロセッサが使用しているメモリの量が、システムでの最大許容量に達している場合に、イベントが生成されます。この時点で、プリプロセッサはメモリが使用可能になるまでデコードを停止します。 |
SMTP トラフィックのデコード
ライセンス:Protection
SMTP プリプロセッサはルール エンジンに対し、SMTP コマンドを正規化するように指示します。このプリプロセッサは、クライアント/サーバ トラフィックで電子メール添付ファイルを抽出してデコードします。またソフトウェアのバージョンによっては、SMTP トラフィックによりトリガーとして使用された侵入イベントを表示するときにコンテキストを提供するため、電子メール ファイル名、アドレス、および見出し データを抽出します。
SMTP プリプロセッサを使用するときは、次の点に注意してください。
• SMTP プリプロセッサは TCP ストリームの前処理を必要とします。TCP ストリームの前処理が無効になっている場合に SMTP プリプロセッサを有効にすると、ポリシーの保存時に、TCP ストリームの前処理を有効にするかどうかを尋ねられます。詳細については、「詳細設定の自動有効化」および 「TCP ストリームの前処理の使用」を参照してください。
• ジェネレータ ID(GID)124 の SMTP プリプロセッサ ルールを使用してイベントを生成する場合は、これらのルールを有効にする必要があります。設定ページのリンクから、侵入ポリシーの [Rules] ページの SMTP プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
詳細については、次の項を参照してください。
• 「SMTP デコードについて」
• 「SMTP デコードの設定」
• 「SMTP 最大デコード メモリ アラートの有効化」
SMTP デコードについて
ライセンス:Protection
正規化を有効または無効にし、SMTP デコーダが検出する異常トラフィックのタイプを制御するオプションを設定できます。
MIME 電子メール添付ファイルのデコードが不要な場合のデコードまたは抽出では、複数の添付ファイル(存在する場合)および複数パケットにまたがる大きな添付ファイルが処理されることに注意してください。
[Base64 Decoding Depth]、[7-Bit/8-Bit/Binary Decoding Depth]、[Quoted-Printable Decoding Depth]、または [Unix-to-Unix Decoding Depth] の各オプションの値が、アクセス コントロール ポリシーに関連付けられている侵入ポリシーと、アクセス コントロール ルールに関連付けられている侵入ポリシーの間で異なる場合は、最も大きな値が使用されることに注意してください。詳細については、「デフォルト アクションの設定」および 「許可されたトラフィックに対するファイル インスペクションと侵入インスペクションの実行」を参照してください。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Ports
SMTP トラフィックを正規化するポートを指定します。0 ~ 65535 の整数を指定できます。複数のポートを指定する場合は、カンマで区切ります。
(注) SMTP ポート リストに追加したすべてのポートを、各 TCP ポリシーの TCP クライアント再構成リストにも追加する必要があります。TCP 再構成ポートの設定の詳細については、「ストリームの再アセンブリのオプションの選択」を参照してください。
Stateful Inspection
選択されている場合、SMTP デコーダは状態を保存し、各パケットのセッション コンテキストを提供し、再構成されたセッションだけを検査します。選択されていない場合、セッション コンテキストなしで個々のパケットを分析します。
Normalize
[All] に設定すると、すべてのコマンドが正規化されます。コマンドの後に複数のスペース文字があるかどうかを確認します。
[None] に設定すると、コマンドは正規化されません。
[Cmds] に設定すると、[Custom Commands] にリストされているコマンドが正規化されます。
Custom Commands
[Normalize] が [Cmds] に設定されている場合に、リストされているコマンドが正規化されます。
正規化する必要があるコマンドをテキスト ボックスに指定します。コマンドの後に複数のスペース文字があるかどうかを確認します。
スペース文字(ASCII 0x20)とタブ文字(ASCII 0x09)は、正規化の ためにスペース文字としてカウントされます。
Ignore Data
メール データを処理せず、MIME メール 見出し データだけを処理します。
Ignore TLS Data
Transport Layer Security プロトコルで暗号化されたデータを処理しません。
No Alerts
関連するプリプロセッサ ルールが有効である場合に、侵入イベントを無効にします。
Detect Unknown Commands
SMTP トラフィックで不明なコマンドを検出します。
このオプションのイベントを生成するには、ルール124:5 および 124:6 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Max Command Line Len
SMTP コマンドラインがこの値より長い場合にそのことを検出します。コマンドラインの長さを検出しない場合は、 0
を指定します。
RFC 2821(Network Working Group による Simple Mail Transfer Protocol 仕様)では、コマンドラインの最大長として 512 が推奨されています。
このオプションのイベントを生成するには、ルール 124:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Max Header Line Len
SMTP データ 見出し行がこの値より長い場合にそのことを検出します。データ 見出し行の長さを検出しない場合は、 0
を指定します。
このオプションのイベントを生成するには、ルール124:2 および 124:7 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Max Response Line Len
SMTP 応答行がこの値より長い場合にそのことを検出します。応答行の長さを検出しない場合は、 0
を指定します。
RFC 2821 では、応答行の最大長として 512 が推奨されています。
このオプションのイベントを生成するには、ルール 124:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Alt Max Command Line Len
指定のコマンドの SMTP コマンドラインがこの値より長い場合にそのことを検出します。指定したコマンドのコマンドライン長を検出しない場合は、 0
を指定します。多数のコマンドに対して、さまざまなデフォルト ライン長が設定されています。
この設定は、指定されたコマンドの [Max Command Line Len] の設定をオーバーライドします。
このオプションのイベントを生成するには、ルール 124:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Invalid Commands
これらのコマンドがクライアント側から送信された場合にそのことを検出します。
このオプションのイベントを生成するには、ルール124:5 および 124:6 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Valid Commands
このリストのコマンドを許可します。
このリストが空の場合でも、プリプロセッサにより許可される有効なコマンドは、ATRN AUTH BDAT DATA DEBUG EHLO EMAL ESAM ESND ESOM ETRN EVFY EXPN HELO HELP IDENT MAIL NOOP ONEX QUEU QUIT RCPT RSET SAML SEND SIZE SOML STARTTLS TICK TIME TURN TURNME VERB VRFY XADR XAUTH XCIR XEXCH50 X-EXPS XGEN XLICENSE X-LINK2STATE XQUE XSTA XTRN XUSR です。
(注) RCPT TO および MAIL FROM は SMTP コマンドです。プリプロセッサ設定では、コマンド名 RCPT と MAIL がそれぞれ使用されます。プリプロセッサはコード内で RCPT および MAIL を正しいコマンド名にマッピングします。
このオプションのイベントを生成するには、ルール 124:4 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Data Commands
RFC 5321 に基づく SMTP DATA コマンドによるデータの送信と同じ方法でデータ送信を開始するコマンドを指定します。複数のコマンドはスペースで区切ります。
Binary Data Commands
RFC 3030 に基づく BDATA コマンドによるデータの送信と類似の方法でデータ送信を開始するコマンドを指定します。複数のコマンドはスペースで区切ります。
Authentication Commands
クライアントおよびサーバ間で認証交換を開始するコマンドを指定します。複数のコマンドはスペースで区切ります。
Detect xlink2state
X-Link2State Microsoft Exchange バッファ データ オーバーフロー攻撃の一部であるパケットを検出します。インライン展開では、システムはこれらのパケットをドロップすることもできます。
このオプションのイベントを生成するには、ルール 124:8 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Base64 Decoding Depth
[Ignore Data] が無効である場合、各 Base64 エンコード MIME 電子メール添付ファイルから抽出してデコードする最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、すべての Base64 データをデコードする場合は 0 を指定します。Base64 データを無視するには、-1 を指定します。[Ignore Data] が選択されている場合、プリプロセッサはデータをデコードしません。
4 で割り切れない正の値は、次に大きい 4 の倍数に切り上げられることに注意してください。ただし 65533、65534、および 65535 は 65532 に切り下げられます。
Base64 デコードが有効である場合、ルール 124:10 を有効にして、デコードの失敗時にイベントを生成することができます。デコードは、エンコードが誤っている場合やデータが破損している場合などに失敗する可能性があります。詳細については、「ルール状態の設定」を参照してください。
このオプションは、廃止されたオプション [Enable MIME Decoding] および [Maximum MIME Decoding Depth] の代わりに使用されます。廃止されたこれらのオプションは、既存の侵入ポリシーでは後方互換性を維持する目的で引き続きサポートされています。
7-Bit/8-Bit/Binary Decoding Depth
[Ignore Data] が無効である場合、デコードを必要としない各 MIME 電子メール添付ファイルから抽出する最大バイト数を指定します。これらの添付ファイル タイプには、7 ビット、8 ビット、バイナリー、およびさまざまなマルチパート コンテンツ タイプ(プレーンテキスト、jpeg イメージ、mp3 ファイルなど)があります。1 ~ 65535 バイトを指定するか、または、パケットのすべてのデータを抽出する場合は 0 を指定します。非デコード データを無視するには、-1 を指定します。[Ignore Data] が選択されている場合、プリプロセッサはデータを抽出しません。
Quoted-Printable Decoding Depth
[Ignore Data] が無効である場合、各 quoted-printable(QP)エンコード MIME 電子メール添付ファイルから抽出してデコードする最大バイト数を指定します。
1 ~ 65535 バイトを指定するか、または、パケットのすべての QP エンコード データをデコードする場合は 0 を指定します。QP エンコード データを無視するには、-1 を指定します。[Ignore Data] が選択されている場合、プリプロセッサはデータをデコードしません。
quoted-printable デコードが有効である場合、ルール 124:11 を有効にして、デコードの失敗時にイベントを生成することができます。デコードが失敗するのは、エンコードが誤っている場合やデータが破損している場合などです。詳細については、「ルール状態の設定」を参照してください。
Unix-to-Unix Decoding Depth
[Ignore Data] が無効である場合、各 Unix-to-Unix(UU エンコード)電子メール添付ファイルから抽出してデコードする最大バイト数を指定します。1 ~ 65535 バイトを指定するか、または、パケットのすべての UU エンコード データをデコードする場合は 0 を指定します。UU エンコード データを無視するには、-1 を指定します。[Ignore Data] が選択されている場合、プリプロセッサはデータをデコードしません。
Unix-to-Unix デコードが有効である場合、ルール 124:13 を有効にして、デコードの失敗時にイベントを生成することができます。デコードは、エンコードが誤っている場合やデータが破損している場合などに失敗する可能性があります。詳細については、「ルール状態の設定」を参照してください。
Log MIME Attachment Names
MIME Content-Disposition 見出しからの MIME 添付ファイル名の抽出を有効にし、セッションで生成されるすべての侵入イベントをこのファイル名に関連付けます。複数ファイル名がサポートされています。
このオプションが有効である場合、侵入イベントのテーブル ビューの [Email Attachment] 列に、イベントに関連付けられているファイル名が表示されます。詳細については、「侵入イベントについて」を参照してください。
Log To Addresses
SMTP RCPT TO コマンドからの受信者の電子メール アドレスの抽出を有効にし、セッションで生成されるすべての侵入イベントにこの受信者アドレスに関連付けます。複数の受信者がサポートされます。
このオプションが有効である場合、侵入イベントのテーブル ビューの [Email Recipient] 列に、イベントに関連付けられている受信者が表示されます。詳細については、「侵入イベントについて」を参照してください。
Log From Addresses
SMTP MAIL FROM コマンドからの送信者の電子メール アドレスの抽出を有効にし、セッションで生成されるすべての侵入イベントにこの送信者アドレスを関連付けます。複数の送信者アドレスがサポートされます。
このオプションが有効である場合、侵入イベントのテーブル ビューの [Email Sender] 列に、イベントに関連付けられている送信者が表示されます。詳細については、「侵入イベントについて」を参照してください。
Log Headers
電子メール 見出しの抽出を有効にします。抽出されるバイト数は、[Header Log Depth] に指定されている値によって決まります。
キーワード content
を使用して、電子メール 見出し データをパターンとして使用する侵入ルールを作成できます。侵入イベント パケット ビューに、抽出された電子メール 見出しが表示されます。詳細については、「コンテンツ一致の制約」および 「パケット ビューの使用」を参照してください。
Header Log Depth
[Log Headers] が有効である場合、抽出する見出しのバイト数を指定します。0 ~ 20480 バイトを指定できます。値 0 を指定すると、[Log Headers] が無効になります。
SMTP デコードの設定
ライセンス:Protection
侵入ポリシーの [SMTP Configuration]ページを使用して、SMTP 正規化を設定できます。SMTP プリプロセッサ設定オプションの詳細については、「SMTP デコードについて」を参照してください。
SMTP デコード オプションの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [SMTP Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[SMTP Configuration] ページが表示されます。次の図は、防御センター パケット ビューを示します。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 SMTP トラフィックをデコードする必要があるポートを、カンマで区切って指定します。
ステップ 6 SMTP パケットを含む再構成された TCP ストリームを調べるには、[Stateful Inspection] を選択します。再構成されていない SMTP パケットだけを検査するには、[Stateful Inspection] をクリアします。
ステップ 7 正規化オプションを設定します。
• すべてのコマンドを正規化するには、[All] を選択します。
• [Custom Commands] に指定されているコマンドだけを正規化するには、[Cmds] を選択して、正規化するコマンドを指定します。複数のコマンドはスペースで区切ります。
• コマンドを正規化しない場合は、[None] を選択します。
• MIME メール 見出し データ以外のメール データを無視するには、[Ignore Data] をオンにします。
• Transport Security Layer プロトコルで暗号化されたデータを無視するには、[Ignore TLS Data] をオンにします。
• 関連するプリプロセッサ ルールが有効である場合にイベント生成を無効にするには、[No Alerts] をオンにします。
• SMTP データで不明なコマンドを検出するには、[Detect Unknown Commands] を選択します。
ステップ 8 [Max Command Line Len] フィールドに、コマンドラインの最大長を指定します。
ステップ 9 [Max Header Line Len] フィールドに、データ 見出し行の最大長を指定します。
ステップ 10 [Max Response Line Len] フィールドに、応答行の最大長を指定します。
注 RCPT TO および MAIL FROM は SMTP コマンドです。プリプロセッサ設定では、コマンド名 RCPT と MAIL がそれぞれ使用されます。プリプロセッサはコード内で RCPT および MAIL を正しいコマンド名にマッピングします。
ステップ 11 必要に応じて、[Alt Max Command Line Len] の横にある [Add] をクリックして、代替最大コマンドライン長を指定するコマンドを追加します。続いてライン長を指定し、このライン長を適用するコマンドをスペースで区切って指定します。
ステップ 12 [Invalid Commands] フィールドに、無効として扱う検出対象コマンドを指定します。複数のコマンドはスペースで区切ります。
ステップ 13 [Valid Commands] フィールドに、有効として扱うコマンドを指定します。複数のコマンドはスペースで区切ります。
注 [Valid Commands] リストが空の場合でも、プリプロセッサにより有効なコマンドとして許可されるコマンドは、ATRN、AUTH、BDAT、DATA、DEBUG、EHLO、EMAL、ESAM、ESND、ESOM、ETRN、EVFY、EXPN、HELO、HELP、IDENT、MAIL、NOOP、QUIT、RCPT、RSET、SAML、SOML、SEND、ONEX、QUEU、STARTTLS、TICK、TIME、TURN、TURNME、VERB、VRFY、X-EXPS、X-LINK2STATE、XADR、XAUTH、XCIR、XEXCH50、XGEN、XLICENSE、XQUE、XSTA、XTRN、XUSR です。
ステップ 14 [Data Commands] フィールドに、RFC 5321 に基づく SMTP DATA コマンドによるデータの送信と同じ方法でデータ送信を開始するコマンドを指定します。複数のコマンドはスペースで区切ります。
ステップ 15 [Binary Data Commands] フィールドに、RFC 3030 に基づく BDATA コマンドによるデータの送信と類似の方法でデータ送信を開始するコマンドを指定します。複数のコマンドはスペースで区切ります。
ステップ 16 [Authentication Commands] フィールドに、クライアントとサーバの間で認証交換を開始するコマンドを指定します。複数のコマンドはスペースで区切ります。
ステップ 17 X-Link2State Microsoft Exchange バッファ データ オーバーフロー攻撃の一部であるパケットを検出するには、[Detect xlink2state] を選択します。
ステップ 18 各種電子メール添付ファイルで抽出およびデコードするデータの最大バイト数を指定するには、次に示す添付ファイル タイプの値を指定します。
• Base64 Decoding Depth
• 7-Bit/8-Bit/Binary Decoding Depth(プレーン テキスト、jpeg イメージ、mp3 ファイルなどの各種マルチパート コンテンツ タイプを含む)
• Quoted-Printable Decoding Depth
• Unix-to-Unix Decoding Depth
1 ~ 65535 バイトを指定するか、または、当該タイプのパケットのすべてのデータを抽出し、必要に応じてデコードする場合は 0 を指定します。添付ファイル タイプのデータを無視するには、-1 を指定します。
抽出したデータを検査するには、侵入ルールで file_data
キーワードを使用できます。詳細については、「特定のペイロード タイプを指し示す」を参照してください。
また、クロスパケット データまたは複数の TCP セグメントにわたるデータを抽出してデコードするには、SMTP [Stateful Inspection] オプションも選択する必要があります。
ステップ 19 SMTP トラフィックによりトリガーとして使用された侵入イベントとコンテキスト情報を関連付けるためのオプションを設定します。
• 侵入イベントに関連付ける MIME 添付ファイル名を抽出できるようにするには、[Log MIME Attachment Names] を選択します。
• 受信者の電子メール アドレスを抽出できるようにするには、[Log To Addresses] を選択します。
• 侵入イベントに関連付ける送信者の電子メール アドレスを抽出できるようにするには、[Log From Addresses] を選択します。
• 侵入イベントに関連付ける電子メール 見出しを抽出し、電子メール 見出しを検査するルールを作成できるようにするには、[Log Headers] を選択します。
見出し情報は侵入イベント パケット ビューに表示されることに注意してください。また、電子メール 見出し データと共にキーワード content
をパターンとして使用する侵入ルールを作成できることにも注意してください。詳細については、「イベント情報の表示」および 「コンテンツ一致の検索」を参照してください。
オプションで [Header Log Depth] に、抽出する電子メール 見出しのバイト数 0 ~ 20480 を指定できます。値 0 を指定すると、[Log Headers] が無効になります。
ステップ 20 オプションで、ページの上部にある [Configure Rules for SMTP Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [SMTP Configuration] ページに戻ります。
ステップ 21 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
SMTP 最大デコード メモリ アラートの有効化
ライセンス:Protection
有効になっているプリプロセッサが次のタイプのエンコード データのデコードに使用しているメモリの容量がシステムの最大許容メモリ量に達した場合にイベントを生成するには、SMTP プリプロセッサ ルール 124:9 を有効にします。
• Base64
• 7-bit/8-bit/binary
• Quoted-printable
• Unix-to-Unix
最大デコード メモリを超えた場合、メモリが使用可能になるまで、プリプロセッサはこれらのタイプのエンコード データのデコードを停止します。このプリプロセッサ ルールは、1 つの特定の設定オプションに関連付けられていません。ルールの有効化については、「ルール状態の設定」を参照してください。
SSH プロプロセッサによるエクスプロイトの検出
ライセンス:Protection
SSH プリプロセッサは、チャレンジレスポンス バッファ オーバーフロー エクスプロイト、CRC-32 エクスプロイト、SecureCRT SSH クライアント バッファ オーバーフロー エクスプロイト、プロトコル不一致、不正な SSH メッセージ方向を検出します。このプリプロセッサは、バージョン 1 または 2 ではないバージョン文字列も検出します。
チャレンジレスポンス バッファ オーバーフロー攻撃と CRC-32 攻撃はいずれも鍵交換の後に発生するので、暗号化されています。いずれの攻撃でも、20 KB を超える普通よりも大きなペイロードが認証チャレンジ直後にサーバに送信されます。CRC-32 攻撃の対象となるのは SSH バージョン 1 のみであり、チャレンジレスポンス バッファ オーバーフロー エクスプロイトの対象となるのは SSH バージョン 2 のみです。バージョン文字列は、セッションの開始時に読み取られます。バージョン文字列の違いを除き、この両方の攻撃は同様に扱われます。
SecureCRT SSH エクスプロイトとプロトコル不一致攻撃は、鍵交換前に接続をセキュリティで保護しようとするときに発生します。SecureCRT エクスプロイトでは、非常に長いプロトコル ID 文字列がクライアントに送信され、これが原因でバッファ オーバーフローが発生します。プロトコル不一致は、非 SSH クライアント アプリケーションがセキュア SSH サーバに接続しようとした場合、またはサーバとクライアントのバージョン番号が一致しない場合に発生します。
指定のポートまたは一連のポートでトラフィックを検査するか、または SSH トラフィックを自動的に検出するように、プリプロセッサを設定できます。指定のバイト数内で指定の数の暗号化パケットが渡されるか、または指定のパケット数内で指定の最大バイト数を超えるまで、SSH トラフィックの検査が続行されます。最大バイト数を超えた場合、CRC-32(SSH バージョン 1)または チャレンジレスポンス バッファ オーバーフロー(SSH バージョン 2)攻撃が発生したものと想定されます。また、SecureCRT エクスプロイト、プロトコル不一致、および不正なメッセージ方向を検出できます。プリプロセッサは、設定していない場合でもバージョン 1 または 2 以外のバージョン文字列を検出することに注意してください。
SSH プリプロセッサを使用するときは、次の点に注意してください。
• ジェネレータ ID(GID)128 の SSH プリプロセッサ ルールを使用してイベントを生成する場合、これらのルールを有効にする必要があります。設定ページのリンクから、侵入ポリシーの [Rules] ページの SSH プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
• SSH プリプロセッサは TCP ストリームの前処理を必要とします。TCP ストリームの前処理が無効になっている場合に SSH プリプロセッサを有効にすると、ポリシーの保存時に、TCP ストリームの前処理を有効にするかどうかを尋ねられます。詳細については、「詳細設定の自動有効化」および 「TCP ストリームの前処理の使用」を参照してください。
• SSH プリプロセッサは、ブルート フォース攻撃には対処しません。ブルート フォース攻撃の試行については、「動的ルール状態の追加」を参照してください。
詳細については、次の項を参照してください。
• 「SSH プリプロセッサ オプションの選択」
• 「SSH プリプロセッサの設定」
SSH プリプロセッサ オプションの選択
ライセンス:Protection
このセクションでは、SSH プリプロセッサを設定するときに使用できるオプションについて説明します。
次のいずれかが発生すると、プリプロセッサはセッションのトラフィックの検査を停止します。
• この数の暗号化パケットで、サーバとクライアント間で有効な交換が行われた場合。接続は続行します。
• 検査対象の暗号化パケットの数に達する前に、[Number of Bytes Sent Without Server Response] に達した場合。この場合、攻撃があったものと想定されます。
[Number of Encrypted Packets to Inspect] に達するまでの有効な各サーバ応答により、[Number of Bytes Sent Without Server Response] がリセットされ、パケット カウントが続行します。
次に示す SSH のプリプロセッサの設定例で説明します。
• [Server Ports]:22
• [Autodetect Ports]:off
• [Maximum Length of Protocol Version String]:80
• [Number of Encrypted Packets to Inspect]:25
• [Number of Bytes Sent Without Server Response]:19,600
• 検出オプションはすべて有効です。
この例では、プリプロセッサはポート 22 のトラフィックだけを検査します。つまり自動検出が無効であるため、指定のポートでのみ検査をします。
また、次のいずれかが発生すると、この例のプリプロセッサはトラフィックの検査を停止します。
• クライアントが 25 個の暗号化パケットを送信したが、すべてのパケットのデータ合計が 19,600 バイト以下であった。攻撃はなかったと想定されます。
• クライアントが、25 個の暗号化パケットで 19,600 バイトを超えるデータを送信した。この場合、この例のセッションは SSH バージョン 2 セッションであるため、プリプロセッサはこの攻撃がチャレンジレスポンス バッファ オーバーフロー攻撃であるとみなします。
この例のプリプロセッサは、トラフィックの処理時に以下の状況が発生しているかどうかも検出します。
• 80 バイトより長いバージョン文字列によりトリガーとして使用されるサーバ オーバーフロー(これは SecureCRT エクスプロイトを示します)
• プロトコルの不一致
• 誤った方向に流れるパケット
最後に、プリプロセッサは、バージョン 1 または 2 以外のすべてのバージョン文字列を自動的に検出します。
プリプロセッサ ルールが言及されていない場合、オプションにはプリプロセッサ ルールが関連付けられていません。
Server Ports
SSH プリプロセッサがトラフィックを検査する必要があるポートを指定します。
1 つのポートか、複数ポートをカンマで区切ったリストを設定できます。
Autodetect Ports
SSH トラフィックを自動的に検出するようにプリプロセッサを設定します。
このオプションが選択されている場合、プリプロセッサはすべてのトラフィックで SSH バージョン番号を検査します。クライアント パケットにもサーバ パケットにもバージョン番号が含まれていない場合は、処理が停止します。無効である場合、プリプロセッサは [Server Ports] オプションで指定されているトラフィックだけを検査します。
Number of Encrypted Packets to Inspect
セッションあたりの検査対象の暗号化パケットの数を指定します。
このオプションをゼロに設定すると、すべてのトラフィックの通過が許可されます。
検査対象の暗号化パケットの数を減らすと、一部の攻撃が検出されなくなることがあります。検査対象の暗号化パケットの数を増やすと、パフォーマンスに悪影響を及ぼす可能性があります。
Number of Bytes Sent Without Server Response
SSH クライアントが、応答なしでサーバに送信できる最大バイト数を指定します。この最大バイト数を超えると、チャレンジレスポンス バッファ オーバーフロー攻撃または CRC-32 攻撃が想定されます。
プリプロセッサがチャレンジレスポンス バッファ オーバーフローまたは CRC-32 エクスプロイトを誤検出する場合は、このオプションの値を増やしてください。
Maximum Length of Protocol Version String
サーバのバージョン文字列の最大許容バイト数を指定します。この値を超えると、SecureCRT エクスプロイトとみなされます。
Detect Challenge-Response Buffer Overflow Attack
チャレンジレスポンス バッファ オーバーフロー エクスプロイトの検出を有効または無効にします。
このオプションのイベントを生成するには、ルール 128:1 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect SSH1 CRC-32 Attack
CRC-32 エクスプロイトの検出を有効または無効にします。
このオプションのイベントを生成するには、ルール 128:2 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect Server Overflow
SecureCRT SSH クライアント バッファ オーバーフロー エクスプロイトの検出を有効または無効にします。
このオプションのイベントを生成するには、ルール 128:3 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect Protocol Mismatch
プロトコル不一致の検出を有効または無効にします。
このオプションのイベントを生成するには、ルール 128:4 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect Bad Message Direction
トラフィックのフロー方向が正しくない場合(つまり、推定されるサーバがクライアント トラフィックを生成したり、クライアントがサーバ トラフィックを生成したりした場合)の検出を有効または無効にします。
このオプションのイベントを生成するには、ルール 128:5 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect Payload Size Incorrect for the Given Payload
SSH パケットに指定された長さが IP 見出しに指定されている合計長と矛盾する場合や、メッセージが切り捨てられる場合、つまり完全な SSH 見出しを形成できる十分なデータがない場合などの、誤ったペイロード サイズのパケットの検出を有効または無効にします。
このオプションのイベントを生成するには、ルール 128:6 を有効にします。詳細については、「ルール状態の設定」を参照してください。
Detect Bad Version String
有効である場合、プリプロセッサは、設定していない場合でもバージョン 1 または 2 以外のバージョン文字列を検出することに注意してください。
このオプションのイベントを生成するには、ルール 128:7 を有効にします。詳細については、「ルール状態の設定」を参照してください。
SSH プリプロセッサの設定
ライセンス:Protection
このセクションでは、SSH プリプロセッサを設定する方法について説明します。
SSH プリプロセッサの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [SSH Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[SSH Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 [SSH Configuration] プリプロセッサ ページのすべてのオプションを変更できます。詳細については、「SSH プリプロセッサ オプションの選択」を参照してください。
ステップ 6 オプションで、ページの上部にある [Configure Rules for SSH Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [SSH Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
SSL プリプロセッサの使用
ライセンス:Protection
システムは暗号化されたトラフィックの内容を分析できませんが、トラフィック検査の試行を続行するように SSL プリプロセッサ オプションを設定できます。このように設定すると誤検出が発生することがあり、検出リソースを無駄に使用することになります。しかし SSL プリプロセッサを使用することで、システムは SSL セッションの開始時に交換されるハンドシェイクと鍵交換メッセージの内容を分析し、セッションが暗号化される時点を判別できます。SSL 前処理がアクティブな場合、暗号化されたら直ちにシステムによりセッション インスペクションを一時停止するようにできます。TCP ストリームの前処理が SSL プリプロセッサを使用できるようになっていることを確認する必要があります。
SSL プリプロセッサを使用するときは、次の点に注意してください。
• SSL プリプロセッサは TCP ストリームの前処理を必要とします。TCP ストリームの前処理が無効になっている場合に SSL プリプロセッサを有効にすると、ポリシーの保存時に、TCP ストリームの前処理を有効にするかどうかを尋ねられます。詳細については、「詳細設定の自動有効化」および 「TCP ストリームの前処理の使用」を参照してください。
• このプリプロセッサを必要とする侵入ルールが、このプリプロセッサが無効にされている侵入ポリシーで有効になっている場合は、そのポリシーを保存する前に、このプリプロセッサを有効にするか、またはシステムが自動的にこのプリプロセッサを有効にできるように許可する必要があります。詳細については、「詳細設定の自動有効化」を参照してください。
詳細については、次の項を参照してください。
• 「SSL 前処理について」
• 「SSL プリプロセッサ ルールの有効化」
• 「SSL プリプロセッサの設定」
SSL 前処理について
ライセンス:Protection
SSL プリプロセッサは暗号化データのインスペクションを停止します。これにより誤検出を排除できます。SSL プリプロセッサは、SSL ハンドシェイクを検査するときに状態情報を保持し、そのセッションの状態と SSL バージョンの両方を追跡します。セッションの状態が暗号化されていることをプリプロセッサが検出すると、そのセッションのトラフィックは暗号化されているものとしてシステムによりマークされます。暗号化の確立時に、暗号化セッションですべてのパケットの処理を停止するようにシステムを設定できます。
パケットごとに、IP 見出し、TCP 見出し、および TCP ペイロードがトラフィックに含まれており、このトラフィックが SSL 前処理用に指定されているポートで発生することが SSL プリプロセッサにより確認されます。次に示す状況では、対象トラフィックについて、トラフィックが暗号化されているかどうかが判別されます。
• システムがセッションのすべてのパケットを監視し、[Server side data is trusted] が有効にされておらず、サーバとクライアントの両方からの完了メッセージ、および Application レコードが存在するが Alert レコードがない各側からの 1 つ以上のパケットが、セッションに含まれている。
• システムがトラフィックの一部を検出せず、[Server side data is trusted] が有効にされておらず、Alert レコードによる応答がない Application レコードが存在する各側からの 1 つ以上のパケットが、セッションに含まれている。
• システムがセッションのすべてのパケットを監視し、[Server side data is trusted] が有効であり、クライアントからの完了メッセージ、および Application レコードが存在するが Alert レコードがないクライアントからの 1 つ以上のパケットが、セッションに含まれている。
• システムがトラフィックの一部を検出せず、[Server side data is trusted] が有効であり、Alert レコードによる応答がない Application レコードが存在するクライアントからの 1 つ以上のパケットが、セッションに含まれている。
暗号化トラフィックの処理を停止することを選択する場合、セッションが暗号化されているものとしてマークされると、そのセッションのその後のパケットは無視されます。
注 ルール内で SSL 状態またはバージョン情報を使用するには、キーワード ssl_state
および ssl_version
をルールに追加します。詳細については、「セッションからの SSL 情報の抽出」を参照してください。SSL プリプロセッサが SSL キーワードを含むルールの処理を許可できるように設定されている必要があることに注意してください。
SSL プリプロセッサ ルールの有効化
ライセンス:Protection
有効である場合、SSL プリプロセッサは、SSL セッション開始時に交換されるハンドシェイクと鍵交換メッセージの内容を検査します。
ジェネレータ ID(GID)137 の SSL プリプロセッサ ルールを使用してイベントを生成する場合は、これらのルールを有効にする必要があることに注意してください。設定ページのリンクから、侵入ポリシーの [Rules] ページの SSL プリプロセッサ ルールのフィルタ ビューに移動できます。このページでは、ルールを有効または無効にし、他のルール アクションを設定できます。詳細については、「ルール状態の設定」を参照してください。
次の表に、有効にできる SSL プリプロセッサ ルールを示します。
表 25-12 SSL プリプロセッサ ルール
|
|
137:1 |
server hello の後の client hello(これは無効で、異常な動作とみなされる)を検出します。 |
137:2 |
[Server side data is trusted] が無効な場合に、client hello のない server hello を検出します。これは無効であり、異常な動作としてみなされます。詳細については、「SSL プリプロセッサの設定」を参照してください。 |
SSL プリプロセッサの設定
ライセンス:Protection
デフォルトでは、暗号化トラフィックの検査が試行されます。SSL プリプロセッサを有効にすると、セッションが暗号化されたときにそのことを検出します。SSL プリプロセッサが有効にされると、ルール エンジンがこのプリプロセッサを呼び出し、SSL の状態およびバージョン情報を取得できるようになります。侵入ポリシーでキーワード ssl_state
および ssl_version
を使用してルールを有効にする場合は、そのポリシーで SSL プリプロセッサも有効にする必要があります。
また、暗号化セッションによるインスペクションと再構成を無効にするには、[Stop inspecting encrypted traffic] オプションを有効にします。SSL プリプロセッサによりセッションの状態が維持されるため、セッションのすべてのトラフィックのインスペクションを無効にできます。システムが暗号化セッションのトラフィックのインスペクションを停止するのは、SSL 前処理が有効であり、 かつ [Stop inspecting encrypted traffic] オプションが選択されている場合だけです。
サーバ トラフィックのみに基づいて暗号化トラフィックを識別するには、[Server side data is trusted] オプションを有効にできます。つまり、トラフィックが暗号化されていることを示すサーバ側のデータが信頼されます。SSL プリプロセッサは通常、クライアント トラフィックと、そのトラフィックに対するサーバの応答の両方を調べ、セッションが暗号化されているかどうかを判別します。ただし、セッションの両側を検出できない場合には、システムはトランザクションを暗号化されているものとしてマークしないため、セッションが暗号化されていることを示す SSL サーバを信頼できます。[Server side data is trusted] オプションを有効にする場合は、[Stop inspecting encrypted traffic] オプションも有効にして、システムが暗号化セッションのトラフィックの検査を続行しないようにする必要があることに注意してください。
プリプロセッサがトラフィックで暗号化セッションをモニタするポートを指定できます。
注 SSL プリプロセッサは、SSL モニタの対象として指定されたポートで SSL 以外のトラフィックを検出すると、そのトラフィックを SSL トラフィックとしてデコードすることを試みた後、破損しているものとしてマークします。
SSL プリプロセッサの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [Application Layer Preprocessors] の下の [SSL Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[SSL Configuration] ページが表示されます。ページ下部に表示されるメッセージに、この設定が含まれている侵入ポリシー層が示されます。詳細については、「侵入ポリシーでのレイヤの使用」を参照してください。
ステップ 5 SSL プリプロセッサが、暗号化されたセッションのトラフィックをモニタする必要があるポートを、カンマで区切って入力します。[Ports] フィールドに指定されるポートでのみ、暗号化トラフィックが検査されます。
ステップ 6 [Stop inspecting encrypted traffic] チェック ボックスをクリックして、セッションが暗号化されているものとしてマークされた後のそのセッションでのトラフィックのインスペクションを有効または無効にします。
ステップ 7 [Server side data is trusted] チェック ボックスをクリックして、クライアント側のトラフィックだけに基づく暗号化トラフィックの識別を有効または無効にします。
ステップ 8 オプションで、ページの上部にある [Configure Rules for SSL Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [SSH Configuration] ページに戻ります。
ステップ 9 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
SCADA プリプロセッサの操作
ライセンス:Protection
Supervisory Control and Data Acquisition(SCADA)プロトコルは、製造、水処理、配電、空港、輸送システムなどの工業プロセス、インフラストラクチャ プロセス、および設備プロセスからのデータをモニタ、制御、取得します。FireSIGHT システムは、Modbus プロトコルおよび DNP3 SCADA プロトコル向けプリプロセッサを提供しています。
詳細については、次の項を参照してください。
• 「Modbus プリプロセッサの設定」
• 「DNP3 プリプロセッサの設定」
Modbus プリプロセッサの設定
ライセンス:Protection
Modbus プロトコルは 1979 年に Modicon が初めて発表した、広く利用されている SCADA プロトコルです。Modbus プリプロセッサは、Modbus トラフィックの異常を検出し、ルール エンジンによる処理のために Modbus プロトコルをデコードします。ルール エンジンは Modbus キーワードを使用して特定のプロトコル フィールドにアクセスします。詳細については、「Modbus キーワード」を参照してください。
1 つの構成オプションで、プリプロセッサが Modbus トラフィックを検査するポートのデフォルト設定を変更できます。
イベントを生成するには、次の表に示す Modbus プリプロセッサ ルールを有効にする必要があります。ルールの有効化については、「ルール状態の設定」を参照してください。
表 25-13 Modbus プリプロセッサ ルール
|
|
144:1 |
Modbus の見出しの長さが、Modbus 機能コードに必要な長さと一致していない場合に、イベントが生成されます。 各 Modbus 機能の要求と応答には期待される形式があります。メッセージの長さが、期待される形式と一致しない場合に、このイベントが生成されます。 |
144:2 |
Modbus プロトコル ID がゼロ以外の場合に、イベントが生成されます。プロトコル ID フィールドは、Modbus と共にその他のプロトコルを多重伝送するために使用されます。プリプロセッサはこのような他のプロトコルを処理しないため、代わりにこのイベントが生成されます。 |
144:3 |
プリプロセッサが予約済み Modbus 機能コードを検出すると、イベントが生成されます。 |
Modbus プリプロセッサの使用に関する次の情報に注意してください。
• ネットワークに Modbus 対応デバイスが含まれていない場合は、トラフィックに適用する侵入ポリシーでこのプリプロセッサを有効にしないでください。
• Modbus プリプロセッサは、TCP ストリームの設定を必要とします。Modbus プリプロセッサを有効にした場合に、TCP ストリームの設定が無効になっていると、ポリシーの保存時に詳細設定を有効にするかどうかが尋ねられます。
詳細については、「TCP ストリームの前処理の設定」および 「詳細設定の自動有効化」を参照してください。
• Modbus キーワードを使用したルールの処理を許可するには、TCP ストリーム設定と Modbus プリプロセッサの両方を有効にする必要があります。いずれかが無効である場合に Modbus キーワードを使用するルールを有効にすると、ポリシーの保存時に無効になっている詳細設定を有効にするかどうかが尋ねられます。「詳細設定の自動有効化」を参照してください。
Modbus プリプロセッサがモニタするポートを変更するには、次の手順を使用します。
Modbus プリプロセッサの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [SCADA Preprocessors] の下の [Modbus Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[Modbus Configuration] ページが表示されます。
ステップ 5 オプションで、プリプロセッサが Modbus トラフィックを検査するポートを変更します。0 ~ 65535 の整数を指定できます。複数のポートを指定する場合はカンマで区切ります。
ステップ 6 オプションで、ページの上部にある [Configure Rules for Modbus Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [Modbus Configuration] ページに戻ります。
ステップ 7 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。
DNP3 プリプロセッサの設定
ライセンス:Protection
Distributed Network Protocol(DNP3)は、もともとは発電所間で一貫性のある通信を実現する目的で開発された SCADA プロトコルです。DNP3 も、水処理、廃棄物処理、輸送などさまざまな産業分野で幅広く利用されるようになっています。
DNP3 プリプロセッサは、DNP3 トラフィックの異常を検出し、ルール エンジンによる処理のために DNP3 プロトコルをデコードします。ルール エンジンは DNP3 キーワードを使用して特定のプロトコル フィールドにアクセスします。詳細については、「DNP3 キーワード」を参照してください。
イベントを生成するには、次の表に示す DNP3 プリプロセッサ ルールを有効にする必要があります。ルールの有効化については、「ルール状態の設定」を参照してください。
表 25-14 DNP3 プリプロセッサ ルール
|
|
145:1 |
[Log bad CRC] が有効である場合に、無効なチェックサムを含むリンク層フレームがプリプロセッサにより検出されると、イベントが生成されます。 |
145:2 |
無効な長さの DNP3 リンク層フレームがプリプロセッサにより検出されると、イベントが生成され、パケットがブロックされます。 |
145:3 |
再構成中に無効なシーケンス番号のトランスポート層セグメントがプリプロセッサにより検出されると、イベントが生成され、パケットがブロックされます。 |
145:4 |
完全なフラグメントを再構成する前に DNP3 再構成バッファがクリアされると、イベントが生成されます。このことは、FIR フラグを伝送するセグメントが、他のセグメントがキューに入れられた後で現れる場合に発生します。 |
145:5 |
予約済みアドレスを使用する DNP3 リンク層フレームをプリプロセッサが検出すると、イベントが生成されます。 |
145:6 |
予約済み機能コードを使用する DNP3 要求または応答をプリプロセッサが検出すると、イベントが生成されます。 |
DNP3 プリプロセッサの使用に関する次の情報に注意してください。
• ネットワークに DNP3 対応デバイスが含まれていない場合は、トラフィックに適用する侵入ポリシーでこのプリプロセッサを有効にしないでください。
• DNP3 プリプロセッサは、TCP ストリーム設定を必要とします。DNP3 プリプロセッサを有効にした場合に、TCP ストリームの設定が無効になっていると、ポリシーの保存時に詳細設定を有効にするかどうかが尋ねられます。
詳細については、「TCP ストリームの前処理の設定」および 「詳細設定の自動有効化」を参照してください。
• DNP3 キーワードを使用したルールの処理を可能にするには、TCP ストリーム設定と DNP3 プリプロセッサの両方を有効にする必要があります。いずれかが無効である場合に DNP3 キーワードを使用するルールを有効にすると、ポリシーの保存時に無効になっている詳細設定を有効にするかどうかが尋ねられます。詳細については、「詳細設定の自動有効化」を参照してください。
設定できる DNP3 プリプロセッサ オプションを以下で説明します。
Ports
指定された各ポートでの DNP3 トラフィックのインスペクションを有効にします。1 つのポートか、複数ポートをカンマで区切ったリストを指定できます。各ポートに 0 ~ 65535 の値を指定できます。
Log bad CRCs
有効である場合、DNP3 リンク層フレームに含まれているチェックサムが検証されます。無効なチェックサムを含むフレームは無視されます。
無効なチェックサムが検出されたときにイベントを生成するには、ルール 145:1 を有効にします。
DNP3 プリプロセッサの設定方法:
アクセス:Admin/Intrusion Admin
ステップ 1 [Policies] > [Intrusion] > [Intrusion Policy] の順に選択します。
[Intrusion Policy] ページが表示されます。
ステップ 2 編集するポリシーの横にある編集アイコン( )をクリックします。
別のポリシーに未保存の変更がある場合に変更を破棄し、操作を続行するには、[OK] をクリックします。別のポリシーでの未保存の変更の保存方法については、「侵入ポリシー変更のコミット」を参照してください。
[Policy Information] ページが表示されます。
ステップ 3 左側のナビゲーション パネルの [Advanced Settings] をクリックします。
[Advanced Settings] ページが表示されます。
ステップ 4 [SCADA Preprocessors] の下の [DNP3 Configuration] を有効にしているかどうかに応じて、2 つの選択肢があります。
• 設定が有効である場合は、[Edit] をクリックします。
• 設定が無効である場合は、[Enabled] をクリックし、次に [Edit] をクリックします。
[DNP3 Configuration] ページが表示されます。
ステップ 5 オプションで、プリプロセッサが DNP3 トラフィックを検査するポートを変更します。0 ~ 65535 の整数を指定できます。複数のポートを指定する場合はカンマで区切ります。
ステップ 6 オプションで、[Log bad CRCs] チェック ボックスをオンまたはオフにして、DNP3 リンク層フレームに含まれているチェックサムを検証し、無効なチェックサムのフレームを無視するかどうかを指定します。
ステップ 7 オプションで、ページの上部にある [Configure Rules for DNP3 Configuration] をクリックし、個々のオプションに関連付けられているルールを表示できます。
[Back] をクリックして [DNP3 Configuration] ページに戻ります。
ステップ 8 ポリシーを保存するか、編集を続行するか、変更内容を破棄するか、ベース ポリシーのデフォルト設定に戻すか、またはシステム キャッシュの変更を反映せずに終了します。詳細については、 「一般的な侵入ポリシー編集操作」 の表を参照してください。