XSA-468: multiple Windows PV driver vulnerabilities - update now!
Summary
Multiple vulnerabilities have been discovered in all existing Xen PV drivers for Windows from all vendors (XCP-ng, XenServer, etc.)
These vulnerabilities allow unprivileged users to gain system privileges inside Windows guests.
These issues have the following identifiers:
We recommend reading it there.
Am I affected?
Windows guests running vulnerable versions of Xen PV drivers are affected. Other guest OSes are not affected.
To check if you are affected, verify the version of Xen PV drivers inside every Windows VM.
- XCP-ng PV Bus, XCP-ng Interface and XCP-ng PV Console older than 9.0.9065 are affected.
- XenServer/Citrix PV Bus older than 9.1.11.115; PV Interface older than 9.1.12.94 are affected.
- Other Xen PV drivers for Windows are also likely affected. If you are using these drivers, verify each vendor's security bulletins for more details.
You can check for this vulnerability from within the Windows VMs themselves (most precise, recommended) but also from outside the VMs, using tools we built for this purpose.
Once patched, follow these instructions to verify that your VMs are no longer vulnerable.
Check a Windows VM for vulnerability
This is the most precise way, but needs to be done per VM.
- Verify the version numbers in Device Manager.
- Use the mitigation script published in the XSA-468 advisory in
-Scan
mode (will only report the vulnerability, not version numbers). See the script for documentation.
Detect vulnerable VMs at the pool level
This method requires the latest XCP-ng updates to be applied, in XCP-ng 8.2 and 8.3.
We developed two features to help you with the handling of these vulnerabilities.
- A host-side detection script, that you can run in dom0. It will list affected Windows VMs based on their PV driver versions. See the script for documentation.
- A warning ⚠️ sign next to affected VMs and a
vulnerable?
filter in Xen Orchestra. To use this feature, update Xen Orchestra to 5.106.4 (stable
channel) or to 5.107.0 (latest
channel).
How to patch my VMs?
If you're using XenServer Windows PV drivers or have enabled the "Manage Citrix PV drivers via Windows Update" feature: Upgrade to XenServer VM Tools 9.4.1 or later.
If you're using XCP-ng Windows PV drivers 8.2.x, you should use XenClean to remove the existing drivers, then choose one of the following:
- On a production system, install XenServer VM Tools 9.4.1 or later ;
- If you're not running a production system, and want to test the latest XCP-ng Windows PV drivers: install XCP-ng driver version 9.0.9065 or later. (Note that this requires bringing Windows into test signing mode)
If you're already using XCP-ng Windows PV drivers 9.0: Install XCP-ng driver version 9.0.9065 or later.
I can't patch now, what should I do?
You are encouraged to apply the latest updates as soon as possible.
If you absolutely cannot update, apply the mitigation script provided by Vates and the Xen Project, available at https://xenbits.xen.org/xsa/advisory-468.html.
Note that this mitigation script only covers vulnerabilities in the Xen PV Interface driver.
You should run the mitigation script in Scan mode afterwards to make sure the vulnerability is effectively mitigated.
How is Vates helping to address this vulnerability?
This issue was discovered by Vates as part of our investment into upstream Xen development. Vates VMS provides multiple facilities to help users affected this issue:
- We developed fixes for these vulnerabilities, which have been integrated upstream.
- We provided a mitigation script for those who cannot install the update.
- We have added detection logic in Xen Orchestra's latest release channel to actively alert on vulnerable Windows VMs. We also updated XCP-ng 8.2 and 8.3 so that PV driver versions are reported to Xen Orchestra for it to detect vulnerable Windows VMs. See "Am I affected?" above.
- We have developed a script that can be run in dom0 to perform the same detection, in case Xen Orchestra’s detection logic is not yet available to you. See "Am I affected?" above.
- We are publishing an alert about the vulnerability inside all Xen Orchestra appliances.
- We alert about this vulnerability at the beginning of our latest newsletter.
Why can't I use XCP-ng Windows PV drivers in production?
The XCP-ng 9.0 drivers aren't signed by Microsoft yet, and thus currently require putting Windows into test mode. As a result, these drivers are not appropriate for production use.
You may have noticed that the XCP-ng 8.2 Windows drivers can still be used when Secure Boot is disabled. This is due to these drivers being signed before Microsoft changed the driver signing rules and forcing 1st-party driver signatures.
We are actively working with Microsoft to get the drivers signed (which is a slow process). An announcement will be made as soon as a Microsoft-signed build is available.
Related links
- Xen Project announcement: https://xenbits.xen.org/xsa/advisory-468.html
- XenServer Security Bulletin: https://support.citrix.com/s/article/CTX692748-xenserver-and-citrix-hypervisor-security-update-for-cve202527462-cve202527463-cve202527464?