Teilen über


Erfahren Sie, wie Sie die Sicherheitsanfälligkeit in Log4Shell in Microsoft Defender for Endpoint 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 Onlinedienste 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 einem organization 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 zur Risikominderung, um Ihre organization zu schützen.

Ü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 Microsoft Defender for Endpoint integrierten Geräten als auch Von Geräten, die entdeckt, 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 auf dem 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.

Die Unterstützung unter Linux erfordert Microsoft Defender for Endpoint Linux-Clientversion 101.52.57 (30.121092.15257.0) oder höher.

Für die Unterstützung unter macOS ist Microsoft Defender for Endpoint macOS-Clientversion 20.121111.15416.0 oder höher erforderlich.

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. Dies umfasst das Testen von mehreren integrierten Endpunkten (Windows 10+ und Windows Server 2019+ Geräten) und nur das Testen 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 dass sich dies negativ auf das geprüfte Gerät oder das Testgerät auswirkt. 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 Windows10+,
server2019+
Server 2012R2,
server2016
Server 2008R2 Linux + macOS
Search In Arbeitsspeicher Log4j-core Ja Ja[1] - Ja
Uber-JARs Ja Ja[1] - Ja
Search alle Dateien auf dem Datenträger Log4j-core Ja Ja[1] Ja -
Uber-JARs Ja Ja[1] - -

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

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

  1. Navigieren Sie im Microsoft Defender-Portal zuSchwachstellen beim >Sicherheitsrisikomanagement.
  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 im 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. Um den Prozess abzuschließen und die Entschärfung auf Geräten anzuwenden, wählen Sie Create Entschärfungsaktion aus.

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

Status zur Entschärfung

Die status gibt an, ob die Problemumgehungsminderung zum Deaktivieren von JDNI-Lookups auf das Gerät angewendet wurde. Sie können die status zur Risikominderung 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 deren Status zu priorisieren.

Screenshot: Mögliche Risikominderungsstatus.

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

Status zur Entschärfung 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 Die Status zur Entschärfung konnte zu diesem Zeitpunkt nicht ermittelt werden.

Hinweis

Es kann einige Stunden dauern, bis die aktualisierte status 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 verfügbar gemachte Geräte, Dateien und Software gefunden wurden, werden relevante Informationen auch über die folgenden Erfahrungen im Microsoft Defender-Portal vermittelt:

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