Freigeben über


Vom Kernelmodus erzwungener Stapelschutz

Gilt für: Windows Server 2025

Das Sicherheitsfeature Hardware-erzwungener Stapelschutz wurde eingeführt, um Benutzermodusprozesse zu schützen und die Entführerung auf dem Stapel in Windows 10 zu verhindern. Der vom Hardware erzwungene Stack Protection erstreckt sich jetzt auf den Kernelmodus, der Stapel im Kernel vor rückgabeorientierten programmierungsbasierten Angriffen (ROP) schützt. ROP ist eine gängige Möglichkeit für Angreifer, den Fluss der Ausführung eines Programms zu entführern und ihre Angriffskette fortzusetzen, um den gewünschten Code des Angreifers auszuführen.

Da Benutzermodusstapel geschützt sind und die Änderung der Absenderadresse aus Kernelmoduscode verhindern, können Angreifer keine Speichersicherheitsrisiken ausnutzen. Kunden sehen bereits, wie der hardwaregezwingte Stapelschutz im Kernelmodus verhindert, dass Treiber, die mit Viren und Schadsoftware verbunden sind, ihre schädliche Nutzlast ausführen.

Der vom Kernelmodus erzwungene Stapelschutz ist standardmäßig deaktiviert, aber Kunden können ihn aktivieren, wenn die Voraussetzungen erfüllt sind. Dieser Artikel enthält weitere Informationen zum vom Kernelmodus durch Hardware erzwungenen Stapelschutz und zeigt, wie Sie das Feature in der Windows-Sicherheit-App und über Gruppenrichtlinien aktivieren.

Voraussetzungen

  • Windows 11 2022 Update oder höher
  • Windows-Sicherheit App Version 1000.25330.0.9000 oder höher
  • Hardware, die Intel Control-Flow Enforcement Technology (CET) oder AMD Shadow Stacks unterstützt.
    • Für Intel, Intel Core Mobile Prozessoren der 11. Generation und AMD Zen 3 Core (und höher).
  • Virtualisierungsbasierte Sicherheit (VBS) und Hypervisor-erzwungene Codeintegrität (HVCI) sind aktiviert.

Verwenden von Schattenstapeln zum Erzwingen der Integrität des Kontrollflusses

Bei hardwaregezwingten Kernelmodus-Stapelschutz verfügen alle Kernelstapel über einen entsprechenden Schattenstapel, um die Integrität des Steuerungsflusses zu erzwingen. Wenn Angreifer eine Speichersicherheitslücke ausnutzen, besteht der nächste Schritt darin, den Steuerungsfluss eines Programms an den gewünschten Speicherort eines Angreifers umzuleiten.

Schattenstapel verhindern die Entführerung des Kontrollflusses. Windows verwendet Control Flow Guard zum Erzwingen der Integrität bei indirekten Aufrufen und zum Erzwingen von Stapelschutz, um Integrität bei Rückgaben zu erzwingen, um vor Exploits zu schützen, die darauf abzielen, den Ablauf der Ausführung eines Programms umzuleiten. Der Ablaufsteuerungsschutz verwendet eine Bitmap, um gültige Sprungziele zu kommentieren, um zu verhindern, dass ein kompromittierter indirekter Aufruf den Kontrollfluss an beliebige Stellen umleitet.

Der Schattenstapel verwaltet einen (hardwaregeschützten) sekundären Stapel für alle Aufrufstapel, und wenn eine CALL- oder RET-Anweisung einen Wert auf den Stapel verschiebt oder auffüllt, befindet sich ein entsprechender Eintrag im Schattenstapel. Wenn eine Übereinstimmung mit der Absenderadresse auftritt, löst das System einen Blauen Bildschirm aus, um unbeabsichtigtes Programmsteuerungsverhalten zu verhindern.

Weitere Informationen finden Sie im Blogbeitrag "Grundlegendes zum Hardware-erzwungenen Stapelschutz".

Aktivieren des vom Kernelmodus durch Hardware erzwungenen Stapelschutz in Windows-Sicherheit

Virtualisierungsbasierte Sicherheit (VBS) und Hypervisor-erzwungene Codeintegrität (HVCI) sind Voraussetzungen für den vom Kernelmodus hardwaregezwungenen Stapelschutz. Sie müssen zuerst sicherstellen, dass diese Features aktiviert sind, bevor Sie fortfahren. Sie werden automatisch auf Windows-Systemen aktiviert, die die Mindesthardwareanforderungen erfüllen.

Aktivieren Sie VBS und HVCI mit den folgenden Schritten:

  1. Öffnen Sie die Windows-Sicherheit-App.

  2. Navigieren Sie zu Device Security > Core isolation details > Memory integrity.

  3. Schalten Sie das Feature ein.

  4. Nachdem Sie diese Änderung vorgenommen haben, müssen Sie Ihr Gerät neu starten.

Screenshot der Umschaltfläche zum Aktivieren oder Deaktivieren der Speicherintegrität.

Aktivieren des vom Kernelmodus durch Hardware erzwungenen Stapelschutz

  1. Öffnen Sie die Windows-Sicherheit-App.

  2. Navigieren Sie zu Device Security > Core Isolation Details > Kernelmodus Hardware-erzwungener Stapelschutz.

  3. Schalten Sie das Feature ein.

Screenshot der Umschaltfläche zum Aktivieren oder Deaktivieren des vom Kernelmodus erzwungenen Stapelschutz im Kernelmodus.

Aktivieren des vom Kernelmodus durch Hardware erzwungenen Stapelschutz im Editor für lokale Gruppenrichtlinien

Für Unternehmenskunden kann der vom Kernelmodus erzwungene Stapelschutz mithilfe von Gruppenrichtlinien aktiviert werden.

  1. Öffnen Sie den Editor für lokale Gruppenrichtlinien.

  2. Navigieren Sie zu Computerkonfiguration > administrative Vorlagen > System > Device Guard > aktivieren Virtualisierungsbasierte Sicherheit.

  3. Vergewissern Sie sich, dass die virtualisierungsbasierte Sicherheit aktiviert ist.

  4. Unter "Optionen " finden Sie den vom Kernelmodus durch Hardware erzwungenen Stapelschutz. Wählen Sie im Erzwingungsmodus aktiviert aus.

  5. Wählen Sie Übernehmen. Dann OK.

Screenshot der Option zum Aktivieren des vom Kernelmodus durch Hardware erzwungenen Stapelschutz mithilfe von Gruppenrichtlinien.

Inkompatible Treiber

Es gibt eine kleine Gruppe von Treibern, die noch nicht kompatibel sind. Treiber, die potenziell böswilliges Verhalten aufweisen, z. B. entführerische Absenderadressen, um Kontrollflussrichtlinien zu umgehen, sind nicht kompatibel und werden der anfälligen Treiberblockliste für den hardwaregezwingten Stapelschutz im Kernelmodus hinzugefügt. Nachdem Sie mit Treiberanbietern daran gearbeitet haben, Codeverschleierung auf eine schattenstapelkonforme Weise durchzuführen, sind diese Treiber zulässig.

Um eine gute Benutzererfahrung zu bieten und Computerblaue Bildschirme zu vermeiden, verwaltet Windows eine inkompatible Treiberblockliste für den vom Kernelmodus durch Hardware erzwungenen Stapelschutz. Dies sind Treiber, die bekannt sind, um Absenderadressen im Kernel zu entführern. Wenn dieses Feature aktiviert ist, darf der Treiber nicht geladen werden (im Gegensatz zu einem Blauen Bildschirm, wenn eine Absenderadresse entführerisch versucht wird). Wenn das System bereits einen Treiber auf der Blockliste installiert hat, kann dieses Feature nicht aktiviert werden. Sie können dieses Feature aktivieren, indem Sie den zugehörigen Treiber deinstallieren.

Überprüfen von inkompatiblen Treibern

Das Feature kann erst aktiviert werden, wenn die Inkompatibilitäten aufgelöst werden, entweder mit einer aktualisierten Version des Treiberanbieters oder durch Entfernen der Anwendung, die den Treiber installiert hat. Um die Liste der inkompatiblen Treiber anzuzeigen, wählen Sie "Inkompatible Treiber überprüfen" aus.

Screenshot, der zeigt, wo mögliche inkompatible Treiber zu finden sind.

Bestimmte Apps verwenden Treiber, die mit dem vom Kernelmodus durch Hardware erzwungenen Stapelschutz nicht kompatibel sind. Beispielsweise Apps, die Verschleierungsmodule verwenden, um ip- und verschleierten Steuerfluss zu schützen, die nicht mit Schattenstapeln kompatibel sind. Wenn der unsichere Treiber versucht, dieses Sicherheitsfeature zu laden, wird eine Eingabeaufforderung mit der Meldung "Ein Treiber kann auf diesem Gerät nicht geladen werden" angezeigt.

Screenshot des Dialogfelds

Optional können Sie das Sicherheitsfeature deaktivieren, obwohl dadurch die Sicherheit Ihres Geräts herabgestuft wird. Sie können dieses Feature immer in der Windows-Sicherheit Anwendung erneut aktivieren.