严重 (CVSS v4: 10.0) — 针对 Joomla 的 SP Page Builder (
com_sppagebuilder) 中未认证远程代码执行的 PoC 漏洞利用
| 属性 | 值 |
|---|---|
| CVE ID | CVE-2026-48908 |
| 严重性 | 严重 |
| CVSS v4 评分 | 10.0 |
| 弱点 | CWE-284 (不当访问控制) → 未认证文件上传 |
| 组件 | Joomla 的 SP Page Builder (com_sppagebuilder) |
| 受影响版本 | 1.0.0 – 6.6.1 |
| 修复版本 | 6.6.2 |
| 所需权限 | 无 (预认证) |
| 用户交互 | 无 |
| 攻击向量 | 网络 |
| 影响 | 完全系统沦陷 (RCE) |
SP Page Builder 暴露了控制器任务 asset.uploadCustomIcon 用于处理自定义图标字体系列的上传:
index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon
在受影响版本中,此任务可在无需认证且无需有效 CSRF 令牌的情况下访问。它接受一个 ZIP 归档文件(multipart 字段 custom_icon)并将其内容解压到 Web 根目录下公开可访问的目录:
/media/com_sppagebuilder/assets/iconfont/<name>/
由于该端点可在预认证阶段访问,且解压后的文件位于可浏览的位置,攻击者可以上传任意文件并通过 HTTP 请求执行 PHP 代码。
此利用程序通过以下方式绕过了常见的服务器端文件名过滤器:
.php、.phtml、.phar 等,但不进行大小写归一化,因此 .PHP 和其他大小写混合的变体会被接受。selection.json、style.css 和 fonts/<name>.ttf,因此上传会被接受。fonts/shxt.{ext}。.php 和 .PHP 变体result.txtrequests 库git clone https://github.com/Jenderal92/CVE-2026-48908
cd CVE-2026-48908
pip install requests
python2 CVE-2026-48908.py list.txt
python2 CVE-2026-48908.py list.txt 20
list.txt 应每行包含一个目标 URL:
https://example.com
http://target-site.com/joomla
https://192.168.1.100/joomla
· 成功的后门 URL 会追加到 result.txt
· 每行包含上传的 PHP 后门的完整 URL
⚙️ 工作原理
index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon。fonts/shxt.{ext})。result.txt。嵌入的后门提供:
· 服务器环境信息(php_uname())
· 用于上传其他文件的文件上传接口
· 成功/失败反馈
🛡️ 缓解措施
· 将 SP Page Builder 升级到 6.6.2 或更高版本。
· 审计上传目录中是否存在未授权文件:
· /media/com_sppagebuilder/assets/iconfont/
· 删除在这些目录中找到的任何意外的 PHP 文件。
· 审查服务器日志中对 asset.uploadCustomIcon 的可疑 POST 请求。
· 部署 Web 应用程序防火墙 (WAF) 以阻止此类请求。
⚠️ 免责声明
此工具仅用于教育和授权的安全测试目的。
未经授权访问计算机系统是违法的。作者不承担因使用此工具而产生的任何误用或损害的责任。仅在你拥有或获得明确书面许可的系统上使用。
更多免责声明请查看 Jenderal92 封面上的免责声明。你可以点击此处查看。
📚 参考
· Censys 公告 · NVD 条目 · JoomShaper 安全公告
📄 许可证
此项目仅用于教育和研究目的。使用风险自负。