Citrix ADC

コンテンツタイプの管理

Webサーバーは、各コンテンツタイプのMIME/タイプ定義を持つコンテンツタイプヘッダーを追加します。Web サーバーは、さまざまな種類のコンテンツを提供します。たとえば、標準HTMLには「テキスト/html」MIMEタイプが割り当てられます。JPG画像には、「画像/JPEG」または「画像/JPG」のコンテンツタイプが割り当てられます。通常のWebサーバーは、割り当てられたMIME /タイプによってコンテンツタイプヘッダーに定義されたコンテンツの異なるタイプを提供することができます。

多くの Web App Firewall フィルタリングルールは、特定のコンテンツタイプをフィルタリングするように設計されています。フィルタ規則は、HTML など、ある種類のコンテンツに適用され、異なる種類のコンテンツ (画像など) をフィルタリングする場合には不適切であることがよくあります。その結果、Web App Firewall は、要求と応答のコンテンツタイプをフィルタリングする前に判断しようとします。Web サーバーまたはブラウザーが要求または応答に Content-Type ヘッダーを追加しない場合、Web App Firewall はデフォルトのコンテンツタイプを適用し、それに応じてコンテンツをフィルタリングします。

デフォルトのコンテンツタイプは、通常、最も一般的なMIME/タイプ定義を持つ「アプリケーション/オクテットストリーム」です。MIME/タイプは、Webサーバーがサービスを提供する可能性が高いすべてのコンテンツタイプに適しています。しかし、適切なフィルタリングを選択できるようにするために、Web App Firewall に多くの情報を提供しません。保護された Web サーバーが正確なコンテンツタイプヘッダーを追加するように構成されている場合、Web サーバーのプロファイルを作成し、そのサーバーに既定のコンテンツタイプを割り当てることができます。これは、フィルタリングの速度と精度の両方を向上させるために行われます。

また、特定のプロファイルに対して許可された要求コンテンツタイプのリストを構成することもできます。この機能が構成されている場合、Web App Firewall が、許可されているコンテンツタイプのいずれにも一致しない要求をフィルタリングすると、要求がブロックされます。リリース 10.5 から 11.0 へのアップグレード後、デフォルトの許可コンテンツタイプリストにない不明なコンテンツタイプはバインドされません。あなたは、リラックスしたルールに許可したい他のコンテンツタイプを追加することができます。

リクエストは、常に「アプリケーション/x-www-form-urlencoded」、「マルチパート/フォームデータ」、または「テキスト/x-gwt-rpc」のいずれかのタイプでなければなりません。Web App Firewall は、他のコンテンツタイプが指定されているリクエストをブロックします。

許可された応答コンテンツタイプのリストには、「application/x-www-form-urlencoded」または「マルチパート/フォームデータ」コンテンツタイプを含めることはできません。

コマンドラインインターフェイスを使用して既定の要求コンテンツタイプを設定するには

コマンドプロンプトで、次のコマンドを入力します。

  • set appfw profile <name> -requestContentType <type>
  • save ns config

次の例では、指定したプロファイルのデフォルトとして「text/html」コンテンツタイプを設定します。

set appfw profile profile1 -requestContentType "text/html"
save ns config

コマンドラインインターフェイスを使用してユーザー定義の既定の要求コンテンツタイプを削除するには

コマンドプロンプトで、次のコマンドを入力します。

  • unset appfw profile <name> -requestContentType <type>
  • save ns config

次の例では、指定されたプロファイルのデフォルトのコンテンツタイプ「text/html」を設定解除し、タイプを「application/octet-stream」に戻すことができます。

unset appfw profile profile1 -requestContentType "text/html"
save ns config

常に最後のコンテンツタイプヘッダーを処理に使用し、バックエンドサーバーが1つのコンテンツタイプのみで要求を受信することを保証する場合は、残りのコンテンツタイプヘッダーを削除します。

バイパスできるリクエストをブロックするには、ルールを HTTP.REQ.HEADER (「コンテンツタイプ」) .COUNT.GT (1) ‘として追加し、プロファイルを appfw_block として追加します

要求が Content-Type ヘッダーなしで受信された場合、または要求に値がない Content-Type ヘッダーがある場合、Web App Firewall は設定された RequestContentType 値を適用し、それに応じて要求を処理します。

コマンドラインインターフェイスを使用してデフォルトの応答コンテンツタイプを設定するには

コマンドプロンプトで、次のコマンドを入力します。

  • set appfw profile <name> -responseContentType <type>
  • save ns config

次の例では、指定したプロファイルのデフォルトとして「text/html」コンテンツタイプを設定します。

set appfw profile profile1 -responseContentType "text/html"
save ns config

コマンドラインインターフェイスを使用してユーザー定義の既定の応答コンテンツタイプを削除するには

コマンドプロンプトで、次のコマンドを入力します。

  • unset appfw profile <name> -responseContentType <type>
  • save ns config

次の例では、指定されたプロファイルのデフォルトのコンテンツタイプ「text/html」を設定解除し、タイプを「application/octet-stream」に戻すことができます。

unset appfw profile profile1 -responseContentType "text/html"
save ns config

コマンドラインインターフェイスを使用して、許可されたコンテンツタイプの一覧にコンテンツタイプを追加するには

コマンドプロンプトで、次のコマンドを入力します。

  • bind appfw profile <name> -ContentType <contentTypeName>
  • save ns config

次の例では、指定したプロファイルの許可されたコンテンツタイプリストに「text/shtml」コンテンツタイプを追加します。

bind appfw profile profile1 -contentType "text/shtml"
save ns config

コマンドラインインターフェイスを使用して、許可されたコンテンツタイプの一覧からコンテンツタイプを削除するには

コマンドプロンプトで、次のコマンドを入力します。

  • unbind appfw profile <name> -ContentType <contentTypeName>
  • save ns config

次の例では、指定したプロファイルの許可されたコンテンツタイプリストから「text/shtml」コンテンツタイプを削除します。

unbind appfw profile profile1 -contentType "text/shtml"
save ns config

URL エンコードされたコンテンツタイプとマルチパートフォームのコンテンツタイプの管理

Citrix ADC Web App Firewall では、フォームに対してURLエンコードされたコンテンツタイプとマルチパートフォームのコンテンツタイプを構成できるようになりました。コンテンツタイプの設定は、XML および JSON リストに似ています。設定に基づいて、Web App Firewall はリクエストを分類し、URL エンコードまたはマルチパートフォームのコンテンツタイプを検査します。

Web App Firewall プロファイルに Urlencoded コンテンツタイプと Multipart-Form コンテンツタイプ を構成するにはコマンドプロンプトで次のように入力します。

bind appfw profile p2 -contentType <string>

例:

bind appfw profile p2 -contentType UrlencodedFormContentType

bind appfw profile p2 -ContentType appfwmultipartform

GUI を使用して既定のコンテンツタイプと許可されたコンテンツタイプを管理するには

  1. [セキュリティ] > [Web App Firewall] > [プロファイル] に移動します。
  2. 詳細ウィンドウで、構成するプロファイルを選択し、[編集] をクリックします。[Web App Firewall プロファイルの設定] ダイアログボックスが表示されます。
  3. [Web App Firewall プロファイルの設定] ダイアログボックスで、[設定] タブをクリックします。
  4. [設定] タブで、[コンテンツタイプ] 領域まで半分ほど下にスクロールします。
  5. [Content Type] 領域で、デフォルトの要求または応答コンテンツタイプを設定します。
    • 既定の要求コンテンツタイプを構成するには、使用するコンテンツタイプの MIME /タイプの定義を [既定の要求] テキストボックスに入力します。
    • 既定の応答コンテンツタイプを構成するには、使用するコンテンツタイプの MIME /タイプの定義を [既定の応答] テキストボックスに入力します。
    • 新しい許可されたコンテンツタイプを作成するには、[追加] をクリックします。[許可されたコンテンツタイプの追加] ダイアログボックスが表示されます。
    • 既存の許可されたコンテンツタイプを編集するには、そのコンテンツタイプを選択し、[開く] をクリックします。[許可されたコンテンツタイプの変更] ダイアログボックスが表示されます。
  6. 許可されたコンテンツタイプを管理するには、[許可されたコンテンツタイプの管理] をクリックします。
  7. 新しいコンテンツタイプを追加するか、既存のコンテンツタイプを変更するには、[追加] または [開く] をクリックし、[許可されたコンテンツタイプの追加] または [許可されたコンテンツタイプの変更] ダイアログボックスで、次の手順を実行します。
    1. 許可されたコンテンツタイプのリストにコンテンツタイプを含めるか、除外するには、[有効] チェックボックスをオンまたはオフにします。

    2. [Content Type] テキストボックスに、追加するコンテンツタイプを説明する正規表現を入力するか、既存のコンテンツタイプの正規表現を変更します。

      コンテンツタイプは、MIME タイプの説明と同じようにフォーマットされます。

      注:

      許可されたコンテンツタイプリストには、任意の有効な MIME タイプを含めることができます。多くの種類のドキュメントにはアクティブなコンテンツが含まれている可能性があるため、悪意のあるコンテンツが含まれる可能性があるため、MIME タイプをこのリストに追加する際には注意が必要です。

    3. この特定の MIME タイプを許可されたコンテンツタイプリストに追加する理由を説明する簡単な説明を入力します。

    4. [作成] または [OK] をクリックして 変更を保存します。

  8. [閉じる] をクリックして [許可されたコンテンツタイプの管理] ダイアログボックスを閉じ、[設定] タブに戻ります。
  9. [OK] をクリックして変更を保存します。

Citrix ADC GUIを使用してURLエンコードされたコンテンツタイプとマルチパートフォームのコンテンツタイプを管理するには

  1. [セキュリティ] > [Web App Firewall] > [プロファイル] に移動します。
  2. 詳細ウィンドウで、構成するプロファイルを選択し、[編集] をクリックします。
  3. [Web App Firewall プロファイルの設定] ページで、[詳細 **設定] セクションの [プロファイル 設定**] を選択します。
  4. [検査済みコンテンツタイプ] セクションで、次のパラメータを設定します。

    1. application/x-www-form-urlencoded. URL エンコードされたコンテンツタイプを検査するには、このチェックボックスをオンにします。
    2. multipart/form-data. マルチパートフォームのコンテンツタイプを検査するチェックを選択します。
  5. [OK] をクリックします。

コンテンツの管理

コンテンツタイプの管理