Aktivieren Sie den virtualisierungsbasierten Schutz der Codeintegrität

Betrifft:

  • Windows 10
  • Windows 11

In diesem Thema werden verschiedene Möglichkeiten zum Aktivieren von Hypervisor-geschützter Codeintegrität (HVCI) für Windows 10 und Windows 11 behandelt. Einige Anwendungen, einschließlich Gerätetreiber, sind nicht mit HVCI kompatibel. Dies kann dazu führen, dass Geräte oder Software nicht ordnungsgemäß funktionieren und in seltenen Fällen ein Blaubildschirm angezeigt wird. Solche Probleme können auftreten, nachdem HVCI aktiviert wurde oder während des Aktivierungsprozesses. In diesem Fall finden Sie unter Problembehandlung alle die Schrittezur Problembehandlung.

Hinweis

Da HVCI die modusbasierte Ausführungssteuerungverwendet, funktioniert HVCI besser mit Intel Kaby Lake oder AMD Zen 2 CPUs und höher. Prozessoren ohne MBEC basieren auf einer Emulation dieses Features, das als eingeschränkter Benutzermodusbezeichnet wird, was größere Auswirkungen auf die Leistung hat.

HVCI-Features

  • HVCI schützt die Änderung der CfG-Bitmap (Control Flow Guard).
  • HVCI stellt außerdem sicher, dass Ihre anderen vertrauenswürdigen Prozesse, z. B. Credential Guard, über ein gültiges Zertifikat verfügen.
  • Moderne Gerätetreiber müssen auch über ein EV-Zertifikat (Extended Validation) verfügen und HVCI unterstützen.

So aktivieren Sie HVCI in Windows 10 und Windows 11

Verwenden Sie eine der folgenden Optionen, um HVCI auf Windows 10 und Windows 11 Geräten mit unterstützungsbasierter Hardware im gesamten Unternehmen zu aktivieren:

Windows-Sicherheit-App

HVCI wird als Speicherintegrität in der Windows-Sicherheit-App bezeichnet und kann über Einstellungen > Update & SecurityWindows-Sicherheit Device Security Core isolation details Memory integrity zugegriffen > **** > **** > **** > **** werden. Weitere Informationen finden Sie unter KB4096339.

Aktivieren von HVCI mit Intune

Zum Aktivieren in Intune muss der Codeintegritätsknoten im AppLocker-CSPverwendet werden.

Aktivieren von HVCI mithilfe von Gruppenrichtlinien

  1. Verwenden Sie den Gruppenrichtlinien-Editor (gpedit.msc), um ein vorhandenes Gruppenrichtlinienobjekt zu bearbeiten oder ein neues zu erstellen.

  2. Navigieren Sie zu System Device Guard für administrative Vorlagen für die > **** > **** > **** Computerkonfiguration.

  3. Doppelklicken Sie auf Virtualisierungsbasierte Sicherheit aktivieren.

  4. Klicken Sie auf "Aktiviert" und wählen Sie unter "Virtualisierungsbasierter Schutz der Codeintegrität" die Option "Aktiviert mit UEFI-Sperre" aus, um sicherzustellen, dass HVCI nicht remote deaktiviert werden kann, oder wählen Sie "Aktiviert" ohne UEFI-Sperreaus.

    Aktivieren Sie HVCI mithilfe von Gruppenrichtlinien.

  5. Klicken Sie auf "Ok", um den Editor zu schließen.

Um die neue Richtlinie auf einen computer anzuwenden, der einer Domäne beigetreten ist, starten Sie sie neu, oder führen Sie gpupdate /force sie an einer Eingabeaufforderung mit erhöhten Rechten aus.

Aktivieren Sie den virtualisierungsbasierten Schutz von Codeintegrität unter Verwendung der Registrierungsschlüssel

Setzen Sie den folgenden Registrierungsschlüssel fest,um HVCI zu aktivieren. Dadurch wird genau der gleiche Satz von Konfigurationsoptionen wie durch Gruppenrichtlinien bereitgestellt.

Wichtig

  • Aus den folgenden Befehlen können Sie Einstellungen für Sicherer Start und Sicherer Start und DMA-Schutz wählen. In den meisten Fällen wird die Auswahl von Sicherer Start empfohlen. Diese Option ermöglicht einen sicheren Start, und der Schutz wird dabei lediglich durch die Hardware des jeweiligen Computers begrenzt. Auf einem Computer mit Speicherverwaltungseinheiten für die Ein- und Ausgabe (Input/Output Memory Management Units, IOMMUs) ist der sichere Start mit DMA-Schutz verfügbar. Auf einem Computer ohne IOMMUs ist einfach der sichere Start aktiviert.

    Im Gegensatz dazu wird bei Verwendung von Secure Boot with DMA der sichere Start (und VBS selbst) nur auf einem Computer aktiviert, der DMA unterstützt, d.h. auf einem Computer mit IOMMUs. Bei Verwendung dieser Einstellung verfügen Computer ohne IOMMUs nicht über (hardwarebasierten) VBS- oder HVCI-Schutz, WDAC-Richtlinien können jedoch aktiviert sein.

  • Alle Treiber auf dem System müssen mit dem virtualisierungsbasierten Schutz der Codeintegrität kompatibel sein. Ansonsten treten auf dem System möglicherweise Fehler auf. Es wird empfohlen, diese Features für eine Gruppe von Testcomputern zu aktivieren, bevor Sie sie auf den Computern der Benutzer aktivieren.

Für Windows 10 Version 1607 und höher und für Windows 11 Version 21H2

Empfohlene Einstellungen (zum Aktivieren des virtualisierungsbasierten Schutzes von Codeintegritätsrichtlinien ohne UEFI-Sperre):

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "Locked" /t REG_DWORD /d 0 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Enabled" /t REG_DWORD /d 1 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Locked" /t REG_DWORD /d 0 /f

Wenn Sie die oben angegebenen empfohlenen Einstellungen anpassen möchten, verwenden Sie die folgenden Einstellungen.

So aktivieren Sie VBS

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f

So aktivieren Sie VBS und legen nur den sicheren Start als erforderlich fest (Wert1)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f

So aktivieren Sie VBS mit sicherem Start und DMA (Wert 3)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 3 /f

So aktivieren Sie VBS ohne UEFI-Sperre (Wert0)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "Locked" /t REG_DWORD /d 0 /f

So aktivieren Sie VBS mit UEFI-Sperre (Wert 1)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "Locked" /t REG_DWORD /d 1 /f

So aktivieren Sie den virtualisierungsbasierten Schutz von Codeintegritätsrichtlinien

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Enabled" /t REG_DWORD /d 1 /f

So aktivieren Sie den virtualisierungsbasierten Schutz von Codeintegritätsrichtlinien ohne UEFI-Sperre (Wert0)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Locked" /t REG_DWORD /d 0 /f

So aktivieren Sie den virtualisierungsbasierten Schutz von Codeintegritätsrichtlinien mit UEFI-Sperre (Wert 1)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Locked" /t REG_DWORD /d 1 /f

Für Windows 10 Version 1511 und früher

Empfohlene Einstellungen (zum Aktivieren des virtualisierungsbasierten Schutzes von Codeintegritätsrichtlinien ohne UEFI-Sperre):

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "Unlocked" /t REG_DWORD /d 1 /f

Wenn Sie die oben angegebenen empfohlenen Einstellungen anpassen möchten, verwenden Sie die folgenden Einstellungen.

So aktivieren Sie VBS (stets unveränderlich auf UEFI festgelegt)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f

So aktivieren Sie VBS und legen nur den sicheren Start als erforderlich fest (Wert1)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f

So aktivieren Sie VBS mit sicherem Start und DMA (Wert 3)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 3 /f

So aktivieren Sie den virtualisierungsbasierten Schutz von Codeintegritätsrichtlinien (mit der standardmäßigen UEFI-Sperre)

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f

So aktivieren Sie den virtualisierungsbasierten Schutz von Codeintegritätsrichtlinien ohne UEFI-Sperre

reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "Unlocked" /t REG_DWORD /d 1 /f

Überprüfen von aktivierten hardwarebasierten Windows Defender Device Guard-Sicherheitsfeatures

Windows 10, Windows 11 und Windows Server 2016 über eine WMI-Klasse für verwandte Eigenschaften und Features verfügen: Win32_DeviceGuard. Diese Klasse kann in einer Windows PowerShell-Sitzung mit erhöhten Rechten mithilfe des folgenden Befehls abgerufen werden:

Get-CimInstance –ClassName Win32_DeviceGuard –Namespace root\Microsoft\Windows\DeviceGuard

Hinweis

Die Win32_DeviceGuard WMI-Klasse ist nur auf der Enterprise Edition von Windows 10 und Windows 11 verfügbar.

Hinweis

Die Eigenschaft "Mode Based Execution Control" wird erst ab Windows 10 Version 1803 und Windows 11 Version 21H2 als verfügbar aufgeführt.

In der Ausgabe dieses Befehls werden Details über die verfügbaren hardwarebasierten Sicherheitsfeatures sowie über die aktuell aktivierten Features bereitgestellt.

AvailableSecurityProperties

Dieses Feld hilft dabei, den Status in den relevanten Sicherheitseigenschaften für Windows Defender Device Guard aufzulisten und zu melden.

Wert Beschreibung
0. Wenn vorhanden, sind auf dem Gerät keine relevanten Eigenschaften vorhanden.
1. Wenn vorhanden, ist die Hypervisor-Unterstützung verfügbar.
2. Wenn vorhanden, ist „Sicherer Start“ verfügbar.
3. Wenn vorhanden, ist der DMA-Schutz verfügbar.
4. Wenn vorhanden, ist die Überschreibung des sicheren Speichers verfügbar.
5. Wenn vorhanden, sind NX-Schutzmaßnahmen verfügbar.
6. Wenn vorhanden, sind SMM-Gegenmaßnahmen verfügbar.
7. Wenn vorhanden, ist die modusbasierte Ausführungssteuerung verfügbar.
8. Wenn vorhanden, ist die APIC-Virtualisierung verfügbar.

InstanceIdentifier

Eine für ein bestimmtes Gerät eindeutige Zeichenfolge. Gültige Werte werden anhand von WMI festgelegt.

RequiredSecurityProperties

In diesem Feld werden die erforderlichen Sicherheitseigenschaften zum Aktivieren der virtualisierungsbasierten Sicherheit beschrieben.

Wert Beschreibung
0. Nichts ist erforderlich.
1. Wenn vorhanden, ist die Hypervisor-Unterstützung erforderlich.
2. Wenn vorhanden, ist „Sicherer Start“ erforderlich.
3. Wenn vorhanden, ist der DMA-Schutz erforderlich.
4. Wenn vorhanden, ist die Überschreibung des sicheren Speichers erforderlich.
5. Wenn vorhanden, sind NX-Schutzmaßnahmen erforderlich.
6. Wenn vorhanden, sind SMM-Gegenmaßnahmen erforderlich.
7. Wenn vorhanden, ist die modusbasierte Ausführungssteuerung erforderlich.

SecurityServicesConfigured

Dieses Feld gibt an, ob der Windows Defender Credential Guard- oder HVCI-Dienst konfiguriert wurde.

Wert Beschreibung
0. Keine Dienste konfiguriert.
1. Wenn vorhanden, ist Windows Defender Credential Guard konfiguriert.
2. Wenn vorhanden, ist HVCI konfiguriert.
3. Wenn vorhanden, ist der sichere Start von System Guard konfiguriert.
4. Wenn vorhanden, ist SMM Firmware Measurement konfiguriert.

SecurityServicesRunning

Dieses Feld gibt an, ob der Windows Defender Credential Guard- oder HVCI-Dienst ausgeführt wird.

Wert Beschreibung
0. Es werden keine Dienste ausgeführt.
1. Wenn vorhanden, wird Windows Defender Credential Guard ausgeführt.
2. Wenn vorhanden, wird HVCI ausgeführt.
3. Wenn vorhanden, wird der sichere Start von System Guard ausgeführt.
4. Wenn vorhanden, wird SMM Firmware Measurement ausgeführt.

Version

In diesem Feld wird die Version dieser WMI-Klasse ausgeführt. Der derzeit einzig gültige Wert lautet 1.0.

VirtualizationBasedSecurityStatus

Dieses Feld gibt an, ob VBS aktiviert ist und ausgeführt wird.

Wert Beschreibung
0. VBS ist nicht aktiviert.
1. VBS ist aktiviert, wird jedoch nicht ausgeführt.
2. VBS ist aktiviert und wird ausgeführt.

PSComputerName

In diesem Feld wird der Computername aufgeführt. Alle gültigen Werte für den Computernamen.

Eine andere Methode, die verfügbaren und aktivierten Windows Defender Device Guard-Features zu bestimmen, besteht darin, die Datei „msinfo32.exe“ in einer PowerShell-Sitzung mit erhöhten Rechten auszuführen. Wenn Sie dieses Programm ausführen, werden die Windows Defender Device Guard Eigenschaften unten im Abschnitt "Systemzusammenfassung" angezeigt.

Windows Defender Device Guard Eigenschaften in der Systemzusammenfassung.

Problembehandlung

A. Wenn ein Treiber nicht geladen oder zur Laufzeit abstürzt, können Sie möglicherweise den Treiber mithilfe des Geräte-Managers aktualisieren.

B. Wenn nach der Verwendung des obigen Verfahrens zum Aktivieren von HVCI Software- oder Gerätefehler auftreten, Sie sich jedoch bei Windows anmelden können, können Sie HVCI deaktivieren, indem Sie die Datei "SIPolicy.p7b" umbenennen oder löschen <OS Volume>\Windows\System32\CodeIntegrity\ und dann Ihr Gerät neu starten.

C. Wenn Sie ein schwerwiegender Fehler beim Start auftritt oder das System instabil ist, nachdem Sie HVCI aktivieren, können Sie mithilfe der Windows-Wiederherstellungsumgebung (Windows RE) diese wiederherstellen. Zum Starten von Windows RE finden Sie Informationen unter Windows RE Technical Reference. Nach der Anmeldung bei Windows RE können Sie HVCI deaktivieren, indem Sie die Datei "SIPolicy.p7b" umbenennen oder löschen <OS Volume>\Windows\System32\CodeIntegrity\ und dann ihr Gerät neu starten.

So deaktivieren Sie HVCI

  1. Führen Sie den folgenden Befehl an einer Eingabeaufforderung mit erhöhten Rechten aus, um den HVCI-Registrierungsschlüssel auf "aus" festzulegen:

    reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Enabled" /t REG_DWORD /d 0 /f
    
  2. Starten Sie das Gerät neu.

  3. Um zu bestätigen, dass HVCI erfolgreich deaktiviert wurde, öffnen Sie Systeminformationen und aktivieren Sie virtualisierungsbasierte Sicherheitsdienste werden ausgeführt. Dort sollte kein Wert angezeigt werden.

HVCI-Bereitstellung auf virtuellen Computern

HVCI kann einen virtuellen Hyper-V-Computer genauso schützen wie einen physischen Computer. Die Schritte zum Aktivieren von WDAC sind innerhalb des virtuellen Computers identisch.

WDAC schützt vor Schadsoftware, die auf dem virtuellen Gastcomputer ausgeführt wird. Das Feature bietet keinen zusätzlichen Schutz vom Hostadministrator. Vom Host aus können Sie WDAC für einen virtuellen Computer deaktivieren:

Set-VMSecurity -VMName <VMName> -VirtualizationBasedSecurityOptOut $true

Anforderungen für die Ausführung von HVCI auf virtuellen Hyper-V-Computern

  • Auf dem Hyper-V-Host muss mindestens Windows Server 2016 oder Windows 10, Version 1607, ausgeführt werden.
  • Beim virtuellen Hyper-V-Computer muss es sich um einen Computer der 2. Generation handeln, auf dem mindestens Windows Server 2016 oder Windows10 ausgeführt werden.
  • HVCI und geschachtelte Virtualisierung können gleichzeitig aktiviert werden. Um die HyperV-Rolle auf dem virtuellen Computer zu aktivieren, müssen Sie zuerst die HyperV-Rolle in einer Windows geschachtelten Virtualisierungsumgebung installieren.
  • virtueller Fibre Channel Adapter sind nicht mit HVCI kompatibel. Bevor Sie einen virtuellen Fibre Channel-Adapter an einen virtuellen Computer anfügen, müssen Sie zunächst die virtualisierungsbasierte Sicherheit mithilfe von Set-VMSecurity deaktivieren.
  • Die Option AllowFullSCSICommandSet für Pass-Through-Datenträger ist nicht mit HVCI kompatibel. Bevor Sie einen Pass-Through-Datenträger mit AllowFullSCSICommandSet konfigurieren, müssen Sie zunächst die virtualisierungsbasierte Sicherheit mithilfe von Set-VMSecurity deaktivieren.