Resolution for CVE-2021-21972 and CVE-2021-21973 is documented in VMSA-2021-0002.
Workaround:
To implement the workaround for CVE-2021-21972 and CVE-2021-21973 on Linux-based virtual appliances (vCSA) perform the following steps:
The plugin must be set to "incompatible". Disabling the plugin from within the UI will not protect the system from this vulnerability.
This workaround is required to be carried out on both the active and passive node in environments running vCenter High Availability (VCHA)
- Connect to the vCSA using an SSH session and root credentials.
- Backup the /etc/vmware/vsphere-ui/compatibility-matrix.xml file:
cp -v /etc/vmware/vsphere-ui/compatibility-matrix.xml /etc/vmware/vsphere-ui/compatibility-matrix.xml.backup
- Open the compatibility-matrix.xml file in a text editor:
vi /etc/vmware/vsphere-ui/compatibility-matrix.xml
- Content of this file looks like below :
- Add the following:
<Matrix>
<pluginsCompatibility>
. . . .
. . . .
<PluginPackage id="com.vmware.vrops.install" status="incompatible"/>
</pluginsCompatibility>
</Matrix>
- The file should like below:
- Save and close the compatibility-matrix.xml file by typing: :wq!
- Stop and restart the vsphere-ui service using the commands:
- service-control --stop vsphere-ui.
- service-control --start vsphere-ui.
- Navigate to the https://<VC-IP-or-FQDN>/ui/vropspluginui/rest/services/checkmobregister. This page displays 404/Not Found error (as shown below).
- From the vSphere Client (HTML5), the VMware vROPS Client plugin can be seen as “incompatible” under Administration > Solutions > client-plugins as shown below
- This confirms that the endpoint /ui/vropspluginui is set to "incompatible".
To implement the workaround for CVE-2021-21972 and CVE-2021-21973 on Windows-based vCenter Server deployments perform the following steps:
(The plugin must be set to "incompatible". Disabling the plugin from within the UI will not protect the system from this vulnerability)
- RDP to the windows based vCenter Server.
- Take a backup of the file –
C:\ProgramData\VMware\vCenterServer\cfg\vsphere-ui\compatibility-matrix.xml
- Content of this file looks like below:
- Add the following:
<Matrix>
<pluginsCompatibility>
. . . .
. . . .
<PluginPackage id="com.vmware.vrops.install" status="incompatible"/>
</pluginsCompatibility>
</Matrix>
- The file should look like below:
- Stop and restart the vsphere-ui service using the commands:
- C:\Program Files\VMware\vCenter Server\bin> service-control --stop vsphere-ui
- C:\Program Files\VMware\vCenter Server\bin> service-control --start vsphere-ui
- From a web browser, navigate to:
https://<VC-IP-or-FQDN>/ui/vropspluginui/rest/services/checkmobregister.This page displays 404/Not Found error (as shown below):
- From the vSphere Client (HTML 5), the VMware vROPS Client plugin can be seen as “incompatible” under Administration > Solutions > client-plugins as shown below:
- This confirms that the endpoint /ui/vropspluginui is set to "incompatible".
To revert the workaround for CVE-2021-21972 and CVE-2021-21973 on Linux-based virtual appliances (vCSA) perform the following steps:
- Connect to the vCSA with an SSH session and root credentials.
- Open the compatibility-matrix.xml file in a text editor:
vi /etc/vmware/vsphere-ui/compatibility-matrix.xml
- Remove the below line in the file.
<Matrix>
<pluginsCompatibility>
. . . .
. . . .
<PluginPackage id="com.vmware.vrops.install" status="incompatible"/>
</pluginsCompatibility>
</Matrix>
- Stop and restart the vsphere-ui service using the commands:
- service-control --stop vsphere-ui.
- service-control --start vsphere-ui
- Validate that the vSphere-ui service is up.
- The VMware vROPS Client plugin status is deployed/enabled
To revert the workaround for CVE-2021-21972 and CVE-2021-21973 on Windows-based vCenter Server deployments perform the following steps:
- Connect to the Windows vCenter Server.
- Using a text editor edit the file:
C:\ProgramData\VMware\vCenterServer\cfg\vsphere-ui\compatibility-matrix.xml
- Remove the below line in the file.
<Matrix>
<pluginsCompatibility>
. . . .
. . . .
<PluginPackage id="com.vmware.vrops.install" status="incompatible"/>
</pluginsCompatibility>
</Matrix>
- Stop and restart the vsphere-ui service using the commands:
- C:\Program Files\VMware\vCenter Server\bin> service-control --stop vsphere-ui
- C:\Program Files\VMware\vCenter Server\bin> service-control --start vsphere-ui
- Validate that the vSphere-ui service is up.
- The VMware vROPS Client plugin status is deployed/enabled
- For more information on how to start/stop/restart services see;