Speicherintegrität und VBS-Aktivierung
Speicherintegrität ist ein virtualisierungsbasiertes Sicherheitsfeature (VBS), das in Windows 10, Windows 11 und Windows Server 2016 oder höher verfügbar ist. Speicherintegrität und VBS verbessern das Bedrohungsmodell von Windows und bieten einen stärkeren Schutz vor Schadsoftware, die versucht, den Windows-Kernel zu kompromittieren. Virtualisierungsbasierte Sicherheit (VBS) verwendet den Windows-Hypervisor, um eine isolierte virtuelle Umgebung zu erstellen, die zum Vertrauensanker des Betriebssystems wird, das davon ausgeht, dass der Kernel kompromittiert werden kann. Die Speicherintegrität stellt eine wichtige Komponente dar, die Windows schützt und abschirmt, indem sie die Integrität des Kernel-Modus-Codes innerhalb der isolierten virtuellen Umgebung von VBS ausführt. Die Speicherintegrität schränkt auch Kernel-Speicherzuweisungen ein, die zur Kompromittierung des Systems verwendet werden könnten. So wird sichergestellt, dass Kernel-Speicherseiten nur dann ausführbar gemacht werden, wenn sie Code-Integritätsprüfungen innerhalb der sicheren Laufzeitumgebung bestanden haben, und dass die ausführbaren Seiten selbst niemals beschreibbar sind.
Hinweis
Speicherintegrität wird manchmal als hypervisorgeschützte Codeintegrität (HVCI) oder Hypervisor-erzwungene Codeintegrität bezeichnet und wurde ursprünglich als Teil von Device Guard veröffentlicht. Device Guard wird nicht mehr verwendet, außer zum Lokalisieren der Speicherintegrität und VBS-Einstellungen in der Gruppenrichtlinie oder in der Windows-Registrierung.
Weitere Informationen zu diesen Schutzmaßnahmen finden Sie unter Virtualisierungsbasierter Sicherheitssystemressourcenschutz.
Standardaktivierung
Die Speicherintegrität ist bei Neuinstallationen von Windows 11 standardmäßig aktiviert. Zuvor war das Feature nur bei Neuinstallationen von Windows 10 (S-Modus) auf kompatibler Hardware aktiviert, wie in diesem Artikel beschrieben. Sie ist außerdem standardmäßig auf allen Secured-Core-PCs aktiviert. Auf anderen Systemen, die die Anforderungen für die automatische Aktivierung der Speicherintegrität nicht erfüllen, können Kunden eine der Methoden verwenden, die in der Anleitung zur Aktivierung der Speicherintegrität beschrieben sind. IT-Fachkräfte und Endbenutzer*innen haben stets die abschließende Kontrolle darüber, ob die Speicherintegrität aktiviert werden soll oder nicht.
Hardwarefeatures für die automatische Aktivierung
Die Speicherintegrität ist standardmäßig aktiviert, wenn ein PC die Mindestanforderungen an die Hardwarefeatures erfüllt:
Komponente | Detail |
---|---|
Prozessor |
|
RAM | Mindestens 8 GB (gilt nur für x64-Prozessoren) |
Speicher | SSD mit einer Mindestgröße von 64 GB |
Treiber | Speicherintegritätskompatible Treiber müssen installiert sein. Weitere Informationen zu Treibern finden Sie unter Kompatibilität von Treibern mit der Speicherintegrität . |
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
Intel Core-Desktopprozessoren der 11. Generation sind nicht in der aktuellen Standardaktivierungslogik enthalten. Sie werden jedoch als Plattform für die Speicherintegrität empfohlen und können vom OEM aktiviert werden.
Speicherintegrität und VBS-Steuerelemente
In diesem Abschnitt wird aufgelistet, wie Gerätehersteller*innen und Endbenutzer*innen mit Speicherintegrität und VBS interagieren können. Informationen zum Steuern des Speicherintegritätszustands als Administrator*in finden Sie unter Anleitung zur Aktivierung der Speicherintegrität.
Aktivieren der Speicherintegrität
Obwohl Windows die Speicherintegrität für die meisten Systeme standardmäßig aktiviert, kann dies aus mehreren Gründen verhindert werden. Als OEM können Sie sicherstellen, dass die Speicherintegrität für Ihre Geräte aktiviert ist, indem Sie Registrierungsschlüssel im Betriebssystemimage konfigurieren.
Empfohlene Konfiguration
Legen Sie die folgenden beiden Registrierungsschlüssel in Ihrem Image fest, um sicherzustellen, dass die Speicherintegrität aktiviert wird.
Registrierungsschlüssel | Wert |
---|---|
HKLM\System\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity | Enabled=1 |
HKLM\System\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity | WasEnabledBy=1 |
HKLM\System\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity | EnabledBootId=<Current BootId> |
BootId ist ein Indikator, der bei jedem erfolgreichen Start inkrementiert wird und der sich im Registrierungsschlüssel befindet: HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters\BootId. Die Registrierungsschlüssel WasEnabledBy und EnabledBootId steuern einen Parameter, der das Gerät davor schützt, dass es sich nicht mehr starten lässt. Wenn diese Option festgelegt ist, deaktiviert das Gerät automatisch die Speicherintegrität, wenn das System während des Starts abstürzt. Hierzu kann es kommen, wenn die Speicherintegrität einen inkompatiblen startkritischen Treiber blockiert. Das Feature für die automatische Deaktivierung ist nur dann verfügbar, wenn BootId kleiner ist als EnabledBootId + 3. In einigen Versionen von Windows wurde die Funktion für die automatische Deaktivierung so konzipiert, dass sie zurückgesetzt werden kann, wenn die Startfehler auch nach der Deaktivierung der Speicherintegrität auftreten. In diesem Fall bedeutet dies, das der Grund für den Fehler nicht in der Speicherintegrität liegt.
Hinweis
Bei High-Security-Systemen sollten WasEnabledBy und EnabledBootId NICHT festgelegt werden.
Problembehandlung
Identifizieren des Speicherintegritätszustands
Der Zustand der Speicherintegrität wird durch den folgenden temporären Registrierungsschlüssel angezeigt:
Registrierungsschlüssel | Wert |
---|---|
HKLM\System\CurrentControlSet\Control\CI\State | HVCIEnabled |
Sie können außerdem MsInfo32 unter Virtualisierungsbasierte Sicherheitsdienste werden ausgeführt verwenden, um den Speicherintegritätsstatus zu überprüfen, oder in der Windows Security-App zur Seite mit den Einstellungen für die Kernisolation navigieren, um den Wert der Speicherintegrität abzurufen. Sie können auch eine WMI-Schnittstelle verwenden, über die Sie den Status mithilfe von Verwaltungstools überprüfen können. Weiter Informationen hierzu finden Sie unter Überprüfen aktivierter VBS- und Speicherintegritätsfeatures.
Debuggen von Treiberproblemen
Rufen Sie die Codeintegritätsprotokolle auf, um zu überprüfen, ob ein Treiber aufgrund der Speicherintegrität nicht geladen werden konnten. Dies befinden sich in Ereignisanzeige unter dem folgenden Pfad:
Applications and Service Logs\Microsoft\Windows\CodeIntegrity\Operational
Normalerweise haben Kompatibilitätsereignisse im Zusammenhang mit der Speicherintegrität die EventID=3087.
Überprüfen der Ergebnisse für die standardmäßige Aktivierung der Speicherintegrität
Detaillierte Informationen zu den Ergebnissen zur standardmäßigen Aktivierung der Speicherintegrität finden Sie im setupact.log-Protokoll unter HVCI
. Sie sollten eines der folgenden Ergebnisprotokolleinträge sowie die erfolgreichen/fehlgeschlagenen Prüfungen sehen, die zur Aktivierungsentscheidung führen:
Speicherintegrität aktiviert: SYSPRP HVCI: Enabling HVCI
Speicherintegrität nicht aktiviert: SYSPRP HVCI: OS does not meet HVCI auto-enablement requirements. Exiting now.
Wenn das Gerät von der Aktivierung der Speicherintegrität über die zuvor beschriebene Registrierungsschlüssel-Methode ausgeschlossen wurde, wird dies das einzige aus der Speicherintegrität-Sysprep stammende Protokoll sein. 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
Im Folgenden finden Sie eine Aufzählung der potenziellen Kompatibilitätsprobleme im Zusammenhang mit der virtualisierungsbasierten Sicherheit (VBS) oder Speicherintegrität. 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.
Bit-Index | Kompatibilitätsproblem | Hexadezimalwert | Aufbau |
---|---|---|---|
0 | Nicht unterstützte Architektur (z. B. x86) | 0x00000001 | |
1 | SLAT erforderlich | 0x00000002 | x64 |
2 | Funktion für den sicheren Start erforderlich | 0x00000004 | x64 |
3 | IOMMU erforderlich | 0x00000008 | x64 |
4 | MBEC/GMET Erforderlich | 0x00000010 | x64 |
5 | UEFI erforderlich | 0x00000020 | x64 |
6 | UEFI WX-Speicherattributetabelle erforderlich | 0x00000040 | x64 |
7 | ACPI WSMT-Tabelle erforderlich | 0x00000080 | x64 |
8 | UEFI MOR-Sperre erforderlich | 0x00000100 | x64 |
9 | Als veraltet markiert | ||
10 | Hardwarevirtualisierung erforderlich | 0x00000400 | x64 |
11 | Sicherer Start erforderlich | 0x00000800 | ARM64 |
12 | Als veraltet markiert | ||
13 | Gerät mit weniger als der erforderlichen Volumengröße von 64 GB | 0x00002000 | x64, ARM64 |
14 | SSD-Systemlaufwerk erforderlich | 0x00004000 | x64, ARM64 |
15 | Intel CET erforderlich (gilt nur für W11 21H2) | 0x00008000 | x64 |
16 | ARM SoC ist nicht kompatibel mit VBS | 0x00010000 | ARM64 |
17 | 8 GB RAM erforderlich | 0x00020000 | x64 |
Ein Beispiel für einen Fehlercode und eine Fehleridentifikation: VBS_COMPAT_ISSUES 0x000000C0
0x000000C0 -> 0x00000080 UND 0x00000040 -> UEFI WX Speicherattribute Tabelle erforderlich, ACPI WSMT Tabelle erforderlich