Check Memory Integrity (HVCI) Status with PowerShell
Verify that Windows Core Isolation's memory integrity protection is switched on and running, not just configured.
01Command
$ (Get-CimInstance -Namespace root\Microsoft\Windows\DeviceGuard -ClassName Win32_DeviceGuard).SecurityServicesRunning02What it does
Memory integrity uses virtualization-based security to stop attackers from injecting code into the Windows kernel. The Windows Security app shows a toggle, but the WMI query reveals what is actually running: SecurityServicesRunning containing 2 means HVCI is active, and VirtualizationBasedSecurityStatus 2 means VBS itself is up. A blank or 0 result usually means the CPU or a driver does not support it, or the toggle was never turned on.
03Risk
04Undo
✓No undo needed — this command does not change persistent state.
05Sources
- Manage Windows Defender Credential GuardEvidence: Documents the Win32_DeviceGuard WMI class: SecurityServicesRunning lists running virtualization-based security services, where a value of 2 indicates HVCI is active.
Last verified: 2026-09-18 · Category: Security & Privacy
06Related solutions
PowerShell cmdlet that exposes BIOS, firmware, RAM and OS properties as a filterable object.
Read the Authenticode signature status and signer of any executable or script in PowerShell.
Understand PowerShell's execution policy scopes and set the one that lets you run your own local scripts without gutting the security model.