Cisco ACE Web Application Firewall ユーザ ガイド
Web アプリケーションの保護
Web アプリケーションの保護
発行日;2012/01/11 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 3MB) | フィードバック

目次

Web アプリケーションの保護

概要

Web アプリケーションのポリシー コンポーネント

Web アプリケーションのセキュリティを確保するためのポリシー開発手順

ルールとシグニチャの拡張

メッセージとハンドラの照合

Web アプリケーションのセキュリティ アクティビティの監視

基本設定のアップデート

Web アプリケーションの保護

このマニュアルでは、Cisco ACE Web Application Firewall を使用して Web アプリケーションを保護する方法を説明します。内容は次のとおりです。

概要

Web アプリケーションのポリシー コンポーネント

Web アプリケーションのセキュリティを確保するためのポリシー開発手順

ルールとシグニチャの拡張

メッセージとハンドラの照合

Web アプリケーションのセキュリティ アクティビティの監視

概要

バックエンド Web アプリケーションを保護するには、ポリシーの中にそのための仮想 Web アプリケーション オブジェクトを作成します。仮想 Web アプリケーションは、特定のバックエンド アプリケーションに、アプリケーションのトラフィックに適用されるルールと処理動作のセットを関連付けます。要求は、ポリシー内の 1 つの仮想 Web アプリケーションだけに結び付けることができます。

クライアントは、ポリシー内でアプリケーションに定義されたユーザ インターフェイスに要求を送信することによって、Firewall でプロキシされるアプリケーションにアクセスします。ACE Web Application Firewall で仮想 Web アプリケーションのトラフィック フィルタリング基準に一致したトラフィックだけが許可されます。その他のトラフィックはすべて廃棄されます。

ACE Web Application Firewall では、さまざまな方法で要求を検証し、処理することができます。また、潜在的なコマンド インジェクション攻撃やクロスサイト スクリプティング攻撃を示す文字パターンなど、要求内に有害の可能性があるコンテンツがないか調べることができます。さらに、HTTP ヘッダーを追加または削除し、cookie を検証し、その他のタスクを実行することもできます。

検証され、処理されたメッセージは、バックエンド アプリケーションに転送されます。バックエンド アプリケーションの観点からすると、ACE Web Application Firewall は完全な逆プロキシであり、アプリケーションには ACE Web Application Firewall が要求元として表示されます (ACE Web Application Firewall では、必要に応じて X-Forwarded-For などの HTTP ヘッダーを使用して、バックエンド システムに対する実際のメッセージ ソースを識別することもできます)。ACE Web Application Firewall は応答を受け取ると、同様にその応答を検査し、機密情報のスクリーニング、cookie の暗号化、またはエラー応答のマッピングなどの処理を行うことができます。

仮想 Web アプリケーション ポリシー オブジェクトは、外部の Web アプリケーションに対してトラフィックをどのように処理するかを決定します。このオブジェクトは、次の主要な機能で構成されます。

ユーザ要求のフィルタ。この仮想 Web アプリケーションで処理する着信要求を選択します。

プロファイル参照。この仮想 Web アプリケーションのトラフィックに適用する検証と処理の方法を決定します。

サーバ参照。発信要求の宛先を決定します。

Cisco ACE Web Application Firewall ポリシーでは、仮想 Web アプリケーションの定義はそれぞれ仮想 Web アプリケーション グループに属します。グループにまとめることで、関連する複数の仮想 Web アプリケーションを管理しやすくなります。また、グループはロギングやレポーティングのための組織ユニットになります。たとえば、[Web App Firewall Incidents] レポートには、所定のグループに当てはまるイベントだけを表示できます。

Web アプリケーションのポリシー コンポーネント

Web アプリケーション セキュリティに対する Firewall のポリシーを開発するには、まず、Web アプリケーションの保護に使用するポリシー コンポーネントについて知っておく必要があります。

メッセージ ルール

ルール は、メッセージに対して実行される 1 つのチェックを表したポリシー コンポーネントです。ルールは、チェックするメッセージの部分と、チェックに使用するシグニチャを識別します。ルールには、次の 2 つのタイプがあります。

メッセージ検査ルール は、メッセージに特定のコンテンツが存在するかどうかをチェックし、存在する場合は、メッセージ全体に対して動作を実行します(メッセージの遮断や、イベント ログ付きでの通過の許可など)。このタイプのルールは通常、有害なメッセージの識別と遮断に使用されます。

コンテンツ リライト ルール は、メッセージ内で一致したコンテンツを置換文字に変更できます。このタイプのルールは、プライベートな情報がバックエンド システムで不適切に出力されないようにするのに役立ちます。

シグニチャ

ルールは、 シグニチャ とメッセージ コンテンツとの一致に基づいてメッセージに適用されます。シグニチャは、対象のコンテンツを照合するためにメッセージ コンテンツに適用されるパターンです。ルールと同様に、シグニチャはグループにまとめられています。シグニチャは、数字や文字を含む固定の文字セットか、正規表現パターンのいずれかを使用してトラフィック コンテンツを照合します。

プロファイル

ルールは、 プロファイル によって Firewall でトラフィックのクラスに適用されます。プロファイルは、ルール グループとアクティブなセキュリティ設定の名前付きの集合です。プロファイルは、プロファイルのコンテキストで有効であるルール グループ(他のプロファイルでは有効なルールが異なる場合があります)と、設定可能な値を示します。設定可能なルールの設定には、ルール照合で実行される動作などがあります。プロファイルは、仮想 Web アプリケーションの設定からトラフィックに適用されます。

仮想 Web アプリケーション

仮想 Web アプリケーション は、特定のバックエンド アプリケーションのトラフィックを保護するための主要なポリシー オブジェクトです。仮想 Web アプリケーションは、特定のバックエンド アプリケーションのトラフィックに、メッセージ トラフィックの処理と保護を目的としたルールと動作のセットを関連付けます。

修飾子

仮想 Web アプリケーションは修飾子を持つことができます。仮想 Web アプリケーションと同様に、修飾子は、選択されたトラフィックにルールおよびセキュリティ動作を適用します。しかし、修飾子は、仮想 Web アプリケーションで処理されるトラフィックからのトラフィックだけを選択します。修飾子は、それが含まれる仮想 Web アプリケーションによって処理されるトラフィックのサブセットにトラフィック処理設定を適用します。修飾子は通常、仮想 Web アプリケーションに定義されたルールの免除を定義するために使用されます。

Web アプリケーションのセキュリティを確保するためのポリシー開発手順

Web アプリケーション セキュリティのポリシーの開発は通常、反復プロセスであり、開発、テスト、および導入の手順が繰り返されます。効果的なポリシーを開発するための一般的な作業フローは、次のとおりです。

1. 初期プロファイルを構成します。通常、必要以上に厳密なプロファイルから始め、テストによるガイドに従ってプロファイルを緩めていきます(確信がない場合は、Payment Card Industry(PCI)コンプライアンスのコピーから始めてください)。

2. プロファイルを使用する仮想 Web アプリケーションを監視モードで作成します (新規の仮想 Web アプリケーションを監視モードで作成するオプションを有効にするように選択できます)。

3. ポリシーを導入します。

4. 予期される大量のトラフィックを ACE Web Application Firewall を介して Web アプリケーションに送信することにより、ポリシーをテストします。トラフィックは監視モードで検査されるので、要求は遮断されません。

5. 検査レポートをチェックして、最も多くのインシデントを引き起こしたルールを確認します。インシデントから false positive を識別し、必要に応じてプロファイルを変更して、不要なルールやシグニチャを無効にするか免除することによって false positive を回避します。

6. このプロセスを必要なだけ繰り返して、セキュリティを維持する一方で発生し得る false positive を軽減します。

ポリシーを実稼動環境に導入した後は、インシデント レポートで false positive や悪意のあるアクティビティを監視します。

ルールとシグニチャの拡張

Cisco ACE Web Application Firewall には、Web アプリケーションとそのユーザを保護するために使用できる組み込みルールおよびシグニチャのライブラリが含まれています。組み込みルールは、クロスサイト スクリプティング攻撃、Structured Query Language(SQL)および Lightweight Directory Access Protocol(LDAP)インジェクション攻撃、およびコマンド インジェクション攻撃など、システムに対する一般的なタイプの多数の攻撃および脅威を防止するためのものです。また、ルールとシグニチャを独自に作成して、組み込みルールとシグニチャを補うことができます。ACE Web Application Firewall システムにはルールおよびシグニチャの作成構文が用意されており、これを利用して、アプリケーション固有のルールとシグニチャをシステムに追加することができます。

メッセージとハンドラの照合

着信要求は、ACE Web Application Firewall でアプリケーションに定義されたユーザ インターフェイスに基づいて、所定の仮想 Web アプリケーションと照合されます。メッセージの照合が不明確にならないように、Manager では 2 つの仮想 Web アプリケーションに同一のユーザ インターフェイスを設定することが禁止されています。ただし、プレフィクスの照合、正規表現、またはその他のユーザ インターフェイスのフィルタリング条件を使用して、1 つの要求で複数の仮想 Web アプリケーションを照合できるポリシーを設定することができます。

メッセージが複数の仮想 Web アプリケーションに一致する場合は、より特異的なユーザ インターフェイスを持つアプリケーションが選択されます。たとえば、仮想 URL の場合、より長いパスを持つユーザ インターフェイスが選択されることを意味します。つまり、次の URL を持つ 2 つの仮想 Web アプリケーションでプレフィクス照合を使用するとします。

http://example.cisco.com/private

http://example.cisco.com/

http://example.cisco.com/private/index.html に対する要求は、2 つ目の仮想 Web アプリケーションにも一致しますが、最初の仮想 Web アプリケーションによって処理されます。同一の仮想 URL を持つアプリケーションについて、次のような他のユーザ インターフェイス機能を使用して特異性を判断することができます。

HTTP 方式

GET/POST パラメータ

HTTP ヘッダー

これらのプロパティに基づいて特異性を判断するうえで、ACE Web Application Firewall は次のガイドラインに従います。

1. 要求 URL とユーザ インターフェイス URL の間で正確に一致するパスが常に、最も特異的と見なされます。

2. プレフィクスおよび正規表現パスは、長さによって比較され、長いほうのパスがより特異的と見なされます。

3. 仮想 URL を使用して判断できない場合は、パラメータおよび HTTP ヘッダーの照合基準が考慮されます。より多くのパラメータまたは HTTP ヘッダー要件を定義するユーザ インターフェイスが、より特異的と見なされます。

メッセージに対する複数のハンドラの一致を特異性の優先では解決できない場合、ACE Web Application Firewall は一致するハンドラのいずれかを選択しますが、不明確さがどのように解決されるかはポリシーの設計時には予測できません。通常、不明確なハンドラの一致を招くようなポリシーの設定は回避するようにしてください。

Web アプリケーションのセキュリティ アクティビティの監視

ACE Web Application Firewall システムのモニタリング ツールを利用すると、幅広い視野でメッセージ処理アクティビティを監視できます。ポリシー開発時には、モニタリング ツールは効果的なポリシーの作成と相互運用上の問題のトラブルシューティングに役立ちます。ポリシーを実稼動環境に導入した後は、ネットワークに対する脅威を識別し、ネットワークとアプリケーション リソース上の作業負荷を評価するためにモニタリング ツールが重要になります。

ACE Web Application Firewall は、Web アプリケーションのセキュリティ アクティビティの情報を複数の形式で表します。[Dashboard] ページのトラフィック モニタ グラフは、ハンドラによるトラフィック処理率の動的な情報を示します。サービス状態のサマリには、Web アプリケーションのセキュリティに関するインシデントのハイレベルなビューが表示されます。インシデントとは、メッセージ検査ルール、メッセージ リライト ルール、またはアクティブなセキュリティ機能などの Web アプリケーション プロファイル機能が監視モードまたは有効モードでメッセージに適用されるイベントです。

[Dashboard] には、システムのアクティビティとイベントの概要が表示されます。より詳しい情報を得るには、イベント ログや Web アプリケーション ファイアウォールのインシデント レポートを使用できます。イベント ログには、すべてのシステム アクティビティの詳細情報が表示されます。一方、Web アプリケーション ファイアウォールのインシデントのページには、特に Cisco ACE Web Application Firewall の Web アプリケーション セキュリティ アクティビティに関する統計情報が表示されます。

インシデント レポートには、特定の仮想 Web アプリケーションで受信されたメッセージの数と、仮想 Web アプリケーションによって適用される特定のルールが始動された回数が表示されます。それによって、ACE Web Application Firewall に見られる脅威のタイプと、それらの脅威の宛先をすばやく判断することができます。

仮想 Web アプリケーションまたはルールは、監視モードで機能することに注意してください。メッセージを監視モードで処理すると、メッセージが違反しているすべてのルールが報告されます。一方、有効モードでは、最初のインスタンスでブロッキング ルールが始動してメッセージが拒否されるので、それ以上プロファイルの他のルールを使用して評価されることはありません。つまり、イベント ログまたはインシデント レポートには、メッセージを遮断する原因となったルールだけが表示され、違反の可能性があるその他のルールの処理は続行されません。


) インシデント レポートには、最新の 24,000 イベントだけが表示されます。この制限を超えると、統計内で最も古い情報が表示されなくなります。配置において履歴情報の保存が重要である場合は、必ず [Web App Firewall Incidents] ページからインシデント情報を定期的にファイルにエクスポートしてください。


インシデント レポートを使用するには、ナビゲーション メニューの [Web App Firewall Incidents] リンクをクリックします。このページでは、次のようにビューを設定できます。

[URL]:クライアントの要求 URL 別にまとめられた統計を示します。

[Virtual Web App]:ポリシー内の仮想 Web アプリケーション オブジェクト別にまとめられた統計を示します。

[Web App Group]:仮想 Web アプリケーション グループ別にまとめられた統計を示します。

[Rule Set]:ルール グループ別にまとめられた統計を示します。

後でポリシーから削除された仮想 Web アプリケーションに関連するインシデントが反映されるのは、ルール セットでソートされた統計だけです。表示を URL 別または仮想 Web アプリケーション別でソートすると、ポリシーから削除された仮想 Web アプリケーションに関するインシデントは統計に反映されません。

また、ビューを時間でフィルタリングして、指定した時間内に発生した統計を表示することもできます。

[Export Raw Data] ボタンをクリックすると、表示された情報をアーカイブや分析用にファイルにエクスポートすることができます。統計は、カンマ区切り値ファイルか、XML 形式のファイルに出力されます。エクスポートしたデータには、現在ページ内で選択されている時間枠が反映されることに注意してください。


) インシデント レポートを表示する際は、サブポリシー間で移動したハンドラがハンドラ名ではなく、移動前のサブポリシーでのアクティビティに対応した内部オブジェクト番号で識別されることに注意してください。


基本設定のアップデート

基本設定には、組み込みシグニチャ、ルール、およびプロファイルなど、Web アプリケーションを保護するために Cisco ACE Web Application Firewall で使用される組み込みアーティファクトおよびリソースが含まれています。

シスコは、不定期に基本設定のアップデートを発行したり、サード パーティによる基本設定のアップデートを認証したりすることがあります。アップデートには通常、組み込みシグニチャ、ルール、およびプロファイルの強化または拡張機能が含まれます。基本設定のアップデートを適用すると、システムに新しいルールとシグニチャが導入されます。

基本設定のアップデートの実行には、シスコが認証した基本設定ファイル以外は使用しないでください。この機能は、ユーザが作成したファイルのアップロードを意図したものではありません。基本設定パッケージは、新しい基本設定データを含む署名付きのアーカイブ ファイルで構成されています。

新しい基本設定を適用するには、[Rules & Signatures] ページで [Update Base Configuration] ボタンをクリックします。[Update Base Configuration] ページで、基本設定アップデート ファイルをロードします。

基本設定をアップデートしても、既存のポリシー設定には影響しません。つまり、組み込みのシグニチャ、ルール、およびプロファイルに依存する現在の設定は、基本設定のアップデートを適用した後でもそのまま維持されます。

基本設定には、YYYYMMDDXX の形式のバージョン識別子があります。バージョン識別子の構成要素は次のとおりです。

YYYY は発行年です。

MM は、先行ゼロを伴う発行月です。

DD は、先行ゼロを伴う発行日です。

XX は、2 桁の 10 進数で表した 1 日の発行数です。

基本設定をアップロードすると、インストールしている基本設定がすでにインストール済みの基本設定の 後に 発行されたものであることが、Manager によって確認されます。そうでない場合は、Manager が警告を出しますが、古い基本設定ファイルのロードは続行することができます。ただし、新しい基本設定を古い基本設定で更新することは推奨されません。古い基本設定で更新すると、それより新しい基本設定のルールまたはシグニチャに依存する設定でコンパイル エラーが発生します。