
Vulnérabilité RCE dans Spring Framework via Data Binding sur JDK 9+ (CVE-2022-22965 alias "Spring4Shell")
Vulnérabilité RCE dans Spring Framework via Data Binding sur JDK 9+
L'objectif est de centraliser le maximum d'informations publiquement connues à ce jour sur la vulnérabilité et de savoir quelles actions entreprendre dans ce cas.
Les conditions (AND) à remplir sont :
À ce jour, elle n'est pas vulnérable à l'exploit. Mais il faut noter que cette vulnérabilité est de nature plus générale, donc il pourrait exister d'autres façons de l'exploiter.
Spring Framework
Les versions antérieures ou non supportées sont également concernées.
Spring Framework
Au cas où il ne serait pas possible de corriger la vulnérabilité, Spring a publié quelques workarounds.
Apache Tomcat a publié 3 nouvelles versions offrant une protection adéquate : 10.0.20, 9.0.62 et 8.5.78, et il est suggéré de les considérer comme une couche de protection supplémentaire à la mise à jour de Spring Framework.
Les versions de Spring Boot 2.6.6 et 2.5.12 qui dépendent de Spring Framework 5.3.18 ont été publiées.
On peut utiliser l'outil https://github.com/hillu/local-spring-vuln-scanner (mirror) afin de détecter les instances vulnérables à Spring4Shell. Un exemple possible d'exécution est :
./local-spring-vuln-scanner --verbose --log </path/to/file.log> </path/to/app1> </path/to/appN>
Nous avons développé une règle de détection pour Wazuh que vous pourrez trouver dans le répertoire "detection" de ce dépôt, laquelle, basée sur un ensemble d'indicateurs d'attaque (IOA), permet de détecter les tentatives d'attaque.
Il y a eu des spéculations concernant un commit autour de la validation pour désapprouver l'utilisation de la méthode SerializationUtils.deserialize(...). Cette classe n'est pas exposée à des entrées externes et cette désapprobation n'est pas liée à cette vulnérabilité.
Il y a eu une confusion avec un CVE pour Spring Cloud Function qui a été publié juste avant le rapport de cette vulnérabilité CVE-2022-22963. Il n'est pas non plus lié.
TryHackMe a créé un laboratoire interactif d'exploitation de Spring4Shell