Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

VxRail: VxRail Manager-Problemumgehung zur Behebung der Apache Log4Shell-Schwachstelle (CVE-2021-44228, CVE-2021-45046 und CVE-2021-4104)

Summary: Dieser Artikel beschreibt ein Skript, das auf VxRail Manager ausgeführt werden kann, um die Apache Log4Shell-Schwachstelle zu beheben, die in CVE-2021-44228, CVE-2021-45046 und CVE-2021-4104 beschrieben wird (Dell Artikel DSN-2021-007, VMware-Artikel VMSA-2021-0028). ...

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Instructions

Die Apache Software Foundation hat Informationen zu einer kritischen Schwachstelle bei der Remote-Codeausführung der Apache Log4j-Bibliothek veröffentlicht, die gemäß der GitHub Advisory-Datenbank als Log4Shell bezeichnet wird (auch beschrieben in CVE-2021-44228, CVE-2021-45046 und CVE-2021-4104). VxRail Manager ist von dem in der Schwachstelle beschriebenen Problem betroffen.

Hinweis: Es werden zwei zusätzliche CVEs, CVE-2021-45046 und CVE-2021-4104, gemeldet, die darauf hinweisen, dass die ursprüngliche Empfehlung zur Behebung des in CVE-2021-44228 (Log4j 2.x) beschriebenen Problems keine vollständige Lösung ist.

Weitere Informationen zu diesen CVEs finden Sie in den folgenden Artikeln:

Hinweis: Das Skript in diesem Artikel wurde auf Version 1.1.2 aktualisiert, die die für alle drei CVEs empfohlenen Korrekturen enthält: CVE-2021-44228, CVE-2021-45046 und CVE-2021-4104.

Im vorherigen Skript wurde ein zusätzliches Problem erkannt, das dazu führen kann, dass eine betroffene Datei in VxRail Manager aus einem Systemarchiv wiederhergestellt wird. Dieses Problem wurde auch in dieser Version behoben.

Wenn Sie frühere Skripte verwendet haben, die in diesem Artikel enthalten waren, laden Sie das neueste Skript (1.1.2) herunter und führen Sie es auf VxRail Manager aus, um sicherzustellen, dass Sie die vollständige Korrektur durchgeführt haben.

 

Anforderungen und Umfang

Der Umfang der in diesem Artikel beschriebenen Abhilfemaßnahmen umfasst folgende Punkte:

  • Dieser Artikel gilt für VxRail Manager in den Versionen VxRail 4.5.x, 4.7.x und 7.0.x sowie für VxRail Manager in den Versionen VCF 3.x und 4.x.
  • Mit dem Skript und den angegebenen Korrekturschritten wird die Sicherheitslücke nur in der VxRail Manager-Appliance-VM behoben.
  • Für andere Komponenten außerhalb von VxRail Manager, wie z. B. vCenter Server Appliance (vCSA), NSX usw., muss eine separate Abhilfemaßnahme durchgeführt werden, die nicht in diesem Skript enthalten ist.
  • Außerdem werden mit dem Skript keine Anwendungen oder Dienste korrigiert, die innerhalb von VMs ausgeführt werden und der Sicherheitslücke ausgesetzt sein können. Dell EMC empfiehlt allen Kunden, bei ihren Anwendungs- oder Softwareanbietern nach Diensten zu suchen, die in VMs ausgeführt werden, um sicherzustellen, dass sie nicht beeinträchtigt werden.

Links zu betroffenen VMware-Produkten und potenzielle Problemumgehungen finden Sie im folgenden VMware VMSA-Artikel:

VMware stellt ein Skript zur Automatisierung der Korrektur in der vCenter Server-Appliance im folgenden Artikel bereit:

An diesen Artikel angehängt ist die Datei fixlog4j-CVE-2021-44228-CVE-2021-45046-v-1-1-2.zip, die nur das Skript für VxRail Manager enthält.
 

VxRail-Versionen mit enthaltener Korrektur

Dieses Problem wurde in den folgenden VxRail-Softwareversionen behoben:

  • VxRail-Paketsoftwareversion 7.0.320
  • VxRail-Appliance-Softwareversion 4.7.541
  • VxRail-Appliance-Softwareversion 4.5.471

Es wird empfohlen, ein Upgrade auf eine VxRail-Softwareversion durchzuführen, die die Korrektur enthält.
Das Skript wird für Kunden empfohlen, die kein sofortiges Upgrade durchführen können.

Hinweis: Wenn Ihr VxRail-7.0.xxx-Cluster von einem vom Kunden gemanagten vCenter verwaltet wird, finden Sie im folgenden Artikel weitere Überlegungen, die möglicherweise zutreffen:

 

Korrekturschritte

Zur Korrektur des Problems gehen Sie folgendermaßen vor:
  1. Laden Sie die datei fixlog4j-CVE-2021-44228-CVE-2021-45046-v-1-1-2.zip herunter, die an diesen Artikel angehängt ist.
  2. Laden Sie die .zip-Datei mit Nutzername „mystic“ über SCP auf den VxRail Manager hoch (WinSCP ist z. B. ein SCP-Client, der verwendet werden kann).
  3. Melden Sie sich bei der VxRail Manager VM-Konsole oder SSH mit als Nutzer „mystic“ an. 
  4. Wechseln Sie zum Verzeichnis, in das Sie die ZIP-Datei hochgeladen haben, und extrahieren Sie sie mit dem Entpackungsbefehl:
    mystic@vxrm:~> unzip fixlog4j-CVE-2021-44228-CVE-2021-45046-v-1-1-2.zip
    Archive:  fixlog4j-CVE-2021-44228-CVE-2021-45046-v-1-1-2.zip
      inflating: fixlog4j-CVE-2021-44228-CVE-2021-45046.sh
  5. Machen Sie das Skript mit dem Befehl chmod ausführbar:
    mystic@vxrm:~> chmod +x fixlog4j-CVE-2021-44228-CVE-2021-45046.sh
  6. Melden Sie sich mit dem Befehl su als VxRail Manager-Root-Nutzer an:
    mystic@vxrm:~> su -
    Kennwort:
  7. Stellen Sie sicher, dass Sie sich im selben Verzeichnis befinden, in dem Sie das Skriptpaket entpackt haben:
    vxrm:~ # cd /home/mystic
    vxrm:/home/mystic #
  8. Führen Sie das Skript aus:
    vxrm:/home/mystic # ./fixlog4j-CVE-2021-44228-CVE-2021-45046.sh

    Beispiel für eine Skriptausgabe:
    Stop MARVIN and runjars service before patching the system

    /mystic/connectors/eservice/lib/log4j-core-2.13.0.jar is affected by CVE-2021-44228 and CVE-2021-45046, need to apply patch
    patching /mystic/connectors/eservice/lib/log4j-core-2.13.0.jar
    Successfully patched /mystic/connectors/eservice/lib/log4j-core-2.13.0.jar

    /mystic/connectors/cluster/lib/log4j-core-2.13.0.jar is affected by CVE-2021-44228 and CVE-2021-45046, need to apply patch
    patching /mystic/connectors/cluster/lib/log4j-core-2.13.0.jar
    Successfully patched /mystic/connectors/cluster/lib/log4j-core-2.13.0.jar

    To ensure there is no reload behavior, we need to pack the .war file as well.
    looks like /usr/lib/vmware-marvin/marvind/webapps/ROOT.war contains the bad log4j-core library WEB-INF/lib/log4j-core-2.13.0.jar
    Archive:  /usr/lib/vmware-marvin/marvind/webapps/ROOT.war
      inflating: WEB-INF/lib/log4j-core-2.13.0.jar
    Patching WEB-INF/lib/log4j-core-2.13.0.jar in /usr/lib/vmware-marvin/marvind/webapps/ROOT.war
    Repack /usr/lib/vmware-marvin/marvind/webapps/ROOT.war
    updating: WEB-INF/lib/log4j-core-2.13.0.jar (deflated 11%)
    Clean up the ROOT folder...

    Always apply a reboot of MARVIN and runjars services
    restart MARVIN
    MARVIN restart successfully
    restart runjars
    runjars restart successfully

Hinweis: Es kann zwischen 5 und 10 Minuten dauern, bis alle Dateien korrigiert wurden und die VxRail Manager-Dienste gestartet wurden.

Warten Sie mindestens 10 Minuten, wenn Sie einen der unten aufgeführten manuellen Validierungsschritte durchführen möchten.

Je nach Version von VxRail Manager gibt es verschiedene Versionen der bibliothek lib4j-core.

Das Skript ist so konzipiert, dass es VxRail Manager unabhängig von der lib4j-core-Version, die in dieser Version von VxRail Manager enthalten ist, richtig korrigiert.

Die obige Ausgabe aus der Ausführung des Skripts zeigt möglicherweise verschiedene Dateien an, die je nach der enthaltenen Version von lib4j-core aktualisiert werden.

Hinweis: Wenn Sie ein VxRail-Upgrade auf einen anderen Build von VxRail durchführen, der keine Korrektur enthält, muss dieses Skript ein zweites Mal ausgeführt werden, um die Korrektur erneut durchzuführen.
 

 HINWEIS: Die vollständige Abhilfemaßnahme für VxRail erfordert sowohl die vCenter Server Appliance (vCSA)-Problemumgehung von VMware als auch die Abhilfemaßnahme für VxRail Manager, die über dieses Skript ausgeführt und implementiert wird.


Links zu VMware-Artikeln, die Problemumgehungen für ihre Produkte und Korrekturen enthalten, finden Sie in VxRail: Informationen zu Log4Shell CVE-2021-44228 und VxRail-Umgebungen.
 

Validierungsschritte

Um das Problem zu beheben, entfernt das Skript die Datei JndiLookup.class aus den lib4j-core-* jar-Dateien.

Eine jar-Datei ist ein Java-Paketformat, das mehrere Klassen, Metadaten und andere Java-Programme in einer einzigen Datei enthält. Es ähnelt dem Konzept einer ZIP-Datei und basiert auf dem .zip-Format. Die Skriptausführung überprüft, ob jede .jar-Datei erfolgreich aktualisiert wurde.

Um eine manuelle Prüfung durchzuführen, ob das Skript funktioniert hat, können Sie überprüfen, ob die auf VxRail Manager vorhandenen log4j-core-*-.jar-Dateien weiterhin die betroffene Datei JndiLookup.class enthalten. Wenn es funktioniert hat, sollten Sie keine Ausgabe für die folgenden Befehle sehen, was bestätigt, dass die betroffene Datei JndiLookup.class nicht mehr in der .jar-Datei vorhanden ist.
 

Validierung mit automatisiertem Befehl

Der folgende Befehl kann auf dem VxRail Manager ausgeführt werden, um nach allen log4j-core-xxxx.jar-Dateien zu suchen, die auf dem VxRail Manager vorhanden sind, und zu prüfen, ob sie die betroffene Datei JndiLookup.class enthalten:

vxrm:/home/mystic # for myfile in `find / -name log4j-core*jar -print |grep -v log4jbak`; do echo $myfile; unzip -l $myfile | grep JndiLookup.class; done

Sample output (updated system):
/mystic/connectors/eservice/lib/log4j-core-2.13.0.jar
/mystic/connectors/cluster/lib/log4j-core-2.13.0.jar
/usr/lib/vmware-marvin/marvind/webapps/ROOT/WEB-INF/lib/log4j-core-2.13.0.jar


Im obigen Beispiel ist die Datei JndiLookup.class nicht in der .jar-Datei vorhanden, was bedeutet, dass das Skript funktioniert und die Überprüfung erfolgreich ist:
/mystic/connectors/eservice/lib/log4j-core-2.13.3.jar
     2892  2020-05-10 12:08   org/apache/logging/log4j/core/lookup/
JndiLookup.class
/mystic/connectors/cluster/lib/log4j-core-2.13.3.jar
     2892  2020-05-10 12:08   org/apache/logging/log4j/core/lookup/
JndiLookup.class
/usr/lib/vmware-marvin/marvind/webapps/ROOT/WEB-INF/lib/log4j-core-2.13.3.jar
     2892  2020-05-10 12:08   org/apache/logging/log4j/core/lookup/
JndiLookup.class

Im obigen Beispiel ist die betroffene Datei JndiLookup.class noch in der log4j-core-2.13.3.jar-.jar-Datei vorhanden.
 

Validierung mit manueller Überprüfung jeder Datei

Um schnell alle log4j-core-xxxx.jar-Dateien auf dem VxRail Manager zu identifizieren, führen Sie den folgenden Befehl aus (dies formatiert auch die Ausgabe in einen brauchbaren Befehl):
vxrm:/home/mystic # find / -name log4j-core*jar -print |grep -v log4jbak | awk '{print("unzip -l " $1 "|grep JndiLookup.class")}'

Beispielausgabe:
unzip -l /mystic/connectors/eservice/lib/log4j-core-2.13.0.jar|grep JndiLookup.class
unzip -l /mystic/connectors/cluster/lib/log4j-core-2.13.0.jar|grep JndiLookup.class
unzip -l /usr/lib/vmware-marvin/marvind/webapps/ROOT/WEB-INF/lib/log4j-core-2.13.0.jar|grep JndiLookup.class


Führen Sie anhand der obigen Beispielausgabe die einzelnen Befehle manuell aus, um zu sehen, ob sie die betroffene JndiLookup.class-Datei erkennen:
vxrm:/home/mystic # unzip -l /mystic/connectors/eservice/lib/log4j-core-2.13.0.jar|grep JndiLookup.class
vxrm:/home/mystic #

vxrm:/home/mystic # unzip -l /mystic/connectors/cluster/lib/log4j-core-2.13.0.jar|grep JndiLookup.class
vxrm:/home/mystic #

vxrm:/home/mystic # unzip -l /usr/lib/vmware-marvin/marvind/webapps/ROOT/WEB-INF/lib/log4j-core-2.13.0.jar|grep JndiLookup.class
vxrm:/home/mystic #


Im obigen Beispiel ist die Datei JndiLookup.class nicht in der .jar-Datei vorhanden, was bedeutet, dass das Skript funktioniert und die Überprüfung erfolgreich ist.

Note: Die .jar-Dateinamen aus der obigen Beispielausgabe können je nach Ihrer Version von VxRail Manager abweichen. Verwenden Sie die Beispielausgabe, die Sie vom obigen find-Befehl erhalten. 

Ein Beispiel für die Ausgabe einer .jar-Datei, die immer noch betroffen ist und die betroffene JndiLookup.class-Datei enthält:

vxrm:/home/mystic # unzip -l /mystic/connectors/cluster/lib/log4j-core-2.4.1.jar |grep JndiLookup.class
2576 2015-10-08 17:50 org/apache/logging/log4j/core/lookup/
JndiLookup.class

Im obigen Beispiel ist die betroffene Datei JndiLookup.class noch in der .jar-Datei log4j-core-2.4.1.jar vorhanden.

 

 HINWEIS: Zur Erinnerung: Die vollständige Abhilfemaßnahme für VxRail erfordert sowohl die vCenter Server Appliance (vCSA)-Problemumgehung von VMware als auch die Abhilfemaßnahme für VxRail Manager, die über dieses Skript ausgeführt und implementiert wird.

Article Properties


Affected Product

VxRail, VxRail Appliance Family, VxRail Appliance Series, VxRail Software

Last Published Date

30 Aug 2022

Version

18

Article Type

How To