Vulnérabilité dans Spring Framework
- Maxime Tran
- 08 avr., 2022
- Tech articles
Contexte :
Plusieurs vulnérabilités critiques ont été découvertes dans la bibliothèque Spring Framework et son écosystème conduisant à l'exécution de code à distance (Remote Code Execution, RCE). L'une se trouve dans Spring Core et l'autre dans Spring Cloud Functions.
Spring Core est un framework largement utilisé dans les applications Java et les projets de développements d'application Java/J2EE.
Des CVE (Common Vulnerabilities and Exposures) ont été publiés :
- CVE-2022-22946 : Spring Cloud Gateway HTTP2 TrustManager non sécurisé
- CVE-2022-22947 : Vulnérabilité d'injection de code Spring Cloud Gateway
- CVE-2022-22963 : Exécution de code distance dans Spring Cloud Function par Spring Expression malveillante
- CVE-2022-22965 : Spring Framework RCE via Data Binding sur JDK 9+
Quelles sont les versions Spring affectés ?
CVE-2022-22946:
Spring Cloud Gateway :
- 3.1.0
Note : La gravité est moyenne, sauf indication contraire.
CVE-2022-22947:
Spring Cloud Gateway :
- 3.1.0
- 3.0.0 à 3.0.6
- Les anciennes versions non prises en charge sont également affectées.
Note : La gravité est critique, sauf indication contraire.
CVE-2022-22963:
Spring Cloud Function :
- 3.1.6
- 3.2.2
- Les anciennes versions non prises en charge sont également affectées.
Note : La gravité est critique, sauf indication contraire.
CVE-2022-22965:
Spring Framework :
- 5.3.0 to 5.3.17
- 5.2.0 to 5.2.19
- Les anciennes versions non prises en charges sont également affectées.
Voici les conditions préalables à l'exploitation de la vulnérabilité :
- JDK 9 ou supérieur
- Apache Tomcat comme serveur d'application
- Packagé comme WAR
- Dépendence spring-webmvc ou spring-webflux
Note : La gravité est critique, sauf indication contraire.
ARender est-il concerné par ces failles de sécurité ?
Les applications ARender UI (frontend) et ARender Rendition (backend) n'utilisent pas la librairie de Spring Cloud Function, ni la librairie Spring Cloud Gateway.
Elles ne sont donc pas concernées par les vulnérabilités des CVE suivants :
- CVE-2022-22946
- CVE-2022-22947
- CVE-2022-22963
ARender Rendition est composé de microservices Spring Boot en jar exécutable et n'est donc pas vulnérable au CVE-2022-22695.
ARender UI n'utilise pas la librairie Spring-webflux mais embarque Spring-webmvc. ARender nécessite également un JDK 8 minimum.
Des analyses et des tests ont été effectué afin de vérifier la sécurité de l'application. Il n'y a pas eu de vulnérabilité détecté dans le composant ARender UI.
Conclusion
ARender n'est pas affecté par les récentes vulnérabilités découvertes dans l'écosystème Spring. Nous resterons, néanmoins, vigilants sur les futures découvertes liées ou non à ces failles.