[Virtual Machine Config] Windows 11 Pro Memory Integrity: Does it require nested virtualization?

Sep 1, 2022
475
180
48
41
My Windows 11 Pro VM wants me to enable Core Isolation for enhanced security.
Source: https://support.microsoft.com/en-us...e57-b1c5-599f-3a4c6a61c5e2#bkmk_coreisolation

Secured-core PC
A Secured-core PC is designed to provide advanced security features right out of the box. These PCs integrate hardware, firmware, and software to offer robust protection against sophisticated threats.

In the Windows Security app on your PC, select Device security > Security details.

For more information, see Windows 11 Secured-core PCs.

Core isolation
Core isolation provides security features designed to protect core processes of Windows from malicious software by isolating them in memory. It does this by running those core processes in a virtualized environment.


Memory integrity
Memory integrity, also known as Hypervisor-protected Code Integrity (HVCI) is a Windows security feature that makes it difficult for malicious programs to use low-level drivers to hijack your PC.

A driver is a piece of software that lets the operating system (Windows in this case) and a device (like a keyboard or a webcam) talk to each other. When the device wants Windows to do something, it uses the driver to send that request.

Memory integrity works by creating an isolated environment using hardware virtualization.

Think of it like a security guard inside a locked booth. This isolated environment (the locked booth in our analogy) prevents the memory integrity feature from being tampered with by an attacker. A program that wants to run a piece of code which may be dangerous has to pass the code to memory integrity inside that virtual booth so that it can be verified. When memory integrity is comfortable that the code is safe it hands the code back to Windows to run. Typically, this happens very quickly.

Without memory integrity running, the security guard stands right out in the open where it's much easier for an attacker to interfere with or sabotage the guard, making it easier for malicious code to sneak past and cause problems.

Does anyone running a Windows 11 VM know if these security features require Proxmox to have nested virtualization enabled for the VM?

Thanks!
 
I don't think so but it only works when your vm has the cpu set to "host" and the host cpu is officially supported by windows 11. Just be aware that enabling core isolation and / or virtualization based security has sometimes a hefty performance impact, depending on your hardware.
 
  • Like
Reactions: SInisterPisces
I don't think so but it only works when your vm has the cpu set to "host" and the host cpu is officially supported by windows 11. Just be aware that enabling core isolation and / or virtualization based security has sometimes a hefty performance impact, depending on your hardware.
Thanks!

Any suggestions on where I can read more about the performance implications? I was considering turning it on for a VM I use for Office work, so unless it's going to torpedo Microsoft Office performance, I'm guessing it would be okay.

OTOH, I hate to yolo things. :P
 
Last edited:
There are some threads in this forum about this
https://forum.proxmox.com/threads/t...-of-windows-when-the-cpu-type-is-host.163114/
(German, Windows Server) https://forum.proxmox.com/threads/proxmox-und-windows-server-2025-vms-auf-dl380-gen10.168153/

It's not clear (at least to me) what settings to use for good performance if you want to use vbs / core isolation

As far as i know "host" is needed otherwise you can't activate vbs / core isolation, otherwise it gets deactivated on reboot?
Try with at least x86-64-v3 or even better with the more specific type for your cpu, like EPYC-Genoa-v1 if you have an AMD Epyc Genoa
Try to use the highest type possible so your VM can use the newest cpu functions that are available which may help performance
On AMD Epyc someone suggested to disable c-states in bios (pve host) and remove the TPM (Windows Server 2025) on the VM but that's not an option for Windows 11 ...

Here is a list of all cpu types supported by qemu, maybe not all are available in pve for use

Create a backup of your VM before doing anything, maybe even clone it and test around on the clone with the different cpu types.
Maybe the performance hit is not that bad and you barely notice it?