Log4Shell une vulnérabilité critique et massivement exploitée de Log4j
mar, 14/12/2021 - 14:30
Log4j est un framework de journalisation open source qui permet aux développeurs de logiciels d'enregistrer diverses données au sein de leur application. Ces données peuvent également inclure une entrée utilisateur. Log4j est utilisé de manière omniprésente dans les applications Java, en particulier les logiciels d'entreprise. Log4j fait maintenant partie d'Apache Logging Services, un projet de l'Apache Software Foundation.
Une vulnérabilité critique dans Log4j, (CVE-2021-44228), baptisée Log4Shell, a été signalée le 9 décembre. Cette vulnérabilité, si exploitée, permet l'exécution de code arbitraire à distance sans aucune authentification. Et cette faille est déjà copieusement exploitée... et a déjà été exploitée avant le 9 décembre selon certaines sources.
Dire que cette vulnérabilité est critique semble très insuffisant. Il faudrait dire au moins extrêmement critique et même se perdre en superlatifs... Les spécialistes en cybersécurité ne mâchent pas leurs mots à ce sujet. Les chercheurs en sécurité de LunaSec, à qui revient la découverte de cette faille, la décrivent comme "un échec de conception de proportions catastrophiques". Amit Yoran, le directeur général de la société américaine de cybersécurité Tenable, la décrit comme "La plus grande et la plus critique des vulnérabilités de la dernière décennie". Pourtant, des vulnérabilités critiques, nous en avons vu passer pas mal ces dix dernières années...
Loïc Guézo, secrétaire général du Clusif, a précisé à l'AFP :"Un étudiant en première année d'informatique, qui a les outils de base" pour développer un site web, est capable d'exploiter cette faille".
Tout attaquant qui a la capacité de soumettre une donnée à une application qui utilise la bibliothèque Log4j peut attaquer la vulnérabilité, et si l'attaque réussit, le serveur attaqué va, via l’API JNDI de connexion à des annuaires, en contacter un autre où il récupère le code malveillant. Ce qui, on l'aura compris, aboutit à une prise de contrôle facile du serveur attaqué.
Tous les grands services clouds sont touchés, dont Amazon AWS, Cloudflare, iCloud, l'édition Java de Minecraft (sur laquelle Log4Shell a été découverte) Steam, Tencent QQ, Struts2, Solr, Flink, ElasticSearch, Azure, Baidu, Druid. Changer le nom d’un iPhone suffit pour attaquer les serveurs iCloud, selon lunasec.io qui publie un intéressant billet technique su cette faille.
Hier, lundi 13 décembre, le gouvernement du Québec a pris la décision de fermer près de 4000 sites et services. Le gouvernement québécois a commenté ainsi sa décision : "la menace de préjudice était plus grande que le préjudice de fermer l’ensemble des systèmes du gouvernement accessibles depuis internet" Les villes d'Ottawa et de Montréal ont suivi le mouvement. La France n'a pas pris de décision similaire pour l'instant, à notre connaissance et au moment où nous écrivons ces lignes.
Un correctif à cette vulnérabilités Log4Shelle existe, et pour en bénéficier, il faut mettre à jour Log4j vers la version 2.15.0.
Il existe aussi, pour ceux qui ne peuvent mettre à jour facilement, des solutions de contournement, plus ou mons fiables, publiées dans un billet du CERT. Billet qui vaut le détour tant il est caviardé au fur et à mesure de l'évolution des informations relatives à cette faille et à son exploitation déjà massive.