Information de sécurité à propos de Log4Shell

information de securite

Qu’est-ce que Log4Shell?

Vous avez très probablement entendu parler de Log4Shell (ou CVE-2021-44228), la faille critique qui a touché Log4js, une bibliothèque de logs populaire écrite en Java.

Ce qui a été mis en place chez Clever Cloud ?

Chez Clever Cloud, nous avons œuvré tout le week-end pour résoudre ce problème.

En clair, tous les add-ons Elasticsearch chez nous ont été sécurisés rapidement, et beaucoup de nos clients sont sécurisés par les versions les plus récentes de JDK. Edit (13/12 16h41) : Même les versions les plus récentes de Java sont à présent vulnérables à la RCE (Remote Code Execution) en raison d’un bypass. La seule solution viable est donc de patcher et mettre à jour log4j directement.

Veuillez noter également :

  • Si vous êtes sur Java 8 (ou plus), vous devriez passer à la version 2.17.0.
  • Si vous êtes sur Java 7 , vous devriez passer à la version 2.12.2.
  • Sinon, vous pouvez supprimer la classe JndiLookup du classpath grâce à un hook après le build de votre application (vous devez exécuter le hook dans le dossier où se trouve le jar de log4j) :
CC_POST_BUILD_HOOK=zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class "

En ce qui concerne les autres, nous avons déclenché une politique de surveillance et d’analyse approfondie.

Nous sommes également en train de mettre en mettre à jour l’image Java avec la propriété de configuration de Log4j suivante : Edit (14/12 14h04) : L’image Java a bien été mise à jour et toutes les applications Java ont bien été redéployées avec la propriété de configuration suivante:

log4j2.formatMsgNoLookups=true

Il est important de noter que ce paramètre ne fonctionne qu’avec Log4j en version 2.10.0 minimum.

Nous avons mis à jour l’agent Java New Relic vers la version 7.4.1 et les applications sur lesquelles l’agent était déployé ont toutes été redéployées. 

Nous avons également patché le cluster Pulsar.

Comment limiter les risques ?

Nous vous encourageons fortement à mettre à jour votre dépendance pour Log4j v2.17.0.

Ensuite, en fonction des environnements et add-ons avec lesquels vous travaillez, voilà ce que vous pouvez mettre en place également :

Pour Docker

Si vous utilisez Docker, vous devrez soit :

  • Mettre à jour vers Log4j v2.17.0 (reccomandé)
  • Ou mettre en ligne Log4j (uniquement pour v2.10.0 minimum) avec la propriété de configuration suivante : log4j2.formatMsgNoLookups=true

Pour Jenkins

L’équipe sécurité de Jenkins a confirmé que Log4j n’est pas utilisé dans le core de Jenkins. Par contre, elle peut être utilisée dans certains plugins Jenkins. Vous pouvez identifier si Log4j est incluse dans un plugin en utilisant la commande suivante dans la Script Console :

org.apache.logging.log4j.core.lookup.JndiLookup.class.protectionDomain.codeSource

Équipe support

Bien entendu, notre équipe support se tient à votre disposition pour toute question concernant la situation actuelle. Vous pouvez les contacter via le chat ou alors envoyer un e-mail à support@clever-cloud.com.

Blog

À lire également

Gravitee et Clever Cloud annoncent un partenariat stratégique pour la souveraineté de l’IA en Europe.

Gravitee et Clever Cloud proposent un control plane open source et déployable partout, garantissant que l'IA européenne fonctionne strictement selon vos conditions.
Presse

Magnetar : un client Apache Pulsar en Rust conçu pour la simulation déterministe

Une partie importante de la fiabilité des systèmes distribués commence par une idée simple : si un système peut échouer en production à cause du temps, de l'ordonnancement, du réseau ou d'un interval malchanceux, alors ces forces doivent pouvoir être amenées dans les tests sous contrôle.
Engineering

Kubernetes orchestration : à quoi sert l’orchestration de conteneurs ?

L'orchestration de conteneurs désigne l'automatisation des opérations nécessaires pour faire tourner un parc de conteneurs en production : placement sur les machines, ajustement à la charge, remplacement de ce qui tombe, communication entre services, mises à jour sans interruption.
Engineering