Aktivieren Sie den virtualisierungsbasierten Schutz der Codeintegrität

Betrifft:

  • Windows 10
  • Windows 11

In diesem Thema werden verschiedene Möglichkeiten zum Aktivieren der hypervisorgeschützten Codeintegrität (HVCI) für Windows 10 und Windows 11 behandelt. Einige Anwendungen, einschließlich Gerätetreiber, sind nicht mit HVCI kompatibel. Diese Inkompatibilität kann zu Fehlfunktionen von Geräten oder Software führen und in seltenen Fällen zu einem Bluescreen führen. Solche Probleme können auftreten, nachdem HVCI aktiviert wurde oder während des Aktivierungsprozesses. Wenn diese Probleme auftreten, finden Sie unter Problembehandlung die Schritte zur Problembehandlung.

Hinweis

Da die modusbasierte Ausführungssteuerung verwendet wird, funktioniert HVCI besser mit Intel Kaby Lake- oder AMD Zen 2-CPUs und höher. Prozessoren ohne MBEC verlassen sich auf eine Emulation dieses Features, die als eingeschränkter Benutzermodus bezeichnet wird, was einen größeren Einfluss 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 sollten HVCI unterstützen.

Aktivieren der 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ützender Hardware im gesamten Unternehmen zu aktivieren:

Windows-Sicherheit-App

HVCI wird in der Windows-Sicherheit-App als Arbeitsspeicherintegrität bezeichnet und kann über Einstellungen > Update & Sicherheit > Windows-Sicherheit > Gerätesicherheit > Details > zurSpeicherintegrität zugreifen. Weitere Informationen finden Sie unter KB4096339.

Aktivieren der HVCI mithilfe von Intune

Die Aktivierung in Intune erfordert die Verwendung des Codeintegritätsknotens im AppLocker-CSP.

Aktivieren von HVCI mithilfe von Gruppenrichtlinie

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

  2. Navigieren Sie zu Computerkonfiguration > Administrative Vorlagen > System > Device Guard.

  3. Doppelklicken Sie auf Virtualisierungsbasierte Sicherheit aktivieren.

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

    Aktivieren Sie HVCI mithilfe von Gruppenrichtlinie.

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

Um die neue Richtlinie auf einen in die Domäne eingebundenen Computer anzuwenden, starten Sie entweder neu oder führen Sie sie in einer Eingabeaufforderung mit erhöhten Rechten aus gpupdate /force .

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

Setzen Sie den folgenden Registrierungsschlüssel fest,um HVCI zu aktivieren. Diese Schlüssel bieten genau denselben Satz von Konfigurationsoptionen, die von Gruppenrichtlinie bereitgestellt werden.

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. Mit dieser Einstellung verfügt jeder Computer ohne IOMMUs nicht über VBS- oder HVCI-Schutz, obwohl weiterhin Windows Defender Anwendungssteuerung aktiviert sein kann.

  • 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 verfügen über eine WMI-Klasse für verwandte Eigenschaften und Features: 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 WMI-Klasse Win32_DeviceGuard ist nur in der Enterprise Edition von Windows 10 und Windows 11 verfügbar.

Hinweis

Die Eigenschaft "Modusbasierte Ausführungssteuerung" wird nur ab Windows 10 Version 1803 und Windows 11 Version 21H2 als verfügbar aufgeführt.

Die Ausgabe dieses Befehls enthält Details zu den verfügbaren hardwarebasierten Sicherheitsfeatures und den features, die derzeit aktiviert sind.

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. Falls vorhanden, ist MBEC/GMET verfügbar.
8. Falls 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. Falls vorhanden, wird MBEC/GMET benötigt.

SecurityServicesConfigured

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

Wert Beschreibung
0. Es sind keine Dienste konfiguriert.
1. Wenn vorhanden, ist Windows Defender Credential Guard konfiguriert.
2. Wenn vorhanden, ist HVCI konfiguriert.
3. Falls vorhanden, wird Systemüberwachung Sicherer Start konfiguriert.
4. Falls vorhanden, ist die SMM-Firmwaremessung 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. Falls vorhanden, wird Systemüberwachung Sicherer Start ausgeführt.
4. Falls vorhanden, wird die SMM-Firmwaremessung 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 oben beschriebenen Verfahrens zum Aktivieren der HVCI eine Software- oder Gerätefehler auftritt, Sie sich aber bei Windows anmelden können, können Sie die HVCI deaktivieren, indem Sie die Datei SIPolicy.p7b umbenennen <OS Volume>\Windows\System32\CodeIntegrity\ oder löschen und ihr Gerät dann 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. Nachdem Sie sich bei Windows RE angemeldet haben, können Sie die HVCI deaktivieren, indem Sie die Datei SIPolicy.p7b aus <OS Volume>\Windows\System32\CodeIntegrity\ umbenennen oder löschen und ihr Gerät dann neu starten.

Deaktivieren der HVCI

  1. Führen Sie den folgenden Befehl an einer Eingabeaufforderung mit erhöhten Rechten aus, um den HVCI-Registrierungsschlüssel auf Off 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 ein physischer Computer. Die Schritte zum Aktivieren Windows Defender Anwendungssteuerung sind innerhalb des virtuellen Computers identisch.

WDAC schützt vor Schadsoftware, die auf dem virtuellen Gastcomputer ausgeführt wird. Es bietet keinen zusätzlichen Schutz durch den Hostadministrator. Auf dem Host 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 Hyper-V-Rolle auf dem virtuellen Computer zu aktivieren, müssen Sie zuerst die Hyper-V-Rolle in einer geschachtelten Windows-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 mit Set-VMSecuritydeaktivieren.
  • Die Option AllowFullSCSICommandSet für Passthrough-Datenträger ist nicht mit HVCI kompatibel. Vor dem Konfigurieren eines Passthrough-Datenträgers mit AllowFullSCSICommandSet müssen Sie zunächst die virtualisierungsbasierte Sicherheit mit Set-VMSecuritydeaktivieren.