ADC

NetScaler Gatewayおよび認証仮想サーバーが生成する応答に対するコンテンツセキュリティポリシー応答ヘッダーのサポート

NetScalerリリースビルド13.0~76.29以降、NetScaler Gatewayおよび認証仮想サーバーが生成する応答では、コンテンツセキュリティポリシー(CSP)応答ヘッダーがサポートされます。

Content-Security-Policy(CSP)レスポンスヘッダーは、クロスサイトスクリプティング(CSS)攻撃を回避するためにブラウザが使用するポリシーの組み合わせです。 HTTP CSP レスポンスヘッダーを使用すると、Web サイト管理者は、ユーザーエージェントが特定のページに対してロードできるリソースを制御できます。いくつかの例外を除いて、ポリシーには主にサーバーオリジンとスクリプトエンドポイントの指定が含まれます。これにより、クロスサイトスクリプティング攻撃から保護できます。 CSP ヘッダーは、ブラウザーがページをレンダリングする方法を変更し、CSS を含むさまざまなクロスサイトインジェクションから保護するように設計されています。ウェブサイトの適切な操作を妨げないように、ヘッダー値を正しく設定することが重要です。たとえば、ヘッダーがインライン JavaScript の実行を妨げるように設定されている場合、Web サイトはそのページでインライン JavaScript を使用してはいけません。

CSP レスポンスヘッダーの利点は次のとおりです。

  • CSP 応答ヘッダーの主な機能は、CSS 攻撃を防ぐことです。
  • サーバーでは、コンテンツのロード元となるドメインを制限することに加えて、どのプロトコルを使用できるかを指定できます。たとえば(理想的にはセキュリティの観点から)、サーバーはすべてのコンテンツをHTTPSを使用してロードする必要があることを指定できます。
  • CSPは、「tmindex.html」や「homepage.html」などのファイルを保護することで、NetScalerをクロスサイトスクリプティング攻撃から保護するのに役立ちます。ファイル “tmindex.html” は認証に関連しており、ファイル “homepage.html” は公開されたアプリ/リンクに関連しています。

NetScaler Gatewayおよび認証仮想サーバーが生成する応答用のコンテンツセキュリティポリシーヘッダーの構成

CSP ヘッダーを有効にするには、CSP HTTP ヘッダーを返すように Web サーバーを設定する必要があります。

注意事項

CLIを使用して仮想サーバーとNetScaler Gatewayが生成する応答を認証するようにCSPを構成するには、コマンドプロンプトで次のコマンドを入力します。

set aaa parameter -defaultCSPHeader <ENABLE/DISABLE>

NetScaler Gateway用のCSPを構成し、GUIを使用して仮想サーバーが生成した応答を認証すること。

  1. NetScaler Gateway > グローバル設定に移動し、[認証設定]の下の[ 認証AAA設定の変更 ]をクリックします。

    CSP global-1

  2. [ AAA パラメータの設定 ] ページで、[ デフォルト CSP ヘッダーで有効 ] フィールドを選択します。

    CSP global-2

Content-Security-Policy ヘッダーのカスタマイズの例

次に、CSP ヘッダーのカスタマイズで、次の 2 つの指定されたソースからのイメージとスクリプトのみをそれぞれ含める例を示します。https://company.fqdn.com, https://example.com.

設定例

add rewrite action modify_csp insert_http_header Content-Security-Policy "\"default-src 'self'; script-src 'self' https://company.fqdn.com 'unsafe-inline' 'unsafe-eval'; connect-src 'self'; img-src http://localhost:* https://example.com 'self' data: http: https:; style-src 'self' 'unsafe-inline'; font-src 'self'; frame-src 'self'; child-src 'self' com.citrix.agmacepa://* citrixng://* com.citrix.nsgclient://*; form-action 'self'; object-src 'self'; report-uri /nscsp_violation/report_uri\""

add rewrite policy add_csp true modify_csp

bind authentication vserver auth1 -policy add_csp -priority 1 -gotoPriorityExpression NEXT -type AAA_RESPONSE
NetScaler Gatewayおよび認証仮想サーバーが生成する応答に対するコンテンツセキュリティポリシー応答ヘッダーのサポート