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-2021-21290 Vulnerability in maven package io.netty:netty-handler
CVE-2018-3721 Vulnerability in npm package lodash.mergewith
CVE-2023-4316 Vulnerability in npm package zod
CVE-2022-29002 Vulnerability in maven package com.xuxueli:xxl-job
CVE-2023-30515 Vulnerability in maven package io.jenkins.plugins:thycotic-devops-secrets-vault