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 : Solution VxRail Manager pour corriger la faille de sécurité Apache Log4Shell (CVE-2021-44228, CVE-2021-45046 et CVE-2021-4104)

Summary: Cet article décrit un script qui peut être exécuté sur VxRail Manager pour corriger la faille de sécurité Apache Log4Shell décrite dans CVE-2021-44228. CVE-2021-45046 et CVE-2021-4104 (article Dell DSN-2021-007, article VMware 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

Apache Software Foundation a publié des informations sur un problème stratégique de faille de sécurité d’exécution du code à distance de la bibliothèque Log4j Apache, appelé Log4Shell, conformément à la base de données GitHub Advisory (également détaillée dans CVE-2021-44228CVE-2021-45046 et CVE-2021-4104). VxRail Manager est exposé au problème décrit dans la faille de sécurité.

Remarque : deux CVE supplémentaires, CVE-2021-45046 et CVE-2021-4104, indiquent que la recommandation initiale pour corriger le problème décrit dans CVE-2021-44228 (Log4j 2.x) n’est pas un correctif complet.

Pour plus d’informations sur ces CVE, consultez les articles suivants :

Remarque : le script de cet article a été mis à jour vers la version 1.1.2, qui inclut les mesures correctives recommandées pour les trois CVE, CVE-2021-44228, CVE-2021-45046 et CVE-2021-4104.

Un problème supplémentaire a été détecté dans le script précédent, ce qui peut entraîner la restauration d’un fichier affecté sur VxRail Manager à partir d’une archive système. Ce problème a également été résolu dans cette version.

Si vous avez utilisé des scripts précédents fournis avec cet article, téléchargez le dernier script (1.1.2) et exécutez-le sur VxRail Manager pour vous assurer que vous disposez du correctif complet.

 

Exigences et champ d’application

Le champ d’application des mesures correctives décrites dans cet article est le suivant :

  • Cet article s’applique à VxRail Manager dans les versions VxRail 4.5.x, 4.7.x et 7.0.x, ainsi qu’à VxRail Manager dans les versions VCF 3.x et 4.x.
  • Le script et les étapes de mesure corrective fournis corrigent la faille de sécurité dans la machine virtuelle de l’appliance VxRail Manager uniquement.
  • Les autres composants en dehors de VxRail Manager, tels que vCenter Server Appliance (vCSA), NSX, etc., doivent être atténués séparément et ne figurent pas dans ce script.
  • En outre, le script ne corrige aucune application ni aucun service exécuté dans des machines virtuelles susceptibles d’être exposées à la faille de sécurité. Dell EMC recommande à tous les clients de vérifier auprès de leurs fournisseurs d’applications ou de logiciels les services exécutés dans les machines virtuelles afin de s’assurer qu’ils ne sont pas affectés.

Les liens vers les produits VMware concernés et les solutions de contournement potentielles sont détaillés dans l’article VMware VMSA suivant :

VMware fournit un script permettant d’automatiser la mesure corrective dans vCenter Server Appliance dans l’article suivant :

Le fichier fixlog4j-CVE-2021-44228-CVE-2021-45046-v-1-1-2.zip joint à cet article contient le script pour VxRail Manager uniquement.
 

Versions VxRail avec correctif inclus

Ce problème a été résolu dans les versions suivantes du logiciel VxRail :

  • Logiciel du package VxRail 7.0.320
  • Logiciel de l’appliance VxRail 4.7.541
  • Logiciel de l’appliance VxRail 4.5.471

Il est recommandé d’effectuer une mise à niveau vers une version du logiciel VxRail qui inclut le correctif.
Le script est recommandé pour les clients qui ne peuvent pas effectuer la mise à niveau immédiatement.

Remarque : si votre cluster VxRail 7.0.xxx est géré par un vCenter géré par le client, reportez-vous à l’article suivant pour prendre en compte les considérations supplémentaires qui peuvent s’appliquer :

 

Étapes de mesure corrective

Pour résoudre ce problème, vous pouvez effectuer les opérations suivantes :
  1. Téléchargez le fichier fixlog4j-CVE-2021-44228-CVE-2021-45046-v-1-1-2.zip joint à cet article.
  2. Téléchargez le fichier .zip dans VxRail Manager à l’aide de l’utilisateur Mystic sur SCP (WinSCP est un exemple de client SCP pouvant être utilisé).
  3. Connectez-vous à la console de la machine virtuelle VxRail Manager ou SSH à l’aide de l’utilisateur Mystic. 
  4. Accédez au répertoire dans lequel vous avez téléchargé le fichier .zip et extrayez-le avec la commande décompresser :
    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. Rendez le script exécutable à l’aide de la commande chmod :
    mystic@vxrm:~> chmod +x fixlog4j-CVE-2021-44228-CVE-2021-45046.sh
  6. Connectez-vous en tant qu’utilisateur root de VxRail Manager à l’aide de la commande su :
    mystic@vxrm:~> su -
    Password:
  7. Assurez-vous que vous vous trouvez dans le même répertoire que celui dans lequel vous avez décompressé le package de scripts :
    vxrm:~ # cd /home/mystic
    vxrm:/home/mystic #
  8. Exécutez le script :
    vxrm:/home/mystic # ./fixlog4j-CVE-2021-44228-CVE-2021-45046.sh

    Exemple de sortie de script :
    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

Remarque : la correction de tous les fichiers et le démarrage des services VxRail Manager peuvent prendre entre 5 et 10 minutes.

Attendez au moins 10 minutes si vous prévoyez d’effectuer l’une des étapes de validation manuelle ci-dessous.

Il existe plusieurs versions différentes de la bibliothèque lib4j-core en fonction de la version de VxRail Manager.

Le script a été conçu pour corriger correctement VxRail Manager, quelle que soit la version de lib4j-core incluse avec cette version de VxRail Manager.

La sortie ci-dessus de l’exécution du script peut afficher différents fichiers en cours de mise à jour en fonction de la version de lib4j-core incluse.

Remarque : si vous effectuez une mise à niveau VxRail vers une autre version de VxRail qui ne contient pas de correctif, ce script doit être exécuté une deuxième fois pour réappliquer la mesure corrective.
 

 Remarque : l’atténuation complète de VxRail nécessite à la fois la solution de contournement vCenter Server Appliance (vCSA) de VMware et la mesure corrective sur VxRail Manager exécutée par ce script à implémenter.


Des liens vers des articles VMware traitant des solutions de contournement concernant leurs produits et correctifs sont disponibles dans VxRail : Informations sur les environnements Log4Shell (CVE-2021-44228) et VxRail.
 

Étapes de validation

Afin de corriger le problème, le script supprime le fichier JndiLookup.class des fichiers jar lib4j-core-*.

Un fichier jar est un format de packaging Java pour inclure plusieurs classes, métadonnées et autres programmes Java dans un seul fichier. Il ressemble au concept du fichier .zip et repose sur le format .zip. L’exécution du script confirme que chaque fichier jar a bien été mis à jour.

Pour valider manuellement le bon fonctionnement du script, vous pouvez vérifier si les fichiers jar log4j-core-* présents sur VxRail Manager contiennent toujours le fichier JndiLookup.class affecté. S’il a fonctionné, vous ne devriez voir aucune sortie vers les commandes ci-dessous, ce qui confirme que le fichier JndiLookup.class affecté n’est plus présent dans le fichier jar.
 

Validation avec commande automatisée

La commande suivante peut être exécutée sur VxRail Manager pour rechercher tous les fichiers log4j-core-xxxx.jar présents sur VxRail Manager et vérifier s’ils contiennent le fichier JndiLookup.class concerné :

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

Exemple de sortie (système mis à jour) :
/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


Dans l’exemple ci-dessus, le fichier JndiLookup.class ne se trouve pas dans le fichier jar, le script a fonctionné et la vérification a réussi.

Voici un exemple de sortie d’un système concerné qui doit être mis à jour :
/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

Dans l’exemple ci-dessus, le fichier JndiLookup.class concerné est toujours présent dans le fichier jar log4j-core-2.13.3.jar.
 

Validation avec vérification manuelle de chaque fichier

Pour identifier rapidement les fichiers log4j-core-xxxx.jar présents sur VxRail Manager, exécutez la commande suivante (cela formate également la sortie en commande utilisable) :
vxrm:/home/mystic # find / -name log4j-core*jar -print |grep -v log4jbak | awk '{print("unzip -l " $1 "|grep JndiLookup.class")}’

Exemple de sortie :
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


À partir de l’exemple de sortie ci-dessus, exécutez chaque commande manuellement pour voir si elles détectent le fichier JndiLookup.class concerné :
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 #


Dans l’exemple ci-dessus, le fichier JndiLookup.class n’est pas présent dans le fichier jar, par conséquent, le script a fonctionné, et la vérification a réussi.

Remarque : Les noms de fichier jar de l’exemple de sortie ci-dessus peuvent varier en fonction de votre version de VxRail Manager. Utilisez l’exemple de sortie que vous recevez de la commande find ci-dessus. 

Exemple de sortie d’un fichier jar toujours affecté et qui contient le fichier JndiLookup.class concerné :

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

Dans l’exemple ci-dessus, le fichier JndiLookup.class concerné est toujours présent dans le fichier jar log4j-core-2.4.1.jar.

 

 Remarque : l’atténuation complète de VxRail nécessite à la fois la solution de contournement vCenter Server Appliance (vCSA) de VMware et la mesure corrective sur VxRail Manager effectuée par ce script à implémenter.

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