Aktivierung von Hypervisor-geschützter Codeintegrität

Hypervisorgeschützte Codeintegrität (HVCI) ist ein virtualisierungsbasiertes Sicherheitsfeature (VBS), das in Windows verfügbar ist. In den Windows Device Security-Einstellungen wird HVCI als Speicherintegrität bezeichnet.

HVCI und VBS verbessern das Bedrohungsmodell von Windows und bieten einen stärkeren Schutz vor Schadsoftware, die versucht, den Windows-Kernel zu kompromittieren. VBS nutzt den Windows-Hypervisor, um eine isolierte virtuelle Umgebung zu erstellen, die zum Root-of-Trust des Betriebssystems wird, das davon ausgeht, dass der Kernel kompromittiert werden kann. HVCI ist eine essenzielle Komponente, die diese virtuelle Umgebung schützt und härtet, indem es in ihr Kernelmodus-Codeintegrität ausführt und Kernelspeicherzuweisungen einschränkt, die zum Kompromittieren des Systems verwendet werden können.

Weitere Informationen zu diesen Schutzmaßnahmen finden Sie unter Virtualisierungsbasierter Sicherheitssystemressourcenschutz.

Standardaktivierung

Ab Windows 11 ist die Speicherintegrität bei neuen Installationen auf kompatiblen Systemen standardmäßig aktiviert. Somit ändert sich der standardmäßige Zustand dieses Features in Windows, obwohl letztlich Gerätehersteller und Endbenutzer die Kontrolle darüber haben, ob das Feature aktiviert ist.

Hardwarefeatures für die automatische Aktivierung

Die Speicherintegrität ist standardmäßig aktiviert, wenn ein PC die folgenden Mindesthardwarefeatures erfüllt:

Komponente Detail
Prozessor
  • Intel 8. Generation oder höher ab Windows 11, Version 22H2 (Core-Prozessoren der 11. Generation und neuer nur für Windows 11, Version 21H2)
  • AMD Zen 2-Architektur und neuer
  • Qualcomm Snapdragon 8180 und neuer
RAM Mindestens 8 GB
Speicher SSD mit einer Mindestgröße von 64 GB
Treiber Es müssen HVCI-kompatible Treiber installiert sein. Weitere Informationen zu Treibern finden Sie unter Hypervisorgeschützte Codeintegrität (HVCI).
BIOS Virtualisierung muss aktiviert sein

Wenn Sie ein Image erstellen, das die Speicherintegrität nicht automatisch aktiviert, können Sie Ihr Image dennoch so konfigurieren, dass es standardmäßig aktiviert ist.

Hinweis

Die automatische Aktivierung gilt nur für Neuinstallationen, nicht auf Upgrades vorhandener Geräte.

Hinweis

Die Märkte China und Korea sind ausgeschlossen, um Kompatibilitätsprobleme mit Anti-Cheat-Software zu vermeiden.

Hinweis

Intel Core-Desktopprozessoren der 11. Generation sind nicht in der aktuellen Standardaktivierungslogik enthalten. Sie sind jedoch eine empfohlene Plattform für HVCI und OEMs können HVCI auf entsprechenden Systemen aktivieren.

HVCI- und VBS-Steuerelemente

In diesem Abschnitt wird aufgelistet, wie Gerätehersteller und Endbenutzer mit HVCI und VBS interagieren können. Informationen zum Steuern des HVCI-Zustands als Administrator finden Sie unter Aktivieren von HVCI per Gruppenrichtlinie.

Aktivieren der Speicherintegrität

Windows aktiviert die Speicherintegrität standardmäßig für Systeme, die bestimmte Hardwareanforderungen erfüllen. Wenn Ihre Hardware keine Hardwarekombination enthält, bei der Windows die Speicherintegrität automatisch aktiviert, können Sie sie durch Konfigurieren von Registrierungsschlüsseln im Image aktivieren.

Benutzer können die Speicherintegrität auch manuell mithilfe der Seite Kernisolation in der Windows-Sicherheit-App aktivieren.

Legen Sie die folgenden beiden Registrierungsschlüssel in Ihrem Image an. Diese Konfiguration aktiviert die Speicherintegrität im Kernelmodus auf die gleiche Weise wie die Standardaktivierungslogik des Betriebssystems.

Registrierungsschlüssel Wert
HKLM\System\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity Enabled=1
HKLM\System\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity WasEnabledBy=1

Der Registrierungsschlüssel WasEnabledBy steuert eine Einstellung, das Gerät davor schützt, nicht mehr startfähig zu sein. Wenn sie festgelegt ist, deaktiviert das Gerät automatisch HVCI, wenn das System während des Startvorgangs abstürzt, was wahrscheinlich dadurch verursacht wird, dass die Speicherintegrität einen damit inkompatiblen, zum Starten notwendigen Treiber blockiert. Diese automatische Deaktivierung wird zukünftig veraltet sein, obwohl es derzeit die empfohlene Konfiguration ist.

Hinweis

Für hochsichere Systeme sollte WasEnabledBy NICHT festgelegt werden.

Problembehandlung

Identifizieren des HVCI-Zustands

Der folgende veränderliche Registrierungsschlüssel spiegelt den Zustand von HVCI wider:

Registrierungsschlüssel Wert
HKLM\System\CurrentControlSet\Control\CI\State HVCIEnabled

Der HVCI-Zustand lässt sich auch daran erkennen, dass „MsInfo32“ unter Ausgeführte virtualisierungsbasierte Sicherheitsdienste sichtbar ist, oder an dem Wert von „Speicherintegrität“ auf der Kernisolation-Einstellungsseite.

Debuggen von Treiberproblemen

Überprüfen Sie die Codeintegritätsprotokolle, um festzustellen, ob Treiber aufgrund von HVCI nicht geladen wurden. Dies befinden sich in Ereignisanzeige unter dem folgenden Pfad:

Applications and Service Logs\Microsoft\Windows\CodeIntegrity\Operational

Im Allgemeinen verfügen HVCI-Kompatibilitätsereignisse über die EventID=3087

Überprüfen der Ergebnisse der Standardaktivierung von HVCI

Informationen zu den Ergebnissen der HVCI-Standardaktivierung finden Sie, indem Sie in setupact.log nach HVCI suchen. Sie sollten eines der folgenden Ergebnisprotokolleinträge sowie die erfolgreichen/fehlgeschlagenen Prüfungen sehen, die zur Aktivierungsentscheidung führen:

HVCI Enabled: SYSPRP HVCI: Enabling HVCI

HVCI not enabled: SYSPRP HVCI: OS does not meet HVCI auto-enablement requirements. Exiting now.

Wenn das Gerät wegen der oben beschriebenen Registrierungsschlüsselmethode HVC deaktiviert hat, ist dies der einzige Protokolleintrag der HVCI-Systemvorbereitung. Wenn das Gerät ein Kompatibilitätsproblem hatte, sollte dies in den vorherigen Protokolleinträgen mit dieser Fehlermeldung identifiziert werden:

SYSPRP HVCI: Compatibility did not pass. VBS_COMPAT_ISSUES 0xXXXXXXXX

Nachfolgend sehen Sie eine Liste der potenziellen VBS-Kompatibilitätsprobleme. Jedes Problem wird durch einen einzelnen Index in einem Bitarray dargestellt, und die Fehlermeldung gibt den Hexwert aus, der sich aus jedem vorhandenen Fehlerbit ergibt.

Hinweis

Sie werden feststellen, dass einige Indizes in der nachstehenden Tabelle fehlen. Einige Kompatibilitätsanforderungen wurden geändert oder als veraltet markiert und sind nur in älteren Betriebssystemversionen ohne die Standardaktivierungslogik relevant.

Bit-Index Kompatibilitätsproblem
0 Nicht unterstützte Architektur (z. B. x86)
1 SLAT erforderlich
3 IOMMU erforderlich
4 MBEC/GMET Erforderlich
5 UEFI erforderlich
6 UEFI WX-Speicherattributetabelle erforderlich
7 ACPI WSMT-Tabelle erforderlich
8 UEFI MOR-Sperre erforderlich
10 Hardwarevirtualisierung erforderlich
11 Sicherer Start erforderlich
13 Gerät mit weniger als der erforderlichen Volumengröße von 64 GB
14 SSD-Systemlaufwerk erforderlich
15 Gerät erfüllt nicht die Intel SoC-Mindestanforderungen
16 QC-SoC gibt keine VBS-Aktivierung an.
17 8 GB RAM erforderlich

Ein Beispiel für einen Fehlercode und eine Fehleridentifikation: VBS_COMPAT_ISSUES 0x000000C0

0x000000C0 -> 00000000011000000 -> Bit-Indizes 6 und 7 sind aktiv -> UEFI WX-Speicherattributetabelle erforderlich, ACPI WSMT-Tabelle erforderlich