Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

redhat логотип

CVE-2022-22965

Опубликовано: 30 мар. 2022
Источник: redhat
CVSS3: 8.1

Описание

A Spring MVC or Spring WebFlux application running on JDK 9+ may be vulnerable to remote code execution (RCE) via data binding. The specific exploit requires the application to run on Tomcat as a WAR deployment. If the application is deployed as a Spring Boot executable jar, i.e. the default, it is not vulnerable to the exploit. However, the nature of the vulnerability is more general, and there may be other ways to exploit it.

A flaw was found in Spring Framework, specifically within two modules called Spring MVC and Spring WebFlux, (transitively affected from Spring Beans), using parameter data binding. This flaw allows an attacker to pass specially-constructed malicious requests to certain parameters and possibly gain access to normally-restricted functionality within the Java Virtual Machine.

Отчет

The reporter of this flaw provided a proof-of-concept that relied on Apache Tomcat; it accessed the classloader and changed logging properties to place a web shell in Tomcat's root directory, and was able to call various commands subsequently. There are several conditions required to achieve this exploit: -Java 9 or newer version -Apache Tomcat as the Servlet container -packaged as WAR file -spring-webmvc or spring-webflux dependency -no protections in place against malicious data bindings (ex: WebDataBinder allow list) There may be other exploit paths than this, possibly not utilizing Tomcat.

Меры по смягчению последствий

For those who are not able to upgrade affected Spring classes to the fixed versions, there is a workaround customers can implement for their applications, via setting disallowed fields on the data binder, and denying various iterations of the string "class.*" For full implementation details, see Spring's early announcement post in the "suggested workarounds" section: https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement#suggested-workarounds

Затронутые пакеты

ПлатформаПакетСостояниеРекомендацияРелиз
Red Hat JBoss A-MQ 6spring-webmvcFix deferred
Red Hat JBoss Fuse 6spring-webmvcFix deferred
Red Hat Virtualization 4rhvm-dependenciesFix deferred
CEQ 2.2.1-1 (CVE-2022-22965)spring-beansFixedRHSA-2022:130611.04.2022
Red Hat AMQ 7.8.6spring-webmvcFixedRHSA-2022:162627.04.2022
Red Hat AMQ 7.9.4spring-webmvcFixedRHSA-2022:162727.04.2022
Red Hat Fuse 7.10.2spring-webmvcFixedRHSA-2022:136013.04.2022
RHDM 7.12.1 asyncspring-webmvcFixedRHSA-2022:137914.04.2022
RHINT Camel-K 1.6.5spring-beansFixedRHSA-2022:133312.04.2022
RHPAM 7.12.1 asyncspring-webmvcFixedRHSA-2022:137814.04.2022

Показывать по

Дополнительная информация

Статус:

Important
Дефект:
CWE-94
https://bugzilla.redhat.com/show_bug.cgi?id=2070348spring-framework: RCE via Data Binding on JDK 9+

8.1 High

CVSS3

Связанные уязвимости

CVSS3: 9.8
ubuntu
около 3 лет назад

A Spring MVC or Spring WebFlux application running on JDK 9+ may be vulnerable to remote code execution (RCE) via data binding. The specific exploit requires the application to run on Tomcat as a WAR deployment. If the application is deployed as a Spring Boot executable jar, i.e. the default, it is not vulnerable to the exploit. However, the nature of the vulnerability is more general, and there may be other ways to exploit it.

CVSS3: 9.8
nvd
около 3 лет назад

A Spring MVC or Spring WebFlux application running on JDK 9+ may be vulnerable to remote code execution (RCE) via data binding. The specific exploit requires the application to run on Tomcat as a WAR deployment. If the application is deployed as a Spring Boot executable jar, i.e. the default, it is not vulnerable to the exploit. However, the nature of the vulnerability is more general, and there may be other ways to exploit it.

CVSS3: 9.8
debian
около 3 лет назад

A Spring MVC or Spring WebFlux application running on JDK 9+ may be vu ...

CVSS3: 9.8
github
около 3 лет назад

Remote Code Execution in Spring Framework

CVSS3: 8.8
fstec
около 3 лет назад

Уязвимость модуля Spring Core программной платформы Spring Framework, позволяющая нарушителю выполнить произвольный код

8.1 High

CVSS3