Freigeben über


Erfahren Sie, wie Sie die Log4Shell-Sicherheitsanfälligkeit in Microsoft Defender für Endpunkt verwalten.

Die Sicherheitsanfälligkeit in Log4Shell ist eine Sicherheitsanfälligkeit bezüglich Remotecodeausführung (Remote Code Execution, RCE), die in der Apache Log4j 2-Protokollierungsbibliothek gefunden wurde. Da Apache Log4j 2 häufig von vielen Softwareanwendungen und Onlinediensten verwendet wird, stellt es eine komplexe und risikoreiche Situation für Unternehmen auf der ganzen Welt dar. Als "Log4Shell" (CVE-2021-44228, CVE-2021-45046) bezeichnet, wird ein neuer Angriffsvektor eingeführt, den Angreifer nutzen können, um Daten zu extrahieren und Ransomware in einer Organisation bereitzustellen.

Hinweis

In den Blogs Leitfaden zum Verhindern, Erkennen und Suchen zur Ausnutzung des Log4j 2-Sicherheitsrisikos sowieim Microsoft Security Response Center finden Sie Anleitungen und technische Informationen zu sicherheitsrelevanten und produktspezifischen Empfehlungen zum Schutz Ihrer Organisation.

Übersicht über Ermittlungs-, Überwachungs- und Entschärfungsfunktionen

Defender Vulnerability Management bietet Ihnen die folgenden Funktionen, mit denen Sie das Log4Shell-Sicherheitsrisiko in Ihrer Organisation identifizieren, überwachen und minimieren können:

  • Ermittlung: Die Erkennung von verfügbar gemachten Geräten, sowohl von Microsoft Defender für Endpunkt integrierten Geräten als auch von Geräten, die erkannt wurden, aber noch nicht integriert wurden, basiert auf anfälliger Software und anfälligen Dateien, die auf dem Datenträger erkannt wurden.
  • Bedrohungsbewusstsein: Eine konsolidierte Ansicht, um die Exposition Ihrer Organisation zu bewerten. Diese Ansicht zeigt Ihre Offenlegung auf Geräte- und Softwareebene an und bietet Zugriff auf Details zu anfälligen Dateien, z. B. das letzte Mal, zu dem Zeitpunkt, zu dem sie angezeigt wurden, zum letzten Zeitpunkt der Ausführung und zum zeitpunkt der letzten Ausführung mit offenen Ports. Sie können diese Informationen verwenden, um Ihre Korrekturaktionen zu priorisieren. Es kann bis zu 24 Stunden dauern, bis Daten im Zusammenhang mit verfügbar gemachten Geräten im Dashboard angezeigt werden.
  • Entschärfungsoptionen: Wenden Sie Entschärfungsoptionen an, um Ihr Expositionsrisiko zu verringern.
  • Erweiterte Suche: Verwenden Sie die erweiterte Suche, um Details für anfällige log4j-Dateien zurückzugeben, die auf dem Datenträger identifiziert wurden.

Hinweis

Diese Funktionen werden unter Windows 10 & Windows 11, Windows Server, Linux und macOS unterstützt.

Unterstützung unter Linux erfordert microsoft Defender für Endpunkt Linux-Clientversion 101.52.57 (30.121092.15257.0) oder höher.

Unterstützung unter macOS erfordert Microsoft Defender für Endpunkt macOS-Clientversion 20.121111.15416.0 oder höher.

Weitere Informationen zu unterstützten Versionen finden Sie unter Unterstützte Betriebssystemplattformen und -funktionen.

Ermittlung verfügbar gemachter Geräte

Eingebettete Defender-Sicherheitsrisikomanagementfunktionen sowie die Aktivierung der Log4j-Erkennung im Microsoft Defender-Portal helfen Ihnen, Geräte zu ermitteln, die der Log4Shell-Sicherheitsanfälligkeit ausgesetzt sind.

Integrierte Geräte werden mithilfe vorhandener eingebetteter Defender-Sicherheitsrisikomanagementfunktionen bewertet, die anfällige Software und Dateien erkennen können.

Für die Erkennung auf ermittelten, aber noch nicht integrierten Geräten muss die Log4j-Erkennung aktiviert sein. Dadurch werden Tests auf die gleiche Weise initiiert, wie die Geräteermittlung Ihr Netzwerk aktiv testet. Die Überprüfung umfasst mehrere integrierte Endpunkte (Windows 10+ und Windows Server 2019+-Geräte) und nur Tests innerhalb von Subnetzen, um geräte zu erkennen, die anfällig sind und remote mit CVE-2021-44228 verfügbar gemacht werden.

So aktivieren Sie die Log4-Erkennung:

  1. Wechseln Sie zu Einstellungen>Geräteermittlungsermittlung>einrichten.

  2. Wählen Sie Log4j2-Erkennung aktivieren (CVE-2021-44228) aus.

  3. Klicken Sie auf Speichern.

Screenshot der Einstellung zum Aktivieren der log4j2-Erkennung.

Wenn Sie diese Tests ausführen, wird der Log4j-Standardflow ausgelöst, ohne schädliche Auswirkungen auf das zu testende Gerät oder das Testgerät zu verursachen. Die Überprüfung selbst erfolgt durch Senden mehrerer HTTP-Anforderungen an ermittelte Geräte, die auf allgemeine Webanwendungsports (z. B. 80.8000.8080.443.8443) und URLs ausgerichtet sind. Die Anforderung enthält HTTP-Header mit einer JNDI-Nutzlast, die eine DNS-Anforderung vom testierten Computer auslöst.

Beispiel: User-Agent: ${jndi:dns://192.168.1.3:5353/MDEDiscoveryUser-Agent}, wobei 192.168.1.3 die IP-Adresse des Testcomputers ist.

Hinweis

Die Aktivierung der Log4j2-Erkennung bedeutet auch, dass integrierte Geräte Selbsttests verwenden, um lokale Sicherheitsrisiken zu erkennen.

Erkennung anfälliger Software und Dateien

Defender Vulnerability Management bietet Erkennungsebenen, die Ihnen helfen, Folgendes zu ermitteln:

  • Anfällige Software: Die Ermittlung basiert auf installierten Common Platform Enumerations (CPE) der Anwendung, die bekanntermaßen anfällig für die Remotecodeausführung von Log4j sind.

  • Anfällige Dateien: Sowohl Dateien im Arbeitsspeicher als auch Dateien im Dateisystem werden bewertet. Bei diesen Dateien kann es sich um Log4j-Core-JAR-Dateien mit der bekannten anfälligen Version oder um eine Uber-JAR-Datei handeln, die entweder eine anfällige jndi-Nachschlageklasse oder eine anfällige log4j-core-Datei enthält. Insbesondere:

    • bestimmt, ob eine JAR-Datei eine anfällige Log4j-Datei enthält, indem JAR-Dateien untersucht und nach der folgenden Datei gesucht wird: \META-INF\maven\org.apache.logging.log4j\log4j-core\pom.properties. Wenn diese Datei vorhanden ist, wird die Log4j-Version gelesen und extrahiert.
    • sucht in der JAR-Datei nach der Datei "JndiLookup.class", indem nach Pfaden gesucht wird, die die Zeichenfolge "/log4j/core/lookup/JndiLookup.class" enthalten. Wenn die Datei "JndiLookup.class" vorhanden ist, ermittelt Defender Vulnerability Management, ob diese JAR eine Log4j-Datei mit der in pom.properties definierten Version enthält.
    • sucht nach anfälligen Log4j-core-JAR-Dateien, die in eine geschachtelte JAR-Datei eingebettet sind, indem nach Pfaden gesucht wird, die eine der folgenden Zeichenfolgen enthalten:
      • lib/log4j-core-
      • WEB-INF/lib/log4j-core-
      • App-INF/lib/log4j-core-

In dieser Tabelle werden die unterstützten Plattformen und Versionen der Suchfunktionen beschrieben:

Funktion Dateityp Windows 10+,
server2019+
Server 2012R2,
server2016
Server 2008R2 Linux + macOS
Suchen im Arbeitsspeicher Log4j-core Ja Ja[1] - Ja
Uber-JARs Ja Ja[1] - Ja
Durchsuchen aller Dateien auf dem Datenträger Log4j-core Ja Ja[1] Ja -
Uber-JARs Ja Ja[1] - -

(1) Funktionen sind verfügbar, wenn KB5005292 unter Windows Server 2012 R2 und 2016 installiert ist.

Erfahren Sie mehr über Ihre Log4Shell-Optionen für Offenlegung und Risikominderung.

  1. Wechseln Sie im Microsoft Defender-Portal zu Schwachstellenverwaltung>.

  2. Wählen Sie CVE-2021-44228 aus.

  3. Wählen Sie Sicherheitsrisikoseite öffnen aus.

Screenshot der Seite

Log4Shell-Sicherheitsrisikominderung

Die Sicherheitsanfälligkeit in log4Shell kann verringert werden, indem JNDI-Lookups in den Log4j-Versionen 2.10 bis 2.14.1 mit Standardkonfigurationen verhindert werden. So erstellen Sie diese Entschärfungsaktion über das Dashboard bedrohungserkennung:

  1. Wählen Sie Sicherheitsrisikodetails anzeigen aus.

  2. Wählen Sie Entschärfungsoptionen aus.

Sie können die Entschärfung auf alle verfügbar gemachten Geräte anwenden oder bestimmte integrierte Geräte auswählen. Wählen Sie Entschärfungsaktion erstellen aus, um den Prozess abzuschließen und die Entschärfung auf Geräte anzuwenden.

Screenshot der Entschärfungsoptionen für CVE-2021-44228.

Entschärfungsstatus

Der Risikominderungsstatus gibt an, ob die Problemumgehungsminderung zum Deaktivieren von JDNI-Lookups auf das Gerät angewendet wurde. Sie können den Risikominderungsstatus für jedes betroffene Gerät auf den Registerkarten Verfügbar gemachte Geräte anzeigen. Dies kann dazu beitragen, die Entschärfung und/oder das Patchen von Geräten basierend auf ihrem Risikominderungsstatus zu priorisieren.

Screenshot: Mögliche Risikominderungsstatus.

In der folgenden Tabelle sind die potenziellen Risikominderungsstatus aufgeführt:

Entschärfungsstatus Beschreibung
Problemumgehung angewendet Windows: Die umgebungsvariable LOG4J_FORMAT_MSG_NO_LOOKUPS wurde vor dem letzten Geräteneustart beobachtet.

Linux + macOS: Alle ausgeführten Prozesse weisen in den Umgebungsvariablen LOG4J_FORMAT_MSG_NO_LOOKUPS=true auf.
Problemumgehung: Ausstehender Neustart Die umgebungsvariable LOG4J_FORMAT_MSG_NO_LOOKUPS ist festgelegt, aber es wurde kein nachfolgender Neustart erkannt.
Nicht angewendet Windows: Die umgebungsvariable LOG4J_FORMAT_MSG_NO_LOOKUPS wurde nicht beobachtet.

Linux + macOS: Nicht alle ausgeführten Prozesse weisen in den Umgebungsvariablen LOG4J_FORMAT_MSG_NO_LOOKUPS=true auf, und die Entschärfungsaktion wurde nicht auf das Gerät angewendet.
Teilweise entschärft Linux + macOS: Obwohl die Entschärfungsaktion auf das Gerät angewendet wurde, weisen nicht alle ausgeführten Prozesse LOG4J_FORMAT_MSG_NO_LOOKUPS=true in ihren Umgebungsvariablen auf.
Nicht zutreffend Geräte mit anfälligen Dateien, die sich nicht im Versionsbereich der Entschärfung befinden.
Unbekannt Der Entschärfungsstatus konnte zu diesem Zeitpunkt nicht ermittelt werden.

Hinweis

Es kann einige Stunden dauern, bis der aktualisierte Entschärfungsstatus eines Geräts widergespiegelt wird.

Wiederherstellen von Entschärfungen, die für das Log4Shell-Sicherheitsrisiko angewendet wurden

In Fällen, in denen die Entschärfung wiederhergestellt werden muss, führen Sie die folgenden Schritte aus:

Für Windows:

  1. Öffnen Sie ein erhöhtes PowerShell-Fenster.

  2. Führen Sie den folgenden Befehl aus:

    [Environment]::SetEnvironmentVariable("LOG4J\_FORMAT\_MSG\_NO\_LOOKUPS", $null,[EnvironmentVariableTarget]::Machine)
    

Die Änderung wird nach dem Neustart des Geräts wirksam.

Für Linux:

  1. Öffnen Sie die Datei "/etc/environment", und löschen Sie die Zeile LOG4J_FORMAT_MSG_NO_LOOKUPS=true.

  2. Löschen Sie die Datei "/etc/systemd/system.conf.d/log4j_disable_jndi_lookups.conf".

  3. Löschen Sie die Datei "/etc/systemd/user.conf.d/log4j_disable_jndi_lookups.conf".

Die Änderung wird nach dem Neustart des Geräts wirksam.

Für macOS:

Entfernen Sie die Datei setenv. LOG4J_FORMAT_MSG_NO_LOOKUPS.plist aus den folgenden Ordnern:

  • /Library/LaunchDaemons/
  • /Library/LaunchAgents/
  • /Users/[username]/Library/LaunchAgents/ - für alle Benutzer

Die Änderung wird nach dem Neustart des Geräts wirksam.

Apache Log4j-Sicherheitsempfehlungen

Um die aktive Sicherheitsempfehlung im Zusammenhang mit Apache log4j anzuzeigen, wählen Sie auf der Seite mit den Sicherheitsrisikendetails die Registerkarte Sicherheitsempfehlungen aus. Wenn Sie in diesem Beispiel Apache Log4j aktualisieren auswählen, wird ein weiteres Flyout mit weiteren Informationen angezeigt:

Screenshot: Update der Apache log4j-Sicherheitsempfehlung.

Wählen Sie Wartung anfordern aus, um eine Wartungsanforderung zu erstellen.

Untersuchen des Sicherheitsrisikos im Microsoft Defender-Portal

Sobald die verfügbar gemachten Geräte, Dateien und Software gefunden wurden, werden relevante Informationen über die folgenden Erfahrungen im Microsoft Defender-Portal übermittelt:

Softwareinventar

Suchen Sie auf der Seite Softwareinventur nach CVE-2021-44228 , um Details zu den Log4j-Softwareinstallationen und -offenlegungen anzuzeigen:

Screenshot: Log4j-Sicherheitsrisiko auf der Seite

Schwächen

Suchen Sie auf der Seite schwachstellen nach CVE-2021-44228 , um Informationen zur Sicherheitsanfälligkeit in Log4Shell anzuzeigen:

Screenshot: Log4j-Sicherheitsrisiko auf der Seite

Verwenden der erweiterten Suche

Sie können die folgende erweiterte Suchabfrage verwenden, um Sicherheitsrisiken in installierter Software auf Geräten zu identifizieren:

   DeviceTvmSoftwareVulnerabilities
   | where CveId in ("CVE-2021-44228", "CVE-2021-45046")

Sie können die folgende erweiterte Huntingabfrage verwenden, um Sicherheitsrisiken in installierter Software auf Geräten zu identifizieren, um Ergebnisse auf Dateiebene vom Datenträger anzuzeigen:

   DeviceTvmSoftwareEvidenceBeta
   | mv-expand DiskPaths
   | where DiskPaths contains "log4j"
   | project DeviceId, SoftwareName, SoftwareVendor, SoftwareVersion, DiskPaths