Description
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.
Remediation
References
http://packetstormsecurity.com/files/166713/Spring4Shell-Code-Execution.html
http://packetstormsecurity.com/files/167011/Spring4Shell-Spring-Framework-Class-Property-Remote-Code-Execution.html
https://cert-portal.siemens.com/productcert/pdf/ssa-254054.pdf
https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2022-0005
https://tanzu.vmware.com/security/cve-2022-22965
https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-java-spring-rce-Zx9GUc67
https://www.kb.cert.org/vuls/id/970766
https://www.oracle.com/security-alerts/cpuapr2022.html
https://www.oracle.com/security-alerts/cpujul2022.html
Related Vulnerabilities
CVE-2022-40764 Vulnerability in npm package snyk-go-plugin
CVE-2022-31692 Vulnerability in maven package org.springframework.security:spring-security-web
CVE-2017-16208 Vulnerability in npm package dmmcquay.lab6
CVE-2021-43138 Vulnerability in maven package org.webjars.bowergithub.caolan:async
CVE-2023-43494 Vulnerability in maven package org.jenkins-ci.main:jenkins-core