Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2022-22965 PoC — Spring Framework 代码注入漏洞

Source
Associated Vulnerability
Title:Spring Framework 代码注入漏洞 (CVE-2022-22965)
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.
Description
Spring-0day/CVE-2022-22965
Readme
# CVE-2022-22965

[Spring Framework/CVE-2022-22965](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22965)

Vulnerability ID: CVE-2022-22965/CNVD-2022-23942/QVD-2022-1691

### Reproduce the vulnerability

```bash
docker pull vulfocus/spring-core-rce-2022-03-29
docker run -dit -p 8080:8080 vulfocus/spring-core-rce-2022-03-29
```

![image](https://user-images.githubusercontent.com/54735907/161211872-8be1c304-3926-4834-bcb2-821d6e310fcf.png)


### Vulnerability detection
#### POC
It is recommended to use POC to detect the target. Its advantage is to verify whether the vulnerability exists based on [DNSLOG](https://dig.pm/), and it will not modify the log configuration of tomcat

```bash
python3 cve-2022-22965-poc.py -url https://example.com/
python3 cve-2022-22965-poc.py -file file.txt
```
![image](https://user-images.githubusercontent.com/54735907/161371669-7eb22857-c063-420b-af45-c297c1a89e35.png)

#### EXP
```bash
python3 cve-2022-22965.py -url https://example.com/
python3 cve-2022-22965.py -file file.txt
```
![image](https://user-images.githubusercontent.com/54735907/161213886-d8c33d95-75dd-467f-92e0-f2a510366216.png)


### Exploit
#### POC
```bash
python3 cve-2022-22965-poc.py -url https://example.com/
```

![image](https://user-images.githubusercontent.com/54735907/161371769-918705df-32f7-464f-b506-1e54bf762548.png)


#### EXP
```bash
python3 cve-2022-22965.py -url http://example.com/
```
![image](https://user-images.githubusercontent.com/54735907/161216286-bdde45af-9b2d-44d5-90c6-6d529d64fd9f.png)

#### Fuzz

##### POC
*Add common routs on line 13*
```python
routs = ['env',]
```

##### EXP Fuzz
*Add common path on line 12*

```python
path = ['root',]
````


* WARNING:*

- This EXP will write unsuccessful http requests together to a file.
- This EXP changes the tomcat configuration.

![image](https://user-images.githubusercontent.com/54735907/161218014-50e75908-39c6-43ba-aed0-ae8300f5c0e1.png)
----
**For safe learning only, do not use illegally**

**仅用安全学习,请勿非法使用**
File Snapshot

[4.0K] /data/pocs/0d2f1bebadc4d6389475d3ffe578fb652b40701f ├── [4.4K] cve-2022-22965-poc.py ├── [3.2K] cve-2022-22965.py ├── [2.0K] README.md └── [ 1] result.txt 0 directories, 4 files
Shenlong Bot has cached this for you
Remarks
    1. It is advised to access via the original source first.
    2. Local POC snapshots are reserved for subscribers — if the original source is unavailable, the local mirror is part of the paid plan.
    3. Mirroring, verifying, and maintaining this POC archive takes ongoing effort, so local snapshots are a paid feature. Your subscription keeps the archive online — thank you for the support. View subscription plans →