Kernel-DMA-Schutz

Gilt für

  • Windows 10
  • Windows 11

In Windows 10, Version 1803, hat Microsoft ein neues Feature namens Kernel-DMA-Schutz eingeführt, um PCs vor Drive-by-DMA-Angriffen (Drive-by Direct Memory Access) unter Verwenden von PCI-Hot-Plug-Geräten zu schützen, die an extern zugänglichen PCIe-Ports angeschlossen werden (z. B. Surface™ 3-Ports und CFexpress). In Windows 10, Version 1903, hat Microsoft die Unterstützung des Kernel-DMA-Schutzes erweitert, um interne PCIe-Ports (z. B. M.2-Slots) einzubeziehen.

Drive-by-DMA-Angriffe können zur Offenbarung vertraulicher Informationen, die sich auf einem PC befinden, oder sogar zur Einschleusung von Schadsoftware führen, die es Angreifern ermöglicht, den Sperrbildschirm zu umgehen oder PCs remote zu steuern.

Dieses Feature schützt nicht vor DMA-Angriffen über 1394/FireWire, PCMCIA, CardBus, ExpressCard usw.

Hintergrund

PCI-Geräte sind DMA-fähig, sodass sie den Systemspeicher jederzeit lesen und in den Systemspeicher schreiben können, ohne dass der Systemprozessor an diesen Vorgängen beteiligt werden muss. Die DMA-Funktion macht PCI-Geräte zu den leistungsstärksten Geräten, die heute verfügbar sind. Diese Geräte waren bisher nur innerhalb des PC-Gehäuses vorhanden, entweder als Karte verbunden oder auf der Hauptplatine gelötet. Der Zugriff auf diese Geräte erforderte, dass der Benutzer die Stromversorgung des Systems ausschalten und das Chassis öffnen musste.

Bei den heutigen Hot-Plug-PCIe-Ports (z. B. Thunderbolt™ und CFexpress) ist dies nicht mehr erforderlich.

Hot-Plug-PCIe-Ports wie die Thunderbolt-Technologie™ haben moderne PCs mit einer Erweiterbarkeit versehen, die zuvor für PCs nicht verfügbar war. Damit können Benutzer neue Klassen externer Peripheriegeräte wie Grafikkarten oder andere PCI-Geräte an ihre PCs anschließen, wobei die Hot-Plug-Erfahrung identisch mit USB ist. Externe und leicht zugängliche PCI-Hot-Plug-Ports machen PCs anfällig für Drive-by-DMA-Angriffe.

Drive-by-DMA-Angriffe sind Angriffe, die erfolgen, während der Besitzer des Systems abwesend ist, und nehmen in der Regel weniger als 10 Minuten in Anspruch. Sie werden mit einfachen bis bescheidenen Angriffstools (kostengünstige, standardmäßige Hardware und Software) durchgeführt, die keine Demontage des PCs erfordern. Ein einfaches Beispiel wäre, dass ein PC-Besitzer den PC für eine kurze Kaffeepause unbeaufsichtigt lässt und dass während der Pause ein Angreifer eintritt, ein USB-ähnliches Gerät anschließt und mit allen Geheimnissen auf dem Computer fortgeht oder eine Schadsoftware einschleust, die ihm vollständige Remote-Kontrolle über den PC gibt.

So schützt Windows vor DMA-Drive-by-Angriffen

Windows verwendet die IOMMU-Einheit (Input/Output Memory Management Unit) des Systems, um zu verhindern, dass externe Peripheriegeräte einen Speicherzugriff (DMA) starten und ausführen, es sei denn, die Treiber für diese Peripheriegeräte unterstützen die Speicherisolation (z. B. DMA-Neuzuordnung). Peripheriegeräte mit kompatiblen DMA-Neuzuordnungstreibern werden automatisch aufgelistet, gestartet und dürfen DMA in ihren zugewiesenen Speicherbereichen ausführen.

Standardmäßig werden Peripheriegeräte mit Treibern, die mit DMA-Neuzuordnung inkompatibel sind, am Starten und Ausführen von DMA gehindert, bis sich ein autorisierter Benutzer beim System anmeldet oder den Bildschirm entsperrt. IT-Administratoren können das Standardverhalten ändern, das auf Geräte mit Treibern angewendet wird, die mit der DMA-Neuzuordnung nicht kompatibel sind, indem sie dieDmaGuard-MDM-Richtlinien verwenden.

Benutzerfreundlichkeit

Kernel-DMA-Schutz – Benutzererfahrung

Standardmäßig werden Peripheriegeräte mit Gerätetreibern, die mit DMA-Neuzuordnung kompatibel sind, automatisch aufgelistet und gestartet. Peripheriegeräte mit Treibern, die mit DMA-Neuzuordnung nicht kompatibel sind, werden am Starten gehindert, wenn das Peripheriegerät vor der Anmeldung eines autorisierten Benutzers angeschlossen wurde oder der Bildschirm gesperrt ist. Nachdem das System entsperrt wurde, wird der Treiber des Peripheriegeräts vom Betriebssystem gestartet, und das Peripheriegerät funktioniert weiterhin normal, bis das System neu gestartet oder das Peripheriegerät getrennt wird. Das Peripheriegerät funktioniert weiterhin normal, wenn der Benutzer den Bildschirm sperrt oder sich vom System abmeldet.

Systemkompatibilität

Für den Kernel-DMA-Schutz ist neue UEFI-Firmwareunterstützung erforderlich. Diese Unterstützung wird nur für neu eingeführte Intel-basierte Systeme erwartet, die mit Windows 10, Version 1803 (nicht alle Systeme), ausgeliefert werden. Virtualisierungsbasierte Sicherheit (VBS) ist nicht erforderlich.

Um festzustellen, ob ein System den Kernel-DMA-Schutz unterstützt, überprüfen Sie die Desktop-App für Systeminformationen (MSINFO32). Systeme, die vor Windows 10, Version 1803, veröffentlicht wurden, unterstützen keinen Kernel-DMA-Schutz, können aber andere DMA-Angriffsminderungen nutzen, wie in BitLocker-Gegenmaßnahmen beschrieben.

Hinweis

Der Kernel-DMA-Schutz ist nicht kompatibel mit anderen BitLocker-Gegenmaßnahmen für DMA-Angriffe. Es wird empfohlen, die Gegenmaßnahmen für BitLocker DMA-Angriffe zu deaktivieren, wenn das System den Kernel-DMA-Schutz unterstützt. Der Kernel-DMA-Schutz bietet über die BitLocker-DMA-Angriffs-Gegenmaßnahmen eine höhere Sicherheitsbarriere für das System, während die Nutzbarkeit externer Peripheriegeräte erhalten bleibt.

So überprüfen Sie, ob Der Kernel-DMA-Schutz aktiviert ist

Auf Systemen mit Windows 10, Version 1803, die Kernel-DMA-Schutz unterstützen, wird dieses Sicherheitsfeature automatisch vom Betriebssystem aktiviert, ohne dass eine Benutzer- oder IT-Administratorkonfiguration erforderlich ist.

Verwenden der Windows-Sicherheits-App

Ab Windows 10, Version 1809, können Sie die Windows-Sicherheit-App verwenden, um zu überprüfen, ob der Kernel-DMA-Schutz aktiviert ist. Klicken Sie auf Start > Einstellungen > Update und Sicherheit > Windows-Sicherheit > Windows-Sicherheit öffnen > Gerätesicherheit > Details zu Kernisolation > Speicherzugriffsschutz.

Kernel-DMA-Schutz in Windows-Sicherheit

Verwenden von Systeminformationen

  1. Starten Sie MSINFO32.exe in einer Eingabeaufforderung oder in der Windows-Suchleiste.

  2. Überprüfen Sie den Wert des Kernel-DMA-Schutzes.

    Kernel-DMA-Schutz in Systeminformationen.

  3. Wenn der aktuelle Status des Kernel-DMA-Schutzes auf „AUS“ und Hyper-V-Virtualisierung in der Firmware aktiviert auf „NEIN“ festgelegt ist:

    • Neustart in die BIOS-Einstellungen durchführen
    • Aktivieren Sie die Intel-Virtualisierungstechnologie.
    • Aktivieren Sie die Intel-Virtualisierungstechnologie für E/A (VT-d). In Windows 10, Version 1803, wird nur Intel VT-d unterstützt. Andere Plattformen können die in BitLocker-Gegenmaßnahmen beschriebenen DMA-Angriffsminderungen verwenden.
    • Starten Sie das System in Windows neu.

    Hinweis

    Wenn das Hyper-V-Windows-Feature aktiviert ist, werden alle Hyper-V-bezogenen Features ausgeblendet, und die Entität Ein Hypervisor wurde erkannt. Features, die für Hyper-V erforderlich sind, werden nicht angezeigt wird am Ende der Liste angezeigt. Dies bedeutet, dass Hyper-V – Virtualisierung in der Firmware aktiviert auf „JA“ festgelegt ist.

    Hinweis

    Das Aktivieren der Hyper-V-Virtualisierung in der Firmware (IOMMU) ist erforderlich, um den Kernel-DMA-Schutz zu aktivieren, auch wenn die Firmware die Kennzeichnung „ACPI Kernel DMA Protection Indicators“ aufweist, die in Kernel-DMA-Schutz (Speicherzugriffsschutz) für OEMs beschrieben ist.

  4. Wenn der Status des Kernel-DMA-Schutzes deaktiviert bleibt, unterstützt das System dieses Feature nicht.

    Für Systeme, die den Kernel-DMA-Schutz nicht unterstützen, lesen Sie die BitLocker-Gegenmaßnahmen oder Thunderbolt™ 3 und Sicherheit unter dem Betriebssystem Microsoft Windows® 10 für andere Möglichkeiten des DMA-Schutzes.

Häufig gestellte Fragen

Unterstützen auf dem Markt befindliche Systeme den Kernel-DMA-Schutz für Thunderbolt™ 3?

Auf dem Markt befindliche Systeme, die mit Windows 10, Version 1709 oder früher, veröffentlicht wurden, unterstützen nach dem Upgrade auf Windows 10, Version 1803, keinen Kernel-DMA-Schutz für Thunderbolt™ 3, da für dieses Feature die Änderungen an der BIOS-/Plattformfirmware und Garantien erforderlich sind, die nicht auf zuvor veröffentlichte Geräte zurückportiert werden können. Informationen zu diesen Systemen finden Sie unter BitLocker-Gegenmaßnahmen oder Thunderbolt™ 3 und Sicherheit unter dem Betriebssystem Microsoft Windows ® 10 für andere Möglichkeiten des DMA-Schutzes.

Verhindert der Kernel-DMA-Schutz Drive-by-DMA-Angriffe während des Starts?

Nein, der Kernel-DMA-Schutz schützt nur vor Drive-by-DMA-Angriffen, nachdem das Betriebssystem geladen wurde. Es liegt in der Verantwortung der Systemfirmware/des BIOS, sich während des Starts vor Angriffen über die Thunderbolt 3-Ports™ zu schützen.

Wie kann ich überprüfen, ob ein bestimmter Treiber DMA-Neuzuordnung unterstützt?

Die DMA-Neuzuordnung wird nur für bestimmte Gerätetreiber und nicht von allen Geräten und Treibern auf einer Plattform universell unterstützt. Um zu überprüfen, ob ein bestimmter Treiber für DMA-Neuzuordnung aktiviert ist, überprüfen Sie die Werte, die der Eigenschaft „DMA-Neuzuordnungsrichtlinie“ auf der Registerkarte „Details“ im Geräte-Manager eines Geräts entsprechen. Der Wert 0 oder 1 bedeutet, dass der Gerätetreiber DMA-Neuzuordnung nicht unterstützt. Ein Wert von 2 bedeutet, dass der Gerätetreiber DMA-Neuzuordnung unterstützt. Wenn die Eigenschaft nicht verfügbar ist, wird die Richtlinie nicht vom Gerätetreiber festgelegt (DMA-Neuzuordnung wird vom Gerätetreiber nicht unterstützt). Überprüfen Sie die Treiberinstanz für das Gerät, das Sie testen. Einige Treiber können je nach Position des Geräts (intern oder extern) unterschiedliche Werte aufweisen.

Benutzererfahrung mit dem Kernel-DMA-Schutz

*Für die Windows 10-Versionen 1803 und 1809 verwendet das Eigenschaftenfeld in Geräte-Manager einen GUID, wie in der folgenden Abbildung hervorgehoben.

Erfahrung eines Benutzers mit dem Kernel-DMA-Schutz

Wenn die Treiber für PCI- oder Thunderbolt™ 3-Peripheriegeräte DMA-Neuzuordnung nicht unterstützen?

Wenn die Peripheriegeräte über Klassentreiber verfügen, die von Windows bereitgestellt werden, verwenden Sie diese Treiber auf Ihren Systemen. Wenn von Windows für Ihre Peripheriegeräte keine Klassentreiber bereitgestellt werden, wenden Sie sich an den Anbieter des Peripheriegeräts/Treibers, um den Treiber zur Unterstützung der DMA-Neuzuordnung zu aktualisieren.

Der Kernel-DMA-Schutz meines Systems ist deaktiviert. Kann die DMA-Neuzuordnung für ein bestimmtes Gerät aktiviert werden?

Ja. Die DMA-Neuzuordnung für ein bestimmtes Gerät kann unabhängig vom Kernel-DMA-Schutz aktiviert werden. Wenn sich der Treiber beispielsweise anmeldet und VT-d (Virtualisierungstechnologie für gerichtete E/A) aktiviert ist, wird die DMA-Neuzuordnung für den Gerätetreiber aktiviert, auch wenn Kernel-DMA-Schutz deaktiviert ist.

Der Kernel-DMA-Schutz ist eine Richtlinie, die es ermöglicht oder verhindert, dass Geräte basierend auf ihrem Neuzuordnungsstatus und ihren Funktionen DMA ausführen.

Unterstützen Microsoft-Treiber die DMA-Neuzuordnung?

In Windows 10, 1803 und höher, unterstützen die Microsoft-Posteingangstreiber für USB XHCI-Controller (3.x), Storage AHCI/SATA-Controller und Storage NVMe-Controller die DMA-Neuzuordnung.

Müssen Treiber für Nicht-PCI-Geräte mit DMA-Neuzuordnung kompatibel sein?

Nein. Geräte für Nicht-PCI-Peripheriegeräte, z. B. USB-Geräte, führen keine DMA aus. Daher braucht der Treiber nicht mit DMA-Neuzuordnung kompatibel zu sein.

Wie kann ein Unternehmen die Enumerationsrichtlinie für externe Geräte aktivieren?

Die Enumerationsrichtlinie für externe Geräte steuert, ob externe Peripheriegeräte aufgelistet werden sollen, die nicht mit DMA-Neuzuordnung kompatibel sind. Peripheriegeräte, die mit DMA-Neuzuordnung kompatibel sind, werden immer aufgelistet. Peripheriegeräte, die es nicht sind, können blockiert, zugelassen bzw. erst zugelassen werden, nachdem sich der Benutzer angemeldet hat (Standard).

Die Richtlinie kann aktiviert werden, indem Folgendes verwendet wird:

  • Gruppenrichtlinie: Administrative Vorlagen\System\Kernel-DMA-Schutz\Enumerationsrichtlinie für externe Geräte, die mit dem Kernel-DMA-Schutz nicht kompatibel sind
  • Mobile Geräteverwaltung (MDM): DmaGuard-Richtlinien

Verwandte Themen