修复 CVE-2020-8300 的漏洞
在 NetScaler Console 安全通告仪表板中,在 当前 CVE >
<number of> 受 CVE 影响的 NetScaler 实例 下,您可以看到所有受此特定 CVE 影响的易受攻击实例。要查看受 CVE-2020-8300 影响的实例的详细信息,请选择 CVE-2020-8300,然后单击 查看受影响的实例。
注意
有关安全通告仪表板的更多信息,请参阅 安全通告。
出现
<number of> 受 CVE 影响的 NetScaler 实例 窗口。在此处,您可以看到受 CVE-2020-8300 影响的 NetScaler 实例的数量和详细信息。
修复 CVE-2020-8300
对于受 CVE-2020-8300 影响的 NetScaler 实例,修复是一个两步过程。在 GUI 中,在 当前 CVE > 受 CVE 影响的 NetScaler 实例 下,您可以看到步骤 1 和 2。
这两个步骤包括:
-
将易受攻击的 NetScaler 实例升级到包含修复程序的版本和内部版本。
-
在配置作业中使用可自定义的内置配置模板应用所需的配置命令。针对每个易受攻击的 NetScaler 逐一执行此步骤,并包括该 NetScaler 的所有 SAML 操作和 SAML 配置文件。
在 当前 CVE > 受 CVE 影响的 NetScaler 实例 下,您会看到此两步修复过程的两个独立工作流:分别是 继续升级工作流 和 继续配置作业工作流。
步骤 1:升级易受攻击的 NetScaler 实例
要升级易受攻击的实例,请选择这些实例,然后单击“继续升级工作流”。升级工作流将打开,其中已填充易受攻击的 NetScaler 实例。
有关如何使用 NetScaler Console 升级 NetScaler 实例的更多信息,请参阅创建 NetScaler 升级作业。
注意
此步骤可以一次性针对所有易受攻击的 NetScaler 实例完成。
步骤 2:应用配置命令
升级受影响的实例后,在“
<number of> 受 CVE 影响的 NetScaler 实例”窗口中,选择一个受 CVE-2020-8300 影响的实例,然后单击“继续配置作业工作流”。该工作流包括以下步骤。
-
自定义配置。
-
查看自动填充的受影响实例。
-
指定作业变量的输入。
-
查看填充了变量输入的最终配置。
-
运行作业。
在选择实例并单击“继续配置作业工作流”之前,请记住以下几点:
-
对于受多个 CVE 影响的 NetScaler 实例(例如 CVE-2020-8300、CVE-2021-22927、CVE-2021-22920 和 CVE-2021-22956):当您选择实例并单击“继续配置作业工作流”时,内置配置模板不会在“选择配置”下自动填充。请手动将“安全通告模板”下相应的配置作业模板拖放到右侧的配置作业窗格中。
-
仅适用于受 CVE-2021-22956 影响的多个 NetScaler 实例:您可以一次性在所有实例上运行配置作业。例如,您有 NetScaler 1、NetScaler 2 和 NetScaler 3,并且它们都仅受 CVE-2021-22956 影响。选择所有这些实例,然后单击 Proceed to configuration job workflow,内置配置模板将在 Select configuration 下自动填充。请参阅发行说明 中的已知问题 NSADM-80913。
-
对于受 CVE-2021-22956 和一个或多个其他 CVE(例如 CVE-2020-8300、CVE-2021-22927 和 CVE-2021-22920)影响的多个 NetScaler 实例,需要一次性对每个 NetScaler 应用补救措施:当您选择这些实例并单击 Proceed to configuration job workflow 时,将出现一条错误消息,提示您一次性在每个 NetScaler 上运行配置作业。
步骤 1:选择配置
在配置作业工作流中,内置配置模板会在 Select configuration 下自动填充。
为每个受影响的 NetScaler 实例单独运行一个配置作业,一次一个,并包含该 NetScaler 的所有 SAML 操作和 SAML 配置文件。例如,如果您有两个易受攻击的 NetScaler 实例,每个实例都有两个 SAML 操作和两个 SAML 配置文件,则必须运行此配置作业两次。每个 NetScaler 运行一次,涵盖其所有 SAML 操作和 SAML 配置文件。
| NetScaler 1 | NetScaler 2 |
|---|---|
| 作业 1:两个 SAML 操作 + 两个 SAML 配置文件 | 作业 2:两个 SAML 操作 + 两个 SAML 配置文件 |
为作业命名并根据以下规范自定义模板。内置配置模板仅为大纲或基本模板。根据您的部署自定义模板以满足以下要求:
a. SAML 操作及其关联域
根据您部署中 SAML 操作的数量,您必须复制第 1-3 行并为每个 SAML 操作自定义域。
例如,如果您有两个 SAML 操作,请重复第 1-3 行两次,并相应地自定义每个 SAML 操作的变量定义。
如果一个 SAML 操作有 N 个域,您必须手动键入
bind patset $saml_action_patset$ “$saml_action_domain1$” 行多次,以确保该行在该 SAML 操作中出现 N 次。并更改以下变量定义名称:
-
saml_action_patset:是配置模板变量,它表示 SAML 操作的模式集 (patset) 名称的值。您可以在配置作业工作流的步骤 3 中指定实际值。请参阅本文档中的“步骤 3:指定变量值”部分。 -
saml_action_domain1:是配置模板变量,它表示该特定 SAML 操作的域名。您可以在配置作业工作流的步骤 3 中指定实际值。请参阅本文档中的“步骤 3:指定变量值”部分。
要查找设备的全部 SAML 操作,请运行命令
show samlaction。
查找 SAML 操作(/en-us/netscaler-console-service/media/show-samlaction-command.png)
b. SAML 配置文件及其关联的 URL
根据部署中 SAML 配置文件的数量,复制第 4-6 行。自定义每个 SAML 配置文件的 URL。
自定义 SAML 配置文件(/en-us/netscaler-console-service/media/saml-profile.png)
例如,如果您有两个 SAML 配置文件,请手动输入第 4-6 行两次,并相应地自定义每个 SAML 操作的变量定义。
如果一个 SAML 操作有 N 个域,您必须手动键入
bind patset $saml_profile_patset$ “$saml_profile_url1$” 行多次,以确保该行在该 SAML 配置文件中出现 N 次。并更改以下变量定义名称:
-
saml_profile_patset:是配置模板变量,它表示 SAML 配置文件的模式集 (patset) 名称的值。您可以在配置作业工作流的步骤 3 中指定实际值。请参阅本文档中的“步骤 3:指定变量值”部分。 -
saml_profile_url1:是配置模板变量,它表示该特定 SAML 配置文件的域名。您可以在配置作业工作流的步骤 3 中指定实际值。请参阅本文档中的“步骤 3:指定变量值”部分。
要查找设备的全部 SAM 配置文件,请运行命令
show samlidpProfile。
查找 SAML 配置文件(/en-us/netscaler-console-service/media/show-saml-profile.png)
步骤 2:选择实例
受影响的实例会在“选择实例”下自动填充。选择实例,然后单击“下一步”。
选择实例(/en-us/netscaler-console-service/media/select-instance.png)
步骤 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。这取决于您拥有的第三方授权,因此您必须相应地放置扩展名。
指定变量(/en-us/netscaler-console-service/media/specify-variables.png)
步骤 4:预览配置
预览已插入配置中的变量值,然后单击“下一步”。
步骤 5:运行作业
单击 完成 以运行配置作业。
作业运行后,它将显示在 基础架构 > 配置 > 配置作业 下。
完成所有易受攻击的 NetScaler 实例的两个修复步骤后,您可以运行按需扫描以查看修订后的安全状况。
NetScaler Console Express 帐户的注意事项
NetScaler Console Express 帐户的功能有限,其中包括仅限两个配置作业的限制。要了解有关 NetScaler Console Express 帐户的更多信息,请参阅 使用 Express 帐户管理 NetScaler Console 资源。 对于 CVE-2020-8300 修复,您必须运行与易受攻击的 NetScaler 实例数量相同的配置作业。因此,如果您拥有 Express 帐户并且需要运行两个以上的配置作业,请遵循此变通方法。
变通方法:为两个易受攻击的 NetScaler 实例运行两个配置作业,然后删除这两个作业,以继续为接下来的两个易受攻击的 NetScaler 实例运行接下来的两个作业。重复此操作,直到覆盖所有易受攻击的实例。在删除作业之前,您可以下载报告以供将来参考。要下载报告,请在 网络 > 作业 下,选择作业,然后单击 操作 下的 下载。
示例:如果您有六个易受攻击的 NetScaler 实例,请分别在两个易受攻击的实例上运行两个配置作业,然后删除这两个配置作业。再重复此步骤两次。最后,您将分别针对六个 NetScaler 实例运行了六个配置作业。在 NetScaler Console UI 的 基础架构 > 作业 下,您只会看到最后两个配置作业。
场景
在此场景中,三个 NetScaler 实例易受 CVE-2020-8300 攻击,您需要修复所有实例。请按照以下步骤操作:
-
升级所有三个 NetScaler 实例,请按照本文档中“升级实例”部分提供的步骤操作。
-
一次将配置修补程序应用于一个 NetScaler,使用配置作业工作流。请参阅本文档中“应用配置命令”部分提供的步骤。
易受攻击的 NetScaler 1 具有以下配置:
| 两个 SAML 操作 | 两个 SAML 配置文件 |
|---|---|
选择 NetScaler 1,然后单击继续配置作业工作流。内置模板会自动填充。接下来,输入作业名称并根据给定配置自定义模板。
下表列出了自定义参数的变量定义。
表 1. SAML 动作的变量定义
| NetScaler 配置 | patset 的变量定义 | SAML 动作名称的变量定义 | 域的变量定义 |
|---|---|---|---|
| SAML 动作 1 有一个域 | saml_action_patset1 | saml_action_name1 | saml_action_domain1 |
| SAML 操作 2 有两个域 | saml_action_patset2 | saml_action_name2 | saml_action_domain2, saml_action_domain3 |
表 2. SAML 配置文件的变量定义
| NetScaler 配置 | patset 的变量定义 | SAML 配置文件名称的变量定义 | URL 的变量定义 |
|---|---|---|---|
| SAML 配置文件 1 有一个 URL | saml_profile_patset1 | saml_profile_name1 | saml_profile_url1 |
| SAML 配置文件 2 有两个 URL | saml_profile_patset2 | saml_profile_name2 | saml_profile_url2, saml_profile_url3 |
在选择实例下,选择 NetScaler 1,然后单击下一步。此时将显示指定变量值窗口。在此步骤中,您需要为上一步中定义的所有变量提供值。
接下来,查看变量。
单击下一步,然后单击完成以运行作业。
作业运行后,它将显示在基础架构 > 配置 > 配置作业下。
完成 NetScaler 1 的两个补救步骤后,请按照相同的步骤补救 NetScaler 2 和 NetScaler 3。补救完成后,您可以运行按需扫描以查看修订后的安全状况。