Freigeben über


Kernel-DMA-Schutz

Der Kernel-DMA-Schutz (Direct Memory Access) ist ein Windows-Sicherheitsfeature, das vor externen Peripheriegeräten schützt, um nicht autorisierten Zugriff auf den Arbeitsspeicher zu erhalten.

PCIe-Hot-Plug-Geräte wie Thunderbolt, USB4 und CFexpress ermöglichen es Benutzern, Klassen von externen Peripheriegeräten, einschließlich Grafikkarten, mit der Plug-and-Play-Leichtigkeit von USB an ihre Geräte anzufügen. Diese Geräte sind DMA-fähig und können auf den Systemspeicher zugreifen und Lese- und Schreibvorgänge ausführen, ohne dass der Systemprozessor einbezogen werden muss. Diese Funktion ist der Grund für die außergewöhnliche Leistung von PCI-Geräten, macht sie aber auch anfällig für Drive-by-DMA-Angriffe.

Drive-by-DMA-Angriffe sind Angriffe, die auftreten, während der Besitzer des Systems nicht anwesend ist und in der Regel nur wenige Minuten dauern, mit einfachen bis moderaten Angriffstools (erschwingliche, standardmäßige Hardware und Software), die keine Demontage des Geräts erfordern. Angreifer können beispielsweise ein USB-ähnliches Gerät anschließen, während sich der Gerätebesitzer in einer Pause befindet, und alle Geheimnisse auf dem Computer entfernen oder eine Schadsoftware einschleusen, die es ihnen ermöglicht, die vollständige Kontrolle über das Gerät zu haben, während der Sperrbildschirm umgangen wird.

Hinweis

Das Kernel-DMA-Schutzfeature schützt nicht vor DMA-Angriffen über 1394/FireWire, PCMCIA, CardBus oder ExpressCard.

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

Windows verwendet die IOMMU (Input/Output Memory Management Unit) des Systems, um das Starten und Ausführen von DMA durch externe Peripheriegeräte zu blockieren, es sei denn, die Treiber für diese Peripheriegeräte unterstützen die Speicherisolation (z. B. DMA-Remapping). Peripheriegeräte mit DMA-Remapping-kompatiblen Treibern werden automatisch aufgelistet, gestartet und dürfen DMA in ihren zugewiesenen Speicherbereichen ausführen.

Standardmäßig werden Peripheriegeräte mit inkompatiblen DMA-Remapping-Treibern 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 DMA Remapping inkompatiblen Treibern mithilfe von MDM- oder Gruppenrichtlinien angewendet wird.

Benutzerfreundlichkeit

Wenn Kernel-DMA-Schutz aktiviert ist:

  • Peripheriegeräte mit DMA-Remapping-kompatiblen Gerätetreibern werden automatisch aufgezählt und gestartet.
  • Peripheriegeräte mit inkompatiblen DMA-Remapping-Treibern können nicht gestartet werden, wenn das Peripheriegerät angeschlossen wurde, bevor sich ein autorisierter Benutzer anmeldet oder während der Bildschirm gesperrt ist. Sobald das System entsperrt ist, wird der Peripherietreiber 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.

Windows-Edition und Lizenzierungsanforderungen

In der folgenden Tabelle sind die Windows-Editionen aufgeführt, die den DMA-Schutz (Kernel Direct Memory Access) unterstützen:

Windows Pro Windows Enterprise Windows Pro Education/SE Windows Education
Ja Ja Ja Ja

Lizenzberechtigungen für den Kernel-DMA-Schutz (Direct Memory Access) werden von den folgenden Lizenzen gewährt:

Windows Pro/Pro Education/SE Windows Enterprise E3 Windows Enterprise E5 Windows Education A3 Windows Education A5
Ja Ja Ja Ja Ja

Weitere Informationen zur Windows-Lizenzierung finden Sie unter Übersicht über die Windows-Lizenzierung.

Systemkompatibilität

Kernel-DMA-Schutz erfordert UEFI-Firmwareunterstützung, und virtualisierungsbasierte Sicherheit (VBS) ist nicht erforderlich.

Der Kernel-DMA-Schutz ist nicht mit anderen Gegenmaßnahmen für BitLocker-DMA-Angriffe kompatibel. Es wird empfohlen, die Gegenmaßnahmen für BitLocker-DMA-Angriffe zu deaktivieren, wenn das System 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.

Hinweis

DMA-Neuzuordnungsunterstützung für Grafikgeräte wurde in Windows 11 mit dem WDDM 3.0-Treibermodell hinzugefügt. Windows 10 unterstützt dieses Feature nicht.

Überprüfen, ob der Kernel-DMA-Schutz aktiviert ist

Systeme, die Kernel-DMA-Schutz unterstützen, aktivieren das Feature automatisch, ohne dass eine Benutzer- oder IT-Administratorkonfiguration erforderlich ist.

Sie können die Windows-Sicherheitseinstellungen verwenden, um zu überprüfen, ob der Kernel-DMA-Schutz aktiviert ist:

  1. Öffnen Sie Windows-Sicherheit.

  2. Wählen Sie Gerätesicherheit > Core-Isolationsdetails > Speicherzugriffsschutz aus.

    Screenshot: Kernel-DMA-Schutz in Windows-Sicherheit.

    Alternativ können Sie die Desktop-App "Systeminformation" (msinfo32.exe) verwenden. Wenn das System Kernel-DMA-Schutz unterstützt, wird der Wert Kernel-DMA-Schutz auf ON festgelegt.

    Screenshot: Kernel-DMA-Schutz in Systeminformationen.

    Wenn der aktuelle Status des Kernel-DMA-SchutzesAUS lautet und Hyper-V – Virtualisierung aktiviert in firmwareden Wert NO hat:

    • Neustart in UEFI-Einstellungen
    • Aktivieren der Intel Virtualization Technology
    • Aktivieren der Intel Virtualization Technology für E/A (VT-d)
    • Neustarten des Systems in Windows

    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 aktiviert in Firmware auf JA festgelegt ist.

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

    Wenn der Status des Kernel-DMA-Schutzes deaktiviert bleibt, unterstützt das System den Kernel-DMA-Schutz nicht.

Für Systeme, die den Kernel-DMA-Schutz nicht unterstützen, finden Sie weitere Informationen unter BitLocker-Gegenmaßnahmen oder Thunderbolt 3 und Sicherheit unter Microsoft Windows-Betriebssystem .

Häufig gestellte Fragen

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?

Nicht alle Geräte und Treiber unterstützen die DMA-Neuzuordnung. 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 die DMA-Neuzuordnung nicht unterstützt. Der Wert 2 bedeutet, dass der Gerätetreiber die DMA-Neuzuordnung unterstützt. Wenn die Eigenschaft nicht verfügbar ist, unterstützt der Gerätetreiber die DMA-Neuzuordnung nicht. Ü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.

Screenshot: Gerätedetails für einen Thunderbolt-Controller mit dem Wert 2

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

Verwenden Sie die von Windows bereitgestellten Treiber für die Peripheriegeräte, sofern verfügbar. 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 der Treiber z. B. aktiviert und VT-d (Virtualization Technology for Directed I/O) aktiviert ist, ist die DMA-Neuzuordnung für den Gerätetreiber aktiviert, auch wenn der 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?

Die Microsoft-Posteingangstreiber für USB-XHCI-Controller (3.x), Speicher-AHCI-/SATA-Controller und Speicher-NVMe-Controller unterstützen DMA-Remapping.

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 DMA nicht aus, sodass der Treiber nicht mit dem DMA-Remapping kompatibel ist.

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

Die Richtlinie für externe Geräteenumeration steuert, ob externe Peripheriegeräte aufgelistet werden sollen, die nicht mit der 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 nicht mit Kernel-DMA-Schutz kompatibel sind
  • Mobile Geräteverwaltung (MDM): DmaGuard-Richtlinien