Microsoft Defender for Endpoint-Plug-In für Windows-Subsystem für Linux (WSL)

Übersicht

Die Windows-Subsystem für Linux (WSL) 2, die die vorherige Version von WSL (unterstützt von Microsoft Defender for Endpoint ohne Plug-In) ersetzt, stellt eine Linux-Umgebung bereit, die nahtlos in Windows integriert ist, aber mithilfe von Virtualisierungstechnologie isoliert ist. Mit dem WSL-Plug-In (Microsoft Defender for Endpoint für Windows-Subsystem für Linux 2) kann Defender für Endpunkt mehr Einblick in alle ausgeführten WSL-Container bieten, indem das isolierte Subsystem angeschlossen wird.

Bekannte Probleme und Einschränkungen

Beachten Sie Folgendes, bevor Sie beginnen:

  1. Das Plug-In unterstützt derzeit keine automatischen Updates. Wenn eine neue Version veröffentlicht wird, muss ein neues MSI-Paket angewendet werden, um das Update auszuführen. Dies kann mithilfe eines der Softwarebereitstellungstools erfolgen. Updates werden über Microsoft-Updates bereitgestellt.

  2. Da es einige Minuten dauert, bis das Plug-In vollständig instanziiert ist, und bis zu 30 Minuten, bis ein WSL2-instance sich selbst integriert hat, können kurzlebige WSL-Containerinstanzen dazu führen, dass die WSL2-instance nicht im Microsoft Defender-Portal (https://security.microsoft.com) angezeigt wird. Sobald eine (beliebige) Verteilung lange genug ausgeführt wurde (mindestens 30 Minuten), wird sie angezeigt.

  3. Die Verwendung eines benutzerdefinierten Kernels in Kombination mit dem Plug-In wird nicht unterstützt. Wenn Sie versuchen, WSL mit installiertem Plug-In zu starten, tritt der Fehler Ein schwerwiegender Fehler wurde vom Plug-In "DefenderforEndpointPlug-in" zurückgegeben auf. Fehlermeldung: "Benutzerdefinierter Kernel/Konfiguration nicht unterstützt.".

Softwarevoraussetzungen

  • WSL Version 2.0.7 oder höher muss mit mindestens einer aktiven Distribution ausgeführt werden.

    Führen Sie aus wsl --update , um sicherzustellen, dass Sie die neueste Version verwenden. Wenn wsl -–version eine ältere Version als 2.0.7 angezeigt wird, führen Sie aus wsl -–update –pre-release , um das neueste Update zu erhalten.

  • Defender für Endpunkt muss integriert sein und auf dem Windows-Hostbetriebssystem ausgeführt werden.

  • Auf dem Hostbetriebssystem muss Windows 10 Client, Version 2004 und höher (Build 19044 und höher) oder Windows 11 Client ausgeführt werden, um die Windows-Subsystem für Linux Versionen zu unterstützen, die mit dem Plug-In verwendet werden können.

Softwarekomponenten und Dateinamen des Installationsprogramms

Installationsprogramm: DefenderPlugin-x64-0.23.1102.4.msi. Sie können es von der Onboardingseite im Microsoft Defender-Portal herunterladen.

Installationsverzeichnisse:

  • C:\Program Files\

  • C:\ProgramData\

Installierte Komponenten:

  • DefenderforEndpointPlug-in.dll. Diese DLL ist die Bibliothek zum Laden von Defender für Endpunkt für die Arbeit in WSL. Sie finden es unter C:\Programme\Microsoft Defender for Endpoint Plug-In für WSL\plug-in.

  • healthcheck.exe. Dieses Programm überprüft die Integrität status von Defender für Endpunkt und ermöglicht es Ihnen, die installierten Versionen von WSL, Plug-In und Defender für Endpunkt anzuzeigen. Sie finden es unter C:\Programme\Microsoft Defender for Endpoint-Plug-In für WSL\tools.

Installationsschritte

Wenn Ihr Windows-Subsystem für Linux noch nicht installiert ist, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie das Terminal oder die Eingabeaufforderung. (Wechseln Sie unter Windows zu Start>.Eingabeaufforderung. Oder klicken Sie mit der rechten Maustaste auf die Startschaltfläche, und wählen Sie dann Terminal aus.)

  2. Führen Sie den Befehl wsl -–install aus.

    1. Bestätigen, dass WSL installiert ist und ausgeführt wird

    1. Führen Sie über das Terminal oder die Eingabeaufforderung aus wsl –update , um sicherzustellen, dass Sie über die neueste Version verfügen.

    2. Führen Sie den wsl Befehl aus, um sicherzustellen, dass WSL vor dem Testen ausgeführt wird.

    2. Installieren des Plug-Ins

    Wenn WSL ausgeführt und vollständig auf dem neuesten Stand ist, führen Sie die folgenden Schritte aus, um das Plug-In zu installieren:

    1. Installieren Sie die MSI-Datei, die aus dem Onboardingabschnitt im Microsoft Defender-Portal heruntergeladen wurde (Einstellungen>Endpunkte>Onboarding>Windows-Subsystem für Linux 2 (Plug-In)).

    2. Öffnen Sie eine Eingabeaufforderung/ein Terminal, und führen Sie aus wsl.

    Sie können das Paket mithilfe von Microsoft Intune bereitstellen.

Hinweis

Wenn WslService ausgeführt wird, wird es während des Installationsvorgangs beendet. Sie müssen das Subsystem nicht separat integrieren. Stattdessen wird das Plug-In automatisch in den Mandanten integriert, in den der Windows-Host integriert ist.

Prüfliste für die Überprüfung der Installation

  1. Warten Sie nach dem Update oder der Installation mindestens fünf Minuten, bis das Plug-In vollständig initialisiert und die Protokollausgabe geschrieben wurde.

  2. Öffnen Sie das Terminal oder die Eingabeaufforderung. (Wechseln Sie unter Windows zu Start>.Eingabeaufforderung. Oder klicken Sie mit der rechten Maustaste auf die Startschaltfläche, und wählen Sie dann Terminal aus.)

  3. Führen Sie den Folgenden Befehl aus: cd "C:\Program Files\Microsoft Defender for Endpoint plug-in for WSL\tools".

  4. Führen Sie den Befehl .\healthcheck.exe aus.

  5. Überprüfen Sie die Details von Defender und WSL, und stellen Sie sicher, dass sie den folgenden Anforderungen entsprechen oder überschreiten:

    • Defender-Plug-In-Version: 0.23.1102.4
    • WSL-Version: 2.0.7.0 oder höher
    • WSL Defender-Version: 101.23092.0011
    • WSL Defender Health: Healthy

Festlegen eines Proxys für Defender, der in WSL ausgeführt wird

In diesem Abschnitt wird beschrieben, wie Sie proxykonnektivität für das Defender für Endpunkt-Plug-In konfigurieren. Wenn Ihr Unternehmen einen Proxy verwendet, um Verbindungen mit Defender für Endpunkt bereitzustellen, die auf dem Windows-Host ausgeführt wird, lesen Sie weiter, um zu ermitteln, ob Sie es für das Plug-In konfigurieren müssen.

Wenn Sie die Hostkonfiguration des Windows EDR-Telemetrieproxys für MDE für das WSL-Plug-In verwenden möchten, ist nichts mehr erforderlich. Diese Konfiguration wird automatisch vom Plug-In übernommen.

Wenn Sie die Host-Winhttp-Proxykonfiguration für MDE für das WSL-Plug-In verwenden möchten, ist nichts mehr erforderlich. Diese Konfiguration wird automatisch vom Plug-In übernommen.

Wenn Sie die Hostnetzwerk- und Netzwerkproxyeinstellung für MDE für das WSL-Plug-In verwenden möchten, ist nichts mehr erforderlich. Diese Konfiguration wird automatisch vom Plug-In übernommen.

Plug-In-Proxyauswahl

Wenn Ihr Hostcomputer mehrere Proxyeinstellungen enthält, wählt das Plug-In die Proxykonfigurationen mit der folgenden Hierarchie aus:

  1. Statische Proxyeinstellung für Defender für Endpunkt (TelemetryProxyServer).

  2. Winhttp Proxy (konfiguriert über netsh den Befehl).

  3. Netzwerk- & Internetproxyeinstellungen.

Beispiel: Wenn Ihr Hostcomputer sowohl über den Winhttp-Proxy als auch über den Netzwerk-& Internetproxy verfügt, wird das Plug-In als Proxykonfiguration ausgewählt Winhttp proxy .

Hinweis

Der DefenderProxyServer Registrierungsschlüssel wird nicht mehr unterstützt. Führen Sie die oben genannten Schritte aus, um den Proxy im Plug-In zu konfigurieren.

Konnektivitätstest für Defender in WSL

Im folgenden Verfahren wird beschrieben, wie Sie bestätigen, dass Defender in Endpoint in WSL über Eine Internetverbindung verfügt.

  1. Öffnen Sie die Registrierungs-Editor als Administrator.

  2. Create einen Registrierungsschlüssel mit den folgenden Details:

    • Name: ConnectivityTest
    • Typ: REG_DWORD
    • Wert: Number of seconds plug-in must wait before running test. (Recommended: 60 seconds)
    • Pfad: Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss\Plugins\DefenderPlug-in
  3. Nachdem die Registrierung festgelegt wurde, starten Sie wsl mit den folgenden Schritten neu:

    1. Öffnen Sie die Eingabeaufforderung, wsl --shutdownund führen Sie den Befehl aus.

    2. Führen Sie den Befehl wsl aus.

  4. Warten Sie 5 Minuten, und führen Sie dann aus healthcheck.exe (befindet sich unter C:\Program Files\Microsoft Defender for Endpoint plug-in for WSL\tools , um die Ergebnisse des Konnektivitätstests zu ermitteln).

    Bei erfolgreicher Ausführung können Sie sehen, dass der Konnektivitätstest erfolgreich war.

Hinweis

Informationen zum Festlegen eines Proxys für die Verwendung in WSL-Containern (den Verteilungen, die auf dem Subsystem ausgeführt werden) finden Sie unter Konfiguration erweiterter Einstellungen in WSL.

Überprüfen der Funktionalität und der ERFAHRUNG von SOC-Analysten

Nach der Installation des Plug-Ins werden das Subsystem und alle ausgeführten Container in das Microsoft Defender-Portal integriert.

  1. Melden Sie sich beim Microsoft Defender-Portal an, und öffnen Sie die Ansicht Geräte.

  2. Filtern Sie mit dem Tag WSL2.

Screenshot: Geräteinventurfilter

Sie können alle WSL-Instanzen in Ihrer Umgebung mit einem aktiven Defender für Endpunkt-Plug-In für WSL anzeigen. Diese Instanzen stellen alle Verteilungen dar, die in WSL auf einem bestimmten Host ausgeführt werden. Der Hostname eines Geräts entspricht dem des Windows-Hosts. Es wird jedoch als Linux-Gerät dargestellt.

  1. Öffnen Sie die Geräteseite. Im Bereich Übersicht finden Sie einen Link für den Ort, an dem das Gerät gehostet wird. Über den Link können Sie verstehen, dass das Gerät auf einem Windows-Host ausgeführt wird. Sie können dann zur weiteren Untersuchung und/oder Antwort auf den Host wechseln.

    Screenshot: Geräteübersicht

Die Zeitleiste wird ähnlich wie Defender für Endpunkt unter Linux mit Ereignissen innerhalb des Subsystems (Datei, Prozess, Netzwerk) aufgefüllt. Sie können Aktivitäten und Erkennungen in der ansicht Zeitleiste beobachten. Warnungen und Incidents werden entsprechend generiert.

Testen des Plug-Ins

Führen Sie die folgenden Schritte aus, um das Plug-In nach der Installation zu testen:

  1. Öffnen Sie das Terminal oder die Eingabeaufforderung. (Wechseln Sie unter Windows zu Start>.Eingabeaufforderung. Oder klicken Sie mit der rechten Maustaste auf die Startschaltfläche, und wählen Sie dann Terminal aus.)

  2. Führen Sie den Befehl wsl aus.

  3. Laden Sie die Skriptdatei aus herunter, und extrahieren Sie sie aus https://aka.ms/LinuxDIY.

  4. Führen Sie an der Linux-Eingabeaufforderung den Befehl aus ./mde_linux_edr_diy.sh.

    Nach einigen Minuten sollte im Portal eine Warnung für eine Erkennung auf dem WSL2-instance angezeigt werden.

    Hinweis

    Es dauert etwa 5 Minuten, bis die Ereignisse im Microsoft Defender-Portal angezeigt werden.

Behandeln Sie den Computer so, als wäre er ein regulärer Linux-Host in Ihrer Umgebung, mit dem Tests durchgeführt werden können. Insbesondere möchten wir Ihr Feedback dazu erhalten, dass mit dem neuen Plug-In potenziell schädliches Verhalten angezeigt werden kann.

Erweiterte Bedrohungssuche

Im Schema "Erweiterte Suche" befindet sich unter der DeviceInfo Tabelle ein neues Attribut namens HostDeviceId , mit dem Sie ein WSL-instance dem Windows-Hostgerät zuordnen können. Im Folgenden finden Sie einige Beispielabfragen für die Suche:

Abrufen aller WSL-Geräte-IDs für den aktuellen organization/Mandanten

Get all WSL device ids for the current organization/tenant 
let wsl_endpoints = DeviceInfo  
| where OSPlatform == "Linux" and isempty(HostDeviceId) != true
| distinct DeviceId; 
wsl_endpoints

Abrufen der WSL-Geräte-IDs und der entsprechenden Hostgeräte-IDs

Get WSL device ids and their corresponding host device ids 
DeviceInfo  
| where OSPlatform == "Linux" and isempty(HostDeviceId) != true
| distinct WSLDeviceId=DeviceId, HostDeviceId

Abrufen einer Liste der WSL-Geräte-IDs, auf denen curl oder wget ausgeführt wurde

Get a list of WSL device ids where curl or wget was run
let wsl_endpoints = DeviceInfo  
| where OSPlatform == "Linux" and isempty(HostDeviceId) != true
| distinct DeviceId; 
DeviceProcessEvents   
| where FileName == "curl" or FileName == "wget" 
| where DeviceId in (wsl_endpoints) 
| sort by Timestamp desc

Problembehandlung

  1. Der Befehl healthcheck.exe zeigt die Ausgabe "Launch WSL distribution with 'bash' command and retry in 5 minutes" (WSL-Distribution mit dem Befehl 'bash' starten und in 5 Minuten wiederholen) an.

    Screenshot: PowerShell-Ausgabe

  2. Wenn der zuvor erwähnte Fehler auftritt, führen Sie die folgenden Schritte aus:

    1. Öffnen Sie ein Terminal instance, und führen Sie den Befehl auswsl.

    2. Warten Sie mindestens 5 Minuten, bevor Sie die Integritätsprüfung erneut ausführen.

  3. Der healthcheck.exe Befehl zeigt möglicherweise die Ausgabe "Warten auf Telemetrie. Versuchen Sie es in 5 Minuten erneut."

    Screenshot: status der Integritätstelemetrie

    Wenn dieser Fehler auftritt, warten Sie fünf Minuten, und führen Sie erneut aus healthcheck.exe.

  4. Wenn im Microsoft Defender-Portal keine Geräte angezeigt werden oder im Zeitleiste keine Ereignisse angezeigt werden, überprüfen Sie folgendes:

    • Wenn sie kein Computerobjekt sehen, stellen Sie sicher, dass genügend Zeit für den Abschluss des Onboardings vergangen ist (in der Regel bis zu 10 Minuten).

    • Stellen Sie sicher, dass Sie die richtigen Filter verwenden und dass Ihnen die entsprechenden Berechtigungen zum Anzeigen aller Geräteobjekte zugewiesen sind. (Ist Ihr Konto/Ihre Gruppe beispielsweise auf eine bestimmte Gruppe beschränkt?)

    • Verwenden Sie das Integritätsprüfungstool, um eine Übersicht über die allgemeine Integrität des Plug-Ins zu erhalten. Öffnen Sie Terminal, und führen Sie das healthcheck.exe Tool über aus C:\Program Files\Microsoft Defender for Endpoint plug-in for WSL\tools.

      Screenshot: status in PowerShell

  • Aktivieren Sie den Konnektivitätstest, und suchen Sie in WSL nach Defender für Endpunkt-Konnektivität. Wenn der Konnektivitätstest fehlschlägt, geben Sie die Ausgabe des Integritätsprüfungstools an an mdeforwsl-preview@microsoft.com.
  1. Wenn Sie mit anderen Herausforderungen oder Problemen konfrontiert sind, öffnen Sie das Terminal, und führen Sie die folgenden Befehle aus, um das Supportpaket zu generieren:

    cd "C:\Program Files\Microsoft Defender for Endpoint plug-in for WSL\tools"
    
    .\healthcheck.exe --supportBundle 
    

    Das Supportpaket befindet sich im Pfad, der vom vorherigen Befehl bereitgestellt wurde.

    Screenshot: status in der PowerShell-Ausgabe

  2. Microsoft Defender Endpunkt für WSL unterstützt Linux-Distributionen, die auf WSL 2 ausgeführt werden. Wenn sie mit WSL 1 verknüpft sind, können Probleme auftreten. Daher wird empfohlen, WSL 1 zu deaktivieren. Führen Sie dazu mit der Intune-Richtlinie die folgenden Schritte aus:

    1. Navigieren Sie zu Ihrem Microsoft Intune Admin Center-Portal.

    2. Wechseln Sie zuGerätekonfigurationsprofile>>Create>Neue Richtlinie.

    3. Wählen Sie Windows 10 und höher>Einstellungskatalog aus.

    4. Create einen Namen für das neue Profil, und suchen Sie nach Windows-Subsystem für Linux, um die vollständige Liste der verfügbaren Einstellungen anzuzeigen und hinzuzufügen.

    5. Legen Sie die Einstellung WSL1 zulassen auf Deaktiviert fest, um sicherzustellen, dass nur WSL 2-Verteilungen verwendet werden können.

    Wenn Sie WSL 1 weiterhin verwenden oder nicht die Intune-Richtlinie verwenden möchten, können Sie ihre installierten Distributionen selektiv für die Ausführung in WSL 2 zuordnen, indem Sie den Befehl in PowerShell ausführen:

    wsl --set-version <YourDistroName> 2
    

    Um WSL 2 als WSL-Standardversion für neue Distributionen zu verwenden, die im System installiert werden sollen, führen Sie den folgenden Befehl in PowerShell aus:

    wsl --set-default-version 2