
Une faille dans un composant logiciel extrêmement répandu rend vulnérables de nombreux systèmes, logiciels et éléments des infrastructures informatiques. Et si c’est la panique, c’est parce que cette redoutable faille est aussi très simple à exploiter mais pas si simple à corriger !
La divulgation vendredi dernier d’une faille Zero-Day dans la librairie Log4j d’Apache a ruiné le week-end de bien des RSSI et des développeurs. Un bug (référencé sous le numéro CVE-2021-44228) dans cette bibliothèque open source permet l’exécution à distance de codes malveillants.
Cette importante faille de sécurité permet aux attaquants d’exécuter du code informatique directement sur le serveur d’une organisation.
Un moyen d’exécuter du code sur n’importe quelle machine vulnérable
La bibliothèque Java Log4j est conçue pour enregistrer des informations relatives à un logiciel comme, par exemple, des rapports d’erreurs. Cette faille de sécurité permet en réalité à un attaquant d’envoyer au serveur le lien d’une page web, et de lui faire lire l’ensemble du contenu de cette page. Si la page contient du code en Java, le serveur est en mesure de l’exécuter. Cette vulnérabilité, définie comme étant la faille CVE-2021-44228, est particulièrement dangereuse puisqu’elle offre une possibilité de faire fonctionner du code à distance sur n’importe quel serveur vulnérable.
Une mise à jour est disponible
La vulnérabilité initiale, CVE-2021-44228, affectant la version 2.14.1 et inférieure a été corrigée pour la première fois dans la version 2.15. Il a été découvert que la version 2.15 avait également une vulnérabilité, CVE-2021-45046, qui avait initialement une gravité faible qui a maintenant été mise à niveau vers critique. Voir le bulletin de sécurité d’Apache ici, pour des informations de mise à jour concernant le dernier correctif.
La correction dans la version 2.17, CVE-2021-45105, concerne une condition DOS due à une récursivité incontrôlée des recherches auto-référentielles lorsque la configuration de journalisation utilise une disposition de modèle autre que celle par défaut. La gravité est élevée et non critique, donc si la version 2.16 est appliquée, l’urgence d’appliquer le correctif n’est pas instantanée, mais cela dépend de l’acceptation des risques et de la mise en œuvre.
Détection de vulnérabilité
Truesec a développé des scripts, pour Linux et Windows, qui recherchent d’éventuelles instances Log4j vulnérables. Le script vérifiera également les fichiers Java imbriqués (.jar, .war, .ear) dans un sous-niveau et recherchera les mêmes classes et modèles à l’intérieur de ceux-ci.
Il existe un script supplémentaire pour l’analyse afin de combiner la sortie de plusieurs systèmes et de produire un seul fichier CSV.
Détection d’exploits
Recommandé par Microsoft
Recherchez l’exploitation de cette vulnérabilité à l’aide de paramètres connus dans la chaîne malveillante. Cette requête fait apparaître une exploitation mais peut révéler un comportement légitime dans certains environnements.
DeviceProcessEvents | où ProcessCommandLine has_all('${jndi') et ProcessCommandLine has_any('ldap', 'ldaps', 'http', 'rmi', 'dns', 'iiop') //Suppression de FP | où non(ProcessCommandLine has_any('stackstorm', 'homebrew'))