CVE-2020-8300 の脆弱性に対処する
NetScaler Console のセキュリティアドバイザリダッシュボードで、Current CVEs >
<number of> NetScaler instances are impacted by CVEs の下には、この特定の CVE によって脆弱なすべてのインスタンスが表示されます。CVE-2020-8300 の影響を受けるインスタンスの詳細を確認するには、CVE-2020-8300 を選択し、View Affected Instances をクリックします。
注
セキュリティアドバイザリダッシュボードの詳細については、Security Advisory を参照してください。
<number of> NetScaler instances impacted by CVEs ウィンドウが表示されます。ここには、CVE-2020-8300 の影響を受ける NetScaler インスタンスの数と詳細が表示されます。
CVE-2020-8300 の修正
CVE-2020-8300 の影響を受ける NetScaler インスタンスの場合、修正は 2 段階のプロセスです。GUI の Current CVEs > NetScaler instances are impacted by CVEs の下で、ステップ 1 と 2 を確認できます。
2 つのステップは次のとおりです。
-
脆弱な NetScaler インスタンスを、修正を含むリリースおよびビルドにアップグレードする。
-
構成ジョブでカスタマイズ可能な組み込み構成テンプレートを使用して、必要な構成コマンドを適用する。このステップは、脆弱な NetScaler ごとに一度に 1 つずつ実行し、その NetScaler のすべての SAML アクションと SAML プロファイルを含めます。
Current CVEs> NetScaler instances impacted by CVEs の下には、この 2 段階の修正プロセスに対して 2 つの異なるワークフローが表示されます。それらは Proceed to upgrade workflow と Proceed to configuration job workflow です。
ステップ 1: 脆弱なNetScalerインスタンスをアップグレードする
脆弱なインスタンスをアップグレードするには、インスタンスを選択し、Proceed to upgrade workflow をクリックします。アップグレードワークフローが開き、脆弱なNetScalerインスタンスがすでに設定されています。
NetScaler Console を使用して NetScaler インスタンスをアップグレードする方法の詳細については、「NetScaler アップグレードジョブの作成」を参照してください。
注
このステップは、すべての脆弱なNetScalerインスタンスに対して一度に実行できます。
ステップ 2: 構成コマンドを適用する
影響を受けるインスタンスをアップグレードした後、
<number of> CVE の影響を受ける NetScaler インスタンス ウィンドウで、CVE-2020-8300 の影響を受けるインスタンスを 1 つ選択し、Proceed to configuration job workflow をクリックします。ワークフローには次のステップが含まれます。
-
構成のカスタマイズ。
-
自動入力された影響を受けるインスタンスの確認。
-
ジョブの変数に対する入力の指定。
-
変数入力が設定された最終構成の確認。
-
ジョブの実行。
インスタンスを選択して Proceed to configuration job workflow をクリックする前に、次の点に注意してください。
-
CVE-2021-22956のみの影響を受ける複数のNetScalerインスタンスの場合:すべてのインスタンスで一度に設定ジョブを実行できます。たとえば、NetScaler 1、NetScaler 2、NetScaler 3があり、これらすべてがCVE-2021-22956のみの影響を受けているとします。これらのインスタンスをすべて選択し、設定ジョブワークフローに進むをクリックすると、組み込みの設定テンプレートが設定の選択の下に自動入力されます。既知の問題NSADM-80913については、リリースノートを参照してください。
-
CVE-2021-22956と1つ以上の他のCVE(CVE-2020-8300、CVE-2021-22927、CVE-2021-22920など)の影響を受ける複数のNetScalerインスタンスの場合、各NetScalerに一度に修正を適用する必要があります。これらのインスタンスを選択して設定ジョブワークフローに進むをクリックすると、各NetScalerで一度に設定ジョブを実行するように指示するエラーメッセージが表示されます。
ステップ1:設定の選択
設定ジョブワークフローでは、組み込みの設定テンプレートが設定の選択の下に自動入力されます。
影響を受けるNetScalerインスタンスごとに、一度に1つずつ個別の設定ジョブを実行し、そのNetScalerのすべてのSAMLアクションとSAMLプロファイルを含めます。たとえば、2つの脆弱なNetScalerインスタンスがあり、それぞれに2つのSAMLアクションと2つのSAMLプロファイルがある場合、この設定ジョブを2回実行する必要があります。各NetScalerにつき1回、そのすべてのSAMLアクションとSAMLプロファイルをカバーするように実行します。
| NetScaler 1 | NetScaler2 |
|---|---|
| ジョブ1:2つのSAMLアクション +2つのSAMLプロファイル | ジョブ2:2つのSAMLアクション +2つのSAMLプロファイル |
ジョブに名前を付け、以下の仕様に合わせてテンプレートをカスタマイズします。組み込みの設定テンプレートは、あくまで概要または基本テンプレートです。以下の要件に合わせて、デプロイメントに基づいてテンプレートをカスタマイズしてください。
a. SAMLアクションとその関連ドメイン
デプロイメント内のSAMLアクションの数に応じて、1~3行目を複製し、各SAMLアクションのドメインをカスタマイズする必要があります。
たとえば、2つのSAMLアクションがある場合、1~3行目を2回繰り返し、それに応じて各SAMLアクションの変数定義をカスタマイズします。
SAMLアクションにN個のドメインがある場合は、そのSAMLアクションに対して行がN回表示されるように、
bind patset $saml_action_patset$ “$saml_action_domain1$” の行を手動で複数回入力する必要があります。そして、以下の変数定義名を変更します。
-
saml_action_patset: は設定テンプレート変数であり、SAMLアクションのパターンセット (patset) の名前の値を表します。実際の値は、設定ジョブワークフローのステップ3で指定できます。このドキュメントの「ステップ3: 変数値を指定する」セクションを参照してください。 -
saml_action_domain1: は設定テンプレート変数であり、その特定のSAMLアクションのドメイン名を表します。実際の値は、設定ジョブワークフローのステップ3で指定できます。このドキュメントの「ステップ3: 変数値を指定する」セクションを参照してください。
デバイスのすべてのSAMLアクションを見つけるには、コマンド
show samlaction を実行します。
b. SAMLプロファイルとその関連URL
デプロイに存在するSAMLプロファイルの数に応じて、4~6行目を複製します。各SAMLプロファイルのURLをカスタマイズします。
例えば、SAMLプロファイルが2つある場合、4~6行目を手動で2回入力し、それに応じて各SAMLアクションの変数定義をカスタマイズします。
SAMLアクションにN個のドメインがある場合は、そのSAMLプロファイルに対して行がN回表示されるように、
bind patset $saml_profile_patset$ “$saml_profile_url1$” の行を手動で複数回入力する必要があります。そして、以下の変数定義名を変更します。
-
saml_profile_patset: は設定テンプレート変数であり、SAMLプロファイルのパターンセット (patset) の名前の値を表します。実際の値は、設定ジョブワークフローのステップ3で指定できます。このドキュメントの「ステップ3: 変数値を指定する」セクションを参照してください。 -
saml_profile_url1: は設定テンプレート変数であり、その特定のSAMLプロファイルのドメイン名を表します。実際の値は、設定ジョブワークフローのステップ3で指定できます。このドキュメントの「ステップ3: 変数値を指定する」セクションを参照してください。
デバイスのすべてのSAMプロファイルを見つけるには、コマンド
show samlidpProfile を実行します。
ステップ2: インスタンスを選択する
影響を受けるインスタンスは、Select Instances の下に自動入力されます。インスタンスを選択し、Next をクリックします。
ステップ 3: 変数値を指定する
変数値を入力します。
-
saml_action_patset: SAMLアクションの名前を追加します -
saml_action_domain1:https://<example1.com>/の形式でドメインを入力します -
saml_action_name: ジョブを設定しているSAMLアクションと同じものを入力します -
saml_profile_patset: SAMLプロファイルの名前を追加します -
saml_profile_url1:https://<example2.com>/cgi/samlauthの形式でURLを入力します -
saml_profile_name: ジョブを設定しているSAMLプロファイルと同じものを入力します
注
URLの場合、拡張子は常に
cgi/samlauth とは限りません。使用しているサードパーティ認証によって異なり、それに応じて拡張子を設定する必要があります。
ステップ 4: 設定をプレビューする
設定に挿入された変数値をプレビューし、Next をクリックします。
ステップ5:ジョブを実行する
Finishをクリックして、構成ジョブを実行します。
構成ジョブを実行(/en-us/netscaler-console-service/media/run-job.png)
ジョブが実行されると、Infrastructure > Configuration > Configuration Jobsの下に表示されます。
すべての脆弱なNetScalerインスタンスに対して2つの修復手順を完了した後、オンデマンドスキャンを実行して、改訂されたセキュリティ体制を確認できます。
NetScaler Console Expressアカウントに関する注意事項
NetScaler Console Expressアカウントには、2つの構成ジョブのみという制限を含む、機能が制限されています。NetScaler Console Expressアカウントの詳細については、「Expressアカウントを使用したNetScaler Consoleリソースの管理」を参照してください。 CVE-2020-8300の修復には、脆弱なNetScalerインスタンスの数と同じ数の構成ジョブを実行する必要があります。したがって、Expressアカウントをお持ちで、2つ以上の構成ジョブを実行する必要がある場合は、この回避策に従ってください。
回避策: 2つの脆弱なNetScalerインスタンスに対して2つの構成ジョブを実行し、両方のジョブを削除して、次の2つの脆弱なNetScalerインスタンスに対して次の2つのジョブの実行を続行します。すべての脆弱なインスタンスをカバーするまでこれを続行します。ジョブを削除する前に、将来の参照のためにレポートをダウンロードできます。レポートをダウンロードするには、Network > Jobsでジョブを選択し、Actionsの下にあるDownloadをクリックします。
例: 6つの脆弱なNetScalerインスタンスがある場合、それぞれ2つの脆弱なインスタンスで2つの構成ジョブを実行し、両方の構成ジョブを削除します。この手順をさらに2回繰り返します。最終的に、6つのNetScalerインスタンスに対してそれぞれ6つの構成ジョブを実行したことになります。NetScaler Console UIのInfrastructure > Jobsには、最後の2つの構成ジョブのみが表示されます。
シナリオ
このシナリオでは、3つのNetScalerインスタンスがCVE-2020-8300に対して脆弱であり、すべてのインスタンスを修復する必要があります。次の手順に従ってください。
-
このドキュメントのインスタンスのアップグレードセクションに記載されている手順に従って、3つのNetScalerインスタンスすべてをアップグレードします。
-
構成ジョブワークフローを使用して、一度に1つのNetScalerに構成パッチを適用します。このドキュメントの構成コマンドの適用セクションに記載されている手順を参照してください。
脆弱なNetScaler 1には、次の構成があります。
| 2つのSAMLアクション | 2つのSAMLプロファイル |
|---|---|
設定ジョブワークフローを開始する(/en-us/netscaler-console-service/media/scenario-config-job-workflow.png)
NetScaler 1を選択し、設定ジョブワークフローに進むをクリックします。組み込みテンプレートが自動入力されます。次に、ジョブ名を入力し、指定された構成に従ってテンプレートをカスタマイズします。
指定されたシナリオのテンプレートをカスタマイズする(/en-us/netscaler-console-service/media/scenario-customize-template.png)
次の表に、カスタマイズされたパラメータの変数定義を示します。
表1. SAMLアクションの変数定義
| NetScaler構成 | patsetの変数定義 | SAMLアクション名の変数定義 | ドメインの変数定義 |
|---|---|---|---|
| SAMLアクション1には1つのドメインがあります | saml_action_patset1 | saml_action_name1 | saml_action_domain1 |
| SAMLアクション2には2つのドメインがあります | saml_action_patset2 | saml_action_name2 | saml_action_domain2, saml_action_domain3 |
表2. SAMLプロファイルの変数定義
| NetScaler構成 | patsetの変数定義 | SAMLプロファイル名の変数定義 | URLの変数定義 |
|---|---|---|---|
| SAMLプロファイル1には1つのURLがあります | saml_profile_patset1 | saml_profile_name1 | saml_profile_url1 |
| SAMLプロファイル2には2つのURLがあります | saml_profile_patset2 | saml_profile_name2 | saml_profile_url2, saml_profile_url3 |
「インスタンスの選択」でNetScaler 1 を選択し、「次へ」をクリックします。「変数の値を指定」ウィンドウが表示されます。このステップでは、前のステップで定義したすべての変数に値を指定する必要があります。
次に、変数を確認します。
「次へ」をクリックし、次に「完了」をクリックしてジョブを実行します。
ジョブが実行されると、「インフラストラクチャ > 構成 > 構成ジョブ」に表示されます。
NetScaler 1 の2つの修復手順を完了したら、NetScaler 2 および NetScaler 3 を修復するために同じ手順に従います。修復が完了したら、オンデマンドスキャンを実行して、改訂されたセキュリティ体制を確認できます。