ywh-jfellus/CVE-2026-48907
GitHub: ywh-jfellus/CVE-2026-48907
针对 Joomla JCE 扩展未授权 RCE 漏洞 CVE-2026-48907 的教育性 PoC,提供完整的 Docker 实验环境和漏洞利用脚本。
Stars: 6 | Forks: 0
# CVE-2026-48907 教育 PoC
本 PoC 演示了 [CVE-2026-48907](https://nvd.nist.gov/vuln/detail/CVE-2026-48907),这是一个影响 2.9.99.4 及以下版本 Joomla Content Editor (JCE) 的未授权 RCE 漏洞。
它利用了 JCE 的 profile 导入功能中缺失的身份验证和验证机制,
它与 [BIBIL_0DAY 的原始 PoC](https://github.com//webshellseo8//CVE-2026-48907-Unauthenticated-RCE-in-JCE) 不同,因为它依赖于这样一个事实:JCE 的 profile 导入会将上传的 profile 文件暂存到 `tmp/` 目录中,且没有进行身份验证、文件格式或内容验证。由于默认的 Joomla 配置允许从 `tmp/` 文件夹执行 PHP,这导致了一条直接的 RCE 路径。
限制 PHP 执行甚至禁止对 `tmp/` 文件夹的公共访问,可以轻松缓解此攻击向量。
**鼓励 Joomla 用户强化其 Web 服务器配置,并将 JCE 更新至 `>=2.9.99.5`**。
## 实验环境
* `vulnerable/` – 使用官方 `joomla:latest` Docker 镜像部署 Joomla 实例的 docker-compose,并安装 JCE 2.9.99.4(漏洞版本)。监听地址为 `127.0.0.1:9999`
* `patched/` – 使用官方 `joomla:latest` Docker 镜像部署 Joomla 实例的 docker-compose,并安装 JCE 2.9.99.5(修补版本)。监听地址为 `127.0.0.1:9999`
运行
```
docker compose -f vulnerable/docker-compose.yaml up
python3 poc.py
```
输出
```
{"success":true,"message":"","messages":{"info":["0 Profile(s) imported successfully"]},"data":{"redirect":"\/index.php\/component\/jce?view=profiles"}}
>> 3105
[!!!!!] PHP payload was executed ! Server is vulnerable to cve-2026-48907 !
```
## 免责声明
本项目旨在帮助研究人员、防御者和管理员了解该漏洞,并在受控环境中验证修复工作。作者不对本材料的任何滥用行为负责。
标签:CISA项目, Docker, Joomla, 安全防御评估, 漏洞验证程序, 编程工具, 请求拦截, 远程代码执行, 逆向工具