Navigation and service

SiSyPHuS Win10: Analysis of Virtual Secure Mode

The objective of this work package is the analysis of the Virtual Secure Mode (VSM) component in Windows 10 and the relevant logging and configuration capabilities.

Due to the long duration of this project, a differential analysis between the original version Windows 10, Build 1607 and Windows 10 Enterprise LTSC 2019 (Build 1809) was carried out for this work package. This version will be supported by Microsoft until 2029.

Some changes occurred in the behavior of the hypervisor loader start and in the number of services in the so called „Isolated User Mode“.

Table of contents analysis document

1 Introduction
1.1 Executive Summary (german)
1.2 Executive Summary (english)
1.3 Concept and Terms
2 Technical Analysis of Functionalities
2.1 VSM Initialization
2.2 Communication Intefaces
2.2.1 IUM System Calls
2.2.2 Hypercalls
2.2.3 Secure Services
2.2.4 Normal-mode Services
2.2.5 Security Aspects
3 Configuration and Logging Capabilities
3.1 Hardware- and Software Requirements
3.2 Configuration Capabilities
3.2 Logging Capabilities
Appendix
Reference Documentation
Keywords and Abbreviations

Summary:

VSM is a Windows technology for creating and managing a secure Windows-based environment. This environment is isolated from the traditional Windows environment. The secure, isolated environment is designed to host security-critical functionalities, protecting them from attacks from less trusted or more exposed components. Security-critical functionalities include storage of sensitive data and the execution of cryptographic operations.

VSM uses virtualization as a basis for isolation. The Hyper-V hypervisor provides virtualization features. Hyper-V is implemented in the %SystemRoot%\System32\hvix64.exe and %SystemRoot%\System32\hvax64.exe executables. Hyper-V virtualizes hardware and hosts one or multiple virtual machines, referred to as partitions. A partition known as the root partition is used for managing and providing services to other co-located partitions. Each partition operates within its own isolation boundary with regard to memory, devices, and the central processing unit (CPU). Isolation boundaries between partitions are implemented by the hypervisor. The hypervisor allocates separated memory spaces and virtualized hardware resources to each partition. This means that a given partition cannot access the memory and hardware resources allocated to another partition.

In a VSM-enabled Windows environment, Hyper-V hosts the root partition. This partition hosts two kernel- and user-mode environments. Each kernel- and user-mode environment operates within an isolation domain, called virtual trust level (VTL). Hyper-V implements the VTLs. The concept of VTLs enforces isolation in multiple domains.

Hyper-V implements two VTLs: VTL 0 and VTL 1. VTL 0 hosts the traditional Windows environment. This work refers to this environment as the normal environment, and to the kernel running in it as the normal kernel. VTL 1 hosts the secure, isolated Windows environment for performing security-critical functionalities. This work refers to this environment as the secure environment. The secure environment consists of a kernel and its required modules: The kernel of the secure environment is referred to as the secure kernel in this work whereas the environment it provides is called “Isolated User Mode” or IUM. Processes withing this environment are called "Trustlets".

Communication between the VTLs is done via IUM System Calls (used by Trustlets), normal-mode services (known as "VTL return"), secure services ("VTL call") and hypercalls.

Windows 10 uses the Event Tracing for Windows (ETW) framework for logging VSM-related events. The following table provides the names and the globally unique identifiers (GUIDs) of ETW providers logging such events.

ETW ProviderGUID
Microsoft-Windows-IsolatedUserMode73a33ab2-1966-4999-8add-868c41415269
Microsoft-Windows-Wininit206f6dea-d3c5-4d10-bc72-989f03c8b84b
Microsoft-Windows-DeviceGuardf717d024-f5b4-4f03-9ab9-331b2dc38ffb

ETW Provider for VSM-related events

Hyper-V implements extensive ETW-based logging functionality. Logged events that are related to the operation of Hyper-V can be viewed with the Event Viewer utility.

The VSM Windows technology successfully isolates security-critical system functionalities by leveraging virtualization technology. In general, VSM is well-designed. Its architecture and operating principles take into account and mitigate a variety of common threats, such as loading of malicious executables and unauthorized communication between the secure and the normal environment. The secure environment follows a minimalistic design, exposing a significantly reduced attack surface. The secure environment communicates with the normal environment and the underlying hypervisor in a procedural manner. Usage of VSM functionalities by third parties is controlled and restricted by Microsoft through strict cryptographic requirements that are currently only fulfilled by implementations developed by Microsoft. This makes the VSM-enabled Windows environment a trustworthy computing platform in this sense.