
Bibliothèque Log4j 1.2.17 corrigée, avec la classe vulnérable JMSAppender supprimée pour atténuer la CVE-2021-4104, conçue comme un remplacement direct pour les applications concernées.
Ce jar a été créé pour protéger contre CVE-2021-4104.
Il est destiné à être utilisé comme remplacement direct des bibliothèques Log4j v1.
Page du projet Log4j 1.2 : https://logging.apache.org/log4j/1.2/
Licence Apache 2.0 : https://www.apache.org/licenses/LICENSE-2.0
Ajoutez ceci à votre pom.xml
<project ...>
<repositories>
<!-- Dépôt maven Open AIMS sur GitHub -->
<repository>
<id>github_openaims</id>
<name>GitHub Open-AIMS repo</name>
<url>https://maven.pkg.github.com/open-AIMS/*</url>
</repository>
</repositories>
...
<dependencies>
<dependency>
<groupId>au.gov.aims</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17-aims</version>
</dependency>
...
</dependencies>
</project>
Si l'une des dépendances utilise une autre version de log4j, excluez-la avec le groupe d'exclusions dans la déclaration de dépendance.
Exemple :
<project ...>
...
<dependencies>
<dependency>
<groupId>au.gov.aims</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17-aims</version>
</dependency>
<dependency>
<groupId>uk.ac.rdg.resc</groupId>
<artifactId>edal-xml-catalogue</artifactId>
<version>1.2.4</version>
<type>jar</type>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>
...
</dependencies>
</project>
Si le projet est géré par un workflow GitHub, n'oubliez pas d'ajouter les identifiants pour le
dépôt github_openaims dans votre fichier maven-settings.xml :
<settings ...>
...
<servers>
<!-- Utilisé par le serveur GitHub pour résoudre les dépendances Open-AIMS lors de l'exécution des tests ou de la compilation du package -->
<server>
<id>github_openaims</id>
<username>${env.GITHUB_USERNAME}</username>
<password>${env.GITHUB_TOKEN}</password>
</server>
</servers>
</settings>
Comment ce jar a été créé :
Copiez le jar depuis votre dépôt maven local vers ce projet :
$ cp ~/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar jar/log4j-1.2.17-aims.jar
Supprimez la classe problématique :
$ zip -q -d jar/log4j-1.2.17-aims.jar org/apache/log4j/net/JMSAppender.class
Créez une nouvelle version sur GitHub