Aktivierung von Hypervisor-geschützter Codeintegrität

Hypervisor-protected Code Integrity (HVCI) ist ein Virtualisierungsbasiertes Sicherheitsfeature (VBS), das in Windows. In den Windows Gerätesicherheitseinstellungen 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 auszunutzen. VBS nutzt den Windows Hypervisor, um eine isolierte virtuelle Umgebung zu erstellen, die zum Vertrauensstellungsstamm des Betriebssystems wird, bei dem davon ausgegangen wird, dass der Kernel kompromittiert werden kann. HVCI ist eine wichtige Komponente, die diese virtuelle Umgebung schützt und härtet, indem die Codeintegrität im Kernelmodus in ihr ausgeführt und Die Speicherbelegungen des Kernels eingeschränkt werden, die zum Gefährden des Systems verwendet werden könnten.

Weitere Informationen zu diesen Schutzmaßnahmen finden Sie unter Resource Protection für virtualisierungsbasierte Sicherheitssystemressourcen.

Standard-Aktivierung

Ab Windows 11 ist die Speicherintegrität für neue Installationen auf kompatiblen Systemen standardmäßig aktiviert. Dies ändert den Standardzustand des Features in Windows, obwohl Gerätehersteller und Endbenutzer die endgültige Kontrolle darüber haben, ob das Feature aktiviert ist.

Hardwarefeatures für die automatische Aktivierung

Speicherintegrität, die standardmäßig aktiviert werden soll, wenn ein PC die folgenden Mindesthardwarefeatures enthält:

Komponente Detail
Prozessor
  • Intel Core-Prozessoren der 11. Generation und neuer
  • AMD Zen 2-Architektur und neuer
  • Qualcomm Qualcomm 8180 und neuer
RAM Mindestens 8 GB
Storage SSD mit einer Mindestgröße von 64 GB
Treiber HVCI-kompatible Treiber müssen installiert sein. Weitere Informationen zu Treibern finden Sie unter Hypervisor-Protected Code Integrity (HVCI).
BIOS Virtualisierung muss aktiviert sein

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

Hinweis

Die automatische Aktivierung bezieht sich nur auf bereinigte Installationen, nicht auf Upgrades vorhandener Geräte.

Hinweis

Die Märkte China und Korea sind ausgeschlossen, um Kompatibilitätsprobleme bei der Anti-Cheat-Kompatibilität zu vermeiden.

Hinweis

Intel Core-Desktopprozessoren der 11. Generation sind in der aktuellen Standard-Aktivierungslogik nicht enthalten. Sie sind jedoch eine empfohlene Plattform für HVCI und können HVCI vom OEM aktivieren.

Deaktivieren der HVCI-Aktivierung

Da HVCI auf dem Windows Hypervisor basiert, haben die von der Speicherintegrität bereitgestellten Sicherheitsvorteile einen Kompromiss in Der Leistung und Leistung des Geräts.

Einige Geräte, die besonders leistungsempfindlich sind (z. B. Gaming-PCs), können sich für den Versand mit deaktivierter HVCI entscheiden. Angesichts der Auswirkungen auf die gesamte Gerätesicherheit empfehlen wir Ihnen, diese Szenarien gründlich zu testen, bevor Sie dies tun.

Stellen Sie sicher, dass der folgende Registrierungsschlüssel auf den Geräten festgelegt ist, um Geräte von der HVCI-Standardeinlösung zu deaktivieren:

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

Wenn dieser Registrierungsschlüssel festgelegt ist, überspringt der Sysprep-Anbieter für die HVCI-Aktivierung alle anderen Überprüfungen und entscheidet, HVCI nicht zu aktivieren. Alle anderen Möglichkeiten, HVCI zu aktivieren, sind weiterhin verfügbar (Einstellungen App, Gruppenrichtlinie usw.).

Hinweis

Dieser Registrierungsschlüssel ist so konfiguriert, dass er bei der Gerätezurücksetzung beibehalten wird, sodass HVCI nach einer Zurücksetzung nicht automatisch aktiviert wird.

HVCI- und VBS-Steuerelemente

In diesem Abschnitt wird erläutert, 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 mit Gruppenrichtlinie.

Aktivieren der Speicherintegrität

Windows wird die Speicherintegrität standardmäßig für Systeme aktiviert, die bestimmte Hardwareanforderungen erfüllen. Wenn Ihre Hardware keine Hardwarekombination für Windows enthält, um die Speicherintegrität automatisch zu aktivieren, können Sie sie in ihrem Image aktivieren, indem Sie Registrierungsschlüssel in einem Image konfigurieren.

Benutzer können die Speicherintegrität auch manuell aktivieren, indem Kernisolation Seite in der Windows-Sicherheit verwenden.

Legen Sie die folgenden beiden Registrierungsschlüssel in Ihrem Image fest. Diese Konfiguration aktiviert die Speicherintegrität im Kernelmodus auf die gleiche Weise wie die Standard-Aktivierungslogik 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, die vor einem nicht neustartfähigen Gerät schützt. Wenn festgelegt, deaktiviert das Gerät HVCI automatisch, wenn das System während des Startvorgangs abstürzt. Dies wird wahrscheinlich durch die Speicherintegrität verursacht, die einen inkompatiblen startkritischen Treiber blockiert. Diese funktion, die automatisch verfügbar ist, wird derzeit als veraltet bezeichnet, ist aber derzeit die empfohlene Konfiguration.

Hinweis

Für Systeme mit hoher Sicherheit sollte WasEnabledBy NICHT festgelegt werden.

Deaktivieren der Speicherintegrität

Für Systeme, Windows die Speicherintegrität automatisch aktivieren, können OEMs das Feature deaktivieren.

Benutzer können die Speicherintegrität auch manuell deaktivieren, indem sie die Kernisolation in der Windows-Sicherheit verwenden.

Registrierungsschlüssel zum Deaktivieren der Speicherintegrität

Wenn Sie die folgenden Registrierungsschlüssel löschen, wird HVCI beim nächsten Start nicht aktiviert. VBS wird auch automatisch deaktiviert, solange der Hypervisor oder andere VBS-Features nicht explizit aktiviert sind.

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

Hinweis

Wenn Gruppenrichtlinie angibt, dass HVCI aktiviert ist, wird diese Änderung des Registrierungsschlüssels nicht honoriert.

VbS deaktivieren

Registrierungsschlüssel Wert
HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard EnableVirtualizationBasedSecurity=0

Hinweis

Wenn VBS-Features aktiviert sind, wenn Sie diesen Schlüssel festlegen, wird dieser Wert überschrieben und VBS aktiviert.

Geräte mit aktivierten Hypervisor werden automatisch für VBS konfiguriert. Wenn Sie sicherstellen möchten, dass VBS auf Geräten, auf denen der Hypervisor aktiviert ist, nicht aktiviert ist, legen Sie den folgenden Registrierungsschlüssel fest. Stellen Sie sicher, dass Sie die Sicherheits- und Leistungsrisiken kennen, bevor Sie dies tun. Beachten Sie, dass sich der einzige konkrete Leistungsunterschied zwischen einem bare Hypervisor und aktiviertem VBS aufgrund der Verschlüsselung des Ruhezustands im Ruhezustand/Fortsetzen befindet.

Stellen Sie sicher, dass HVCI bei Upgrades oder Neuinstalls nie automatisch über Sysprep aktiviert wird.

Registrierungsschlüssel Wert
HKLM\System\CurrentControlSet\Control\DeviceGuard HyperVVirtualizationBasedSecurityZertifizierung=1

Problembehandlung

Identifizieren des HVCI-Zustands

Der folgende flüchtige Regkey spiegelt den Status von HVCI wider:

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

Weitere Möglichkeiten zum Überprüfen des HVCI-Zustands finden Sie unter Ausgeführte virtualisierungsbasierte Sicherheitsdienste unter MsInfo32, oder sehen Sie sich die Seite Core Isolation settings (Einstellungen für die Kernisolation) an, um den Wert der Speicherintegrität anzuzeigen.

Debuggen von Treiberproblemen

Überprüfen Sie die Codeintegritätsprotokolle, um zu überprüfen, ob das Laden von Treibern aufgrund von HVCI blockiert wurde. Diese befinden sich Ereignisanzeige unter dem folgenden Pfad:

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

Im Allgemeinen haben HVCI-Kompatibilitätsereignisse EventID=3087.

Überprüfen der Ergebnisse der HVCI-Standard-Aktivierung

Um Details zu den Ergebnissen der HVCI-Standardaktivierung anzuzeigen, überprüfen Sie setupact.log, und suchen Sie nach HVCI. Es sollten eines der folgenden Ergebnisprotokolle sowie die erfolgreichen/fehlerhaften Überprüfungen angezeigt werden, die zur Aktivierungsentscheidung führen:

HVCI aktiviert: SYSPRP HVCI: Enabling HVCI

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

Wenn das Gerät die HVCI-Aktivierung über die oben beschriebene regkey-Methode abmeldet, ist dies das einzige Protokoll aus hvci sysprep. Wenn auf dem Gerät ein Kompatibilitätsproblem aufgetreten ist, sollte es in den vorherigen Protokollen mit der Fehlermeldung identifiziert werden:

SYSPRP HVCI: Compatibility did not pass. VBS_COMPAT_ISSUES 0xXXXXXXXX

Im Folgenden finden Sie eine Enumeration der potenziellen VBS-Kompatibilitätsprobleme. Jedes Problem wird durch einen einzelnen Index in einem Bitarray dargestellt, und die Fehlermeldung gibt den Hexadezimalwert aus, der sich aus jedem aufgetretenen Fehlerbit ergibt.

Hinweis

Sie werden feststellen, dass einige Indizes in der folgenden Tabelle fehlen. Einige Kompatibilitätsanforderungen wurden geändert oder sind veraltet und sind nur in älteren Betriebssystemversionen ohne die Standardmäßige Aktivierungslogik relevant.

Bitindex 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 Memory Attributes Table required (UEFI WX-Speicherattributetabelle erforderlich)
7 ACPI WSMT-Tabelle erforderlich
8 UEFI-SPERRSPERRE erforderlich
10 Hardwarevirtualisierung erforderlich
11 Sicherer Start erforderlich
13 Gerät erfüllt nicht die erforderliche Mindestgröße von 64 GB
14 Systemlaufwerk-SSD erforderlich
15 Mindestanforderungen für Intel SoC für Geräte mit Fehler
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 – > 000000000>000000 – > Bitindizes 6 und 7 sind aktiv – > UEFI WX-SpeicherattributeTabelle erforderlich, ACPI WSMT-Tabelle erforderlich