Log4j
Développé par | Apache Software Foundation et Ceki Gülcü (d) |
---|---|
Dernière version | 2.23.1 ()[1] |
Dépôt | github.com/apache/logging-log4j2 |
Écrit en | Java |
Système d'exploitation | Multiplateforme |
Environnement | Machine virtuelle Java |
Type | Library for logging (d) |
Licence | Licence Apache 2.0 |
Site web | logging.apache.org/log4j/2.x |
Log4j est une bibliothèque logicielle utilitaire open source programmée en langage Java. Elle fait partie de Apache Logging Services, un projet de l'Apache Software Foundation. Elle fournit des fonctions permettant de gérer des traces et des historiques d'applications.
Elle est utilisée dans de très nombreuses applications web et services web programmés en langage Java[2].
Fonctionnalités
[modifier | modifier le code]Niveaux de trace
[modifier | modifier le code]La table ci-dessous décrit les niveaux de traces et de messages émis par Log4j, en ordre décroissant de sévérité.
Niveau | Description |
---|---|
OFF | Le niveau le plus élevé, destiné à désactiver les traces. |
FATAL | Les erreurs graves qui provoquent une fin de programme prématurée. |
ERROR | Autres erreurs ou conditions inattendues. |
WARN | Utilisation d'APIs obsolète, ou mauvais usage d'API. |
INFO | Evènements importants comme le démarrage ou la fin normale de programme. |
DEBUG | Informations très détaillées sur le déroulement du programme. |
TRACE | Informations de trace, supposées n'apparaitre que dans les fichiers logs, depuis la version 1.2.12[3]. |
Niveaux de trace personnalisés
[modifier | modifier le code]Log4j 2 permet à l'utilisateur de définir ses propres niveaux de logs personnalisés[4].
Failles de sécurité
[modifier | modifier le code]La version 1.2 comportait une faille de sécurité identifiée en 2019[5] (vulnérabilité logicielle)[6] qui permettait d'exécuter un code potentiellement malveillant.
Cette faille a été corrigée dans la version 2. Cependant une autre faille de sécurité intitulée "Log4Shell"[7] a aussi été détectée dans cette version le par le fournisseur de cloud chinois Alibaba[8]. La correction 2.15 était incomplète, et un nouveau patch 2.16 a été publié le [9].
Le ministère de la Défense Canadien a émis un avertissement concernant cette faille et ses conséquences potentielles[10], de même que le directeur de la Cybersecurity and Infrastructure Security Agency américaine[11].
Le 10 décembre 2021, le Centre gouvernemental de veille, d’alerte et de réponse aux attaques informatiques français émet un bulletin d'alerte concernant une vulnérabilité dans les versions 2.16.0 et 2.12.2 (entre autres) de Apache Log4j[12]. 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.
Notes et références
[modifier | modifier le code]- « Release 2.23.1 », (consulté le )
- « Faille Log4j : les DSI et RSSI en pleine tempête, l'Anssi vigilante », sur Le Monde informatique (consulté le ).
- « Level (Apache Log4j 1.2.17 API) », Logging.apache.org, (consulté le )
- « Custom Log Levels », Logging.apache.org, (consulté le )
- https://www.cvedetails.com/cve/CVE-2019-17571/
- (en) « Apache log4j 1.2 - », sur apache.org (consulté le ).
- https://www.lawfareblog.com/whats-deal-log4shell-security-nightmare
- (en) Guardian staff reporter, « Recently uncovered software flaw ‘most critical vulnerability of the last decade’ », The Guardian, (lire en ligne, consulté le ).
- « Une deuxième vulnérabilité de Log4j découverte et un nouveau patch publié », sur ZDNet France (consulté le ).
- (en) « Statement from the Minister of National Defence on Apache Vulnerability and Call to Canadian Organizations to Take Urgent Action », sur cyber.gc.ca via Wikiwix (consulté le ).
- (en) « Statement from CISA Director Easterly on “Log4j” Vulnerability », sur Cybersecurity and Infrastructure… (consulté le ).
- « [MaJ] Vulnérabilité dans Apache Log4j – CERT-FR », sur www.cert.ssi.gouv.fr (consulté le )