
JCEzploit 是一款命令行安全研究工具,用于在测试人员获得明确授权的环境中评估 Joomla 内容编辑器(JCE)组件的配置文件导入功能。它专为专业渗透测试人员、安全研究人员和防御者设计,帮助其在受控环境中复现并验证已报告的远程代码执行漏洞。
该项目提供了结构化的命令行工作流程、可配置的代理支持、多种执行模式、诊断输出以及交互式会话界面。它只能用于操作者拥有或已获得书面测试授权覆盖的目标。
发布说明: 在发布或分发本 README 之前,请对照权威厂商或漏洞数据库记录,核实项目的 CVE 标识符、受影响版本范围、修复版本、披露状态和测试矩阵。以下元数据反映了所提供的项目信息,不应视为独立的漏洞确认。
当针对未经批准的目标使用时,本软件可能导致未授权访问、数据泄露、服务中断或系统沦陷。维护者不授权对第三方系统、公共基础设施或未获书面许可的系统进行测试。
使用本项目即表示您同意:
仅测试您拥有明确书面授权的系统。
定义并遵守经批准的范围、时间窗口、速率限制和交战规则。
避免访问、修改、窃取或保留不必要的数据。
如果测试活动可能导致服务中断或影响无关用户,请立即停止测试。
遵守所有适用的法律、法规、合同和组织政策。
对因使用本软件而产生的一切后果承担责任。
作者和贡献者按“原样”提供本项目,不对因使用本软件而导致的滥用、损害、数据丢失、法律索赔或其他后果负责。
以下详细信息随项目一并提供,在用于安全公告或生产环境评估之前,需要独立核实。
| 字段 | 项目提供的详细信息 |
|---|---|
| 漏洞标识符 | CVE-2026-48907 |
| 报告的问题 | 未经验证的远程代码执行 |
| 报告的受影响版本 | JCE 1.0.0 至 2.9.99.4 |
| 报告的修复版本 | JCE 2.9.99.5 |
| 提供的测试环境 | Joomla 3.10.11、JCE 2.9.15、Apache 2.4、PHP 7.4 |
| 报告的危险等级 | 严重;可能导致整个系统完全沦陷 |
对于防御性工作,请首先确认已部署的 Joomla 和 JCE 版本,获得授权,制定回滚计划,并尽可能优先采用非破坏性的验证方法。
根据项目资料,JCEzploit 包含以下功能:
| 领域 | 功能 |
|---|---|
| 工作流程 | 自动化请求准备与漏洞验证工作流程 |
| 会话界面 | 支持历史记录、补全和彩色输出的交互式命令会话 |
| 执行模式 | 交互、单命令、批处理、静默、详细和面向调试的模式 |
| 检测 | CSRF 令牌发现,支持多种回退模式 |
| 网络控制 | 支持 HTTP/HTTPS 代理,便于受控的请求检查 |
| 可靠性 | 连接池、超时和错误处理 |
| 文件操作 | 适用于授权评估场景的文件读取功能 |
| 平台支持 | 支持 Linux、macOS 和 Windows 环境,Python 3.6+ |
交互式界面支持如下所示的命令。请仅在经批准的测试环境中使用非破坏性命令。
$> whoami # Display the execution identity
$> id # Display user and group information
$> pwd # Display the current working directory
$> exit # Close the session
| 要求 | 最低或支持的值 |
|---|---|
| Python | 3.6 或更高版本 |
| 包管理器 | pip |
| 操作系统 | Linux、macOS 或 Windows |
| 网络访问 | 仅用于安装依赖和访问经授权的测试目标 |
确切的依赖项集合在 requirements.txt 中定义。请使用虚拟环境将项目依赖与宿主系统隔离。
git clone https://github.com/CerberusMrXi/JCEzploit-CVE-2026-48907.git
cd JCEzploit-CVE-2026-48907
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
chmod +x jcezploit.py
git clone https://github.com/CerberusMrXi/JCEzploit-CVE-2026-48907.git
Set-Location JCEzploit-CVE-2026-48907
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txt
如果 PowerShell 执行策略阻止激活,请咨询您所在组织的端点管理策略,而不是全局削弱安全控制。也可以直接通过虚拟环境的解释器调用该脚本。
pip install pipenv
pipenv install requests rich
pipenv shell
python jcezploit.py --help
如果仓库包含维护中的 Dockerfile,请在隔离且经授权的实验环境中构建并运行它:
docker build -t jcezploit .
docker run --rm -it jcezploit --help
请勿将敏感的主机目录、生产环境凭据或不受限制的主机网络挂载到容器中。
始终从审查目标范围并显示内置帮助开始:
python jcezploit.py --help
提供的命令行界面总结如下。
usage: jcezploit.py [-h] -u URL [--proxy PROXY] [-v] [-q]
[--cmd CMD] [--interactive] [--batch FILE]
[--no-confirm]
JCEzploit - Joomla JCE security testing utility
options:
-h, --help Show this help message and exit
-u, --url URL Authorized target base URL (required )
--proxy PROXY HTTP proxy, for example http://127.0.0.1:8080
-v, --verbose Enable diagnostic output
-q, --quiet Suppress non-essential output
--cmd CMD Execute one approved test command and exit
--interactive Start an interactive test session
--batch FILE Read approved test commands from a file
--no-confirm Skip the confirmation prompt; use only in automation
以下示例演示了调用方式。请将目标替换为明确授权的实验室或评估端点。
# Start an interactive assessment session.
python jcezploit.py --url http://authorized-lab.example --interactive
# Execute a low-impact identity check.
python jcezploit.py --url http://authorized-lab.example --cmd "id"
# Route requests through a local inspection proxy.
python jcezploit.py \
--url http://authorized-lab.example \
--proxy http://127.0.0.1:8080 \
--interactive \
--verbose
创建一个仅包含预先批准的非破坏性验证步骤的命令文件:
# commands.txt
whoami
id
pwd
针对经批准的目标运行批处理文件:
python jcezploit.py --url http://authorized-lab.example --batch commands.txt
在受控环境中排查请求流程或为评估报告收集证据时,请使用 --verbose。在将输出集成到经批准的自动化流水线时,请使用 --quiet。避免在共享日志中存储机密信息、会话令牌、响应正文或个人数据。
项目接受命令行配置。只要实现明确支持,以下环境变量约定可供包装脚本或本地运行手册使用:
TARGET_URL=http://authorized-lab.example
PROXY=http://127.0.0.1:8080
VERBOSE=true
QUIET=false
请勿将 .env 文件、凭据、令牌、目标清单、捕获的响应或评估结果提交到版本控制。将本地配置文件添加到 .gitignore,并在适当的情况下使用密钥管理器。
JCEzploit/
├── jcezploit.py # Main command-line program
├── requirements.txt # Runtime dependencies
├── README.md # Project documentation
├── LICENSE # MIT License
├── .gitignore # Ignored local and generated files
├── setup.sh # Optional setup helper
├── sample_commands.txt # Example command file
├── Dockerfile # Container build definition
├── verify.py # Dependency verification helper
└── docs/
├── vulnerability_details.md
├── pentest_guide.md
└── changelog.md
上述目录树反映了所提供的项目布局。每当添加、删除或重命名文件时,请更新它。
仅当仓库提供维护中的 requirements-dev.txt 文件时,才安装开发依赖:
pip install -r requirements-dev.txt
python -m pytest tests/
在提交拉取请求之前,请确认更改已记录在案、测试通过、错误处理保持清晰,并且提交中不包含目标数据或机密信息。为解析、输入验证、代理处理、超时行为和安全的失败路径添加回归测试。
专业评估应尽可能使用专用的测试环境。在验证之前进行备份或快照,定义紧急停止流程,监控应用程序和主机运行状况,并在整个测试窗口期内与系统所有者协调配合。
该工具不应被用于建立持久化、部署额外恶意软件、规避监控、访问无关账户、导出敏感文件或进行横向移动。证据收集应限于证明发现所需的范围,并应遵循客户的数据处理要求。
如果测试发现此前未知的问题,请不要立即发布漏洞利用细节。私下通知受影响的厂商或项目,提供可复现的防御性证据,给予合理的修复时间,并协调任何公开披露。请参阅 Joomla 安全中心 了解该项目已发布的安全报告指南。
欢迎支持负责任防御性研究的安全专业人士和开发人员贡献代码。在进行重大更改之前,请先提交 issue,以便讨论范围和安全性预期。
典型的贡献工作流程如下:
git checkout -b feature/documentation-improvement
# Make and test your changes
git add .
git commit -m "Improve documentation"
git push origin feature/documentation-improvement
拉取请求应说明要解决的问题、描述更改内容、指明测试覆盖范围,并记录任何兼容性或安全性影响。Python 代码请遵循 PEP 8,使用清晰明了的错误信息,避免嵌入机密信息,并保留项目的道德使用保障措施。
项目初始发布。
新增所报告的 JCE 安全测试工作流程。
新增交互式会话支持。
为授权测试新增文件读取功能。
新增批处理命令处理。
新增代理支持。
新增丰富的命令行输出。
新增跨平台支持。
扩展防御性验证覆盖范围。
改进对受支持的 Joomla 和 JCE 版本的兼容性测试。
新增结构化评估报告输出。
加强输入验证并采用更安全的默认行为。
新增自动化单元测试和集成测试。
提供有文档记录的实验室环境,以便进行可重复的研究。
本项目根据 MIT 许可证分发。有关完整的许可证文本,请参阅 LICENSE。
MIT License
Copyright (c) 2024 Sudeepa Wanigarathna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Sudeepa Wanigarathna
安全研究员与渗透测试人员
请负责任地、合法地使用本项目,并且仅在获得明确授权的情况下使用。