Kit log4j – Vulnérabilité du composant Apache Log4j

Date de dernière mise à jour 1.2 : 30.12.2021

Ce kit a été établi sur la base du Bulletin d’information publié au sein du CESIN et a été complété par les échanges avec la communauté des membres du CESIN. Il intègre l’évolution des vulnérabilités et des réponses à apporter. Ce kit est destiné à être partagé avec l’ensemble des entreprises et des collectivités, au-delà de la seule communauté du CESIN.

AVERTISSEMENT : les logiciels et les utilitaires mentionnés dans ce document sont fournis à titre d’information. Ils ne sont pas validés par le CESIN et ils requièrent des tests préalables pour tenir compte du contexte de chaque entreprise et collectivité. Nous déclinons toute responsabilité quant à l’usage qui pourra en être fait ou aux éventuels dommages, pertes d’exploitation, impacts liés à leur téléchargement, tests ou utilisation.

​1.    SYNTHÈSE

Mots clés : #Apache #Log4j #Log4Shell #CVE-2021-44228 #CVE-2021-45046 #CVE-2021-45105 #CVE-2021-44832

Plusieurs vulnérabilités ont été découvertes dans la bibliothèque de journalisation Apache Log4j. Cette bibliothèque est très souvent utilisée dans les projets de développement d'application Java/J2EE ainsi que par les éditeurs de solutions logicielles sur étagère basées sur Java/J2EE. Certaines ont déjà fait l'objet d'exploitation.

Il est fortement recommandé d'utiliser la version 2.17.1 de Log4j dès que possible. Cependant, en cas de difficulté de migration vers cette version, des contournements peuvent être appliqués temporairement.

Synthèse des 4 vulnérabilités et des versions de Log4j connues à ce jour (30 décembre 2021)

 

Numéro de CVE

Gravité

CVSS

Java 6

Java 7

Java 8

Versions concernées

CVE-2021-44228

Critique

10.0

 

 

2.15.0

Toutes versions depuis la 2.0-beta9

CVE-2021-45046

Critique

9.0

 

2.12.2

2.16.0

Toutes versions depuis la 2.0-beta9 à la  2.15.0, sauf la 2.12.2

CVE-2021-45105

Moyenne

5,9

2.3.1

2.12.3

2.17.0

Toutes versions depuis la 2.0-beta9 à la 2.16.0, sauf la 2.12.3

CVE-2021-44832

Moyenne

6,6

2.3.2

2.12.4

2.17.1

2.0-alpha7 to 2.17.0, sauf la 2.3.2 et la 2.12.4

 

 

  • [CVE-2021-44228] (CVSS v3 10). Cette vulnérabilité permet à un attaquant de provoquer une exécution de code arbitraire à distance s'il a la capacité de soumettre une donnée à une application qui utilise la bibliothèque Log4j pour journaliser l'évènement. Cette attaque peut être réalisée sans être authentifié, par exemple en tirant parti d'une page d'authentification qui journalise les erreurs d'authentification.

▪      Source : MITRE CVE-2021-44228 / https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44228

  • [CVE-2021-45046] (CVSS v3 9.0). Log4j en version 2.15.0 est affectée par une autre vulnérabilité, qui permet à un attaquant non authentifié d'effectuer un déni de service. Par ailleurs, des chercheurs ont mis en évidence la possibilité d'exfiltrer des données dans certaines configurations non détaillées.

▪      Source : MITRE CVE-2021-45046 / https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45046

  • [CVE-2021-45105] (CVSS v3 7.5). Par ailleurs, les versions 2.16.0 et 2.12.2 de Log

4j sont affectées par une vulnérabilité, qui permet de provoquer un déni de service à distance.

▪      Source : MITRE CVE-2021-45105 / http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45105

  • [CVE-2021-44832] (CVSS v3 6.6). Toutes les versions de la 2.0-alpha7 à la 2.17.0 incluse (sauf les versions 2.3.2 et 2.12.4) sont affectées à une vulnérabilité de type Controle d’Accès à Distance (RCE)

▪      Source : MITRE CVE-2021-44832 / http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45105

 

Sites de références de la Fondation Apache sur Log4j

Titre

Liens vers des sites de la Fondation Apache

Apache Log4j 2

https://logging.apache.org/log4j/2.x/index.html

Apache Log4j 2 Release History

https://logging.apache.org/log4j/2.x/changes-report.html

Apache Log4j Security Vulnerabilities

https://logging.apache.org/log4j/2.x/security.html

Download Apache Log4j 2

https://logging.apache.org/log4j/2.x/download.html

 

Systèmes affectés à ce jour

  • Apache Log4j versions 2.16.0 et 2.12.2 (java 7)
  • Apache Log4j versions 2.15.0, 2.16.0, 2.17.0
  • Apache Log4j versions 2.0 à 2.14.1
  • Apache Log4j versions 1.x (versions obsolètes) sous réserve d'une configuration particulière

 

Chronologie succincte à ce jour

Date (2021)

Liens vers des sites de la Fondation Apache

6 mars

Annonce de Log4j 2.14.1 [lien]

24 novembre

L’équipe de sécurité du Cloud d’Alibaba notifie la Fondation Apache de la première vulnérabilité Log4j

1er décembre

Publication d'un correctif Apache Log4j : "Restrict LDAP access via JNDI #608" [lien]

 

Premières traces d’exploitation de la vulnérabilité CVE-2021-44228

Découverte confirmée à partir du 10 décembre seulement

6 décembre

Annonce Log4j 2.15.0 [lien]

10 décembre

Premières annonces de l'exploitation de la CVE-2021-44228 [lien] [lien]

13 décembre

Annonce de Log4j 2.16.0 pour Java 8, de Log4j 2.12.2 for Java 7 [lien]

18 décembre

Annonce de Log4j 2.17.0 pour Java 8 et de la CVE-2021-45105 affectant Log4j 2.16.0 [lien]

28 décembre

Annonce de la version 2.17.1 pour Java 8 et supérieur suite à l’annonce de la CVE-2021-44832

 

Quelques sources de référence à ce jour

 

Quelques remarques

  • Plusieurs outils de détection des vulnérables Log4j sont disponibles sur Internet et Github

◦      Ils sont aussi utilisés par les groupes d’attaquants. En tant que défenseur, ne pas s’en servir revient à donner dès le départ un avantage à l’attaquant.

◦      Il faut donc intégrer que les attaquants ont adopté et adapté des outils largement disponible

  • La recherche de vulnérabilités pour certains environnements, tel l’industriel (OT) peut se révéler complexe

Télécharger le Kit log4j – Vulnérabilité du composant Apache Log4j