Spring4Shell – Java : le framework Spring contient une faille zero-day !
Une faille zero-day de type "exécution de code à distance" a été découverte dans le framework Spring, utilisé pour les applications Java. Faut-il s'inquiéter ?
Cette vulnérabilité a été découverte peu de temps après qu'un chercheur en sécurité chinois ait divulgué un exploit PoC sur GitHub, avant de procéder à la suppression de son compte. Cette faille me fait penser à celle qui a touché la bibliothèque Log4j. Il faut dire que l'on voit déjà des noms comme Spring4Shell ou SpringShell lui être associés.
Tout d'abord, il faut savoir que Spring est un framework open source populaire auprès de la communauté Java, dont l'objectif est de faciliter le développement d'applications en Java. Il est utilisé dans de nombreux domaines, notamment pour des applications Web et des API. Spring est une société qui appartient à VMware.
D'après l'entreprise de cybersécurité Praetorian, la faille affecte Spring Core pour le kit de développement Java (JDK) en version 9 et supérieure. Elle permettrait d'exploiter facilement une autre vulnérabilité associée à la référence CVE-2010-1622, ce qui permettrait à un attaquant non authentifié d'exécuter du code arbitraire sur le système cible.
Les chercheurs Anthony Weems et Dallas Kaman ne sont pas très rassurants puisqu'ils précisent : "Dans certaines configurations, l'exploitation de cette faille de sécurité est simple, car il suffit à un attaquant d'envoyer une requête HTTP spécifique à un système vulnérable". Néanmoins, il faudra mener un travail de recherche supplémentaire pour être capable de construire une requête adaptée aux différentes configurations afin que la charge utile fonctionne.
Pour le moment, cette vulnérabilité n'a pas de correctif et elle n'a même pas de référence CVE attribuée, même si cela ne devrait pas tarder. Il ne faut pas confondre cette faille de sécurité avec deux autres publiées cette semaine au sujet de Spring (CVE-2022-22950 et CVE-2022-22963).
D'après les experts, cette vulnérabilité ne serait pas si sévère puisque l'attaquant doit identifier une application Web qui utilise "DeserializationUtils" pour exploiter la faille. Normalement, les développeurs ne l'utilisent pas, car cette fonction est déjà réputée comme étant dangereuse.
Pour le moment, des tests sont en cours sur le PoC publié, car on ne sait peut-être pas tout de cette faille de sécurité. Nous ne connaissons pas non plus la quantité de serveurs potentiellement vulnérables. Il faudra suivre de près l'évolution de la situation dans les prochains jours.