🎯 CVE-2026-56290 深度技术分析:漏洞根因 · PoC/EXP · 检测指纹

🎯 CVE 全聚合深度分析

CVE-2026-56290 深度技术分析

📊 聚合 4 来源🧪 含 PoC
NVD-LatestCISA-KEVPoC-in-GitHubExploit-DB-RSS

摘要:CVE-2026-56290 是影响 Joomla 扩展 Page Builder CK(组件标识 com_pagebuilderck)的严重漏洞,CVSS 评分为 9.8(CRITICAL)。该漏洞源于 fonts.save 任务存在不当访问控制(Improper Access Control),允许未authenticated攻击者通过任意文件上传功能将可执行文件写入服务器,最终实现远程代码执行(RCE)。该漏洞已被 CISA KEV 收录,表明已出现实际利用行为。

📌 漏洞概述

  • CVE 编号:CVE-2026-56290
  • CVSS 评分:9.8(Critical)
  • 组件:Joomla 扩展 Page Builder CK(com_pagebuilderck
  • 受影响版本:低于 3.6.0 的所有版本
  • 漏洞类型:不当访问控制(CWE-284)导致的任意文件上传(CWE-434)
  • 利用位置:前端 fonts.save 任务

该漏洞允许未认证的远程攻击者绕过权限检查,向服务器上传任意文件(包括 PHP Web Shell),从而在目标主机上执行任意命令。由于无需任何认证,攻击门槛极低,配合公开的 PoC 扫描工具,可在互联网上大规模批量利用。

🔬 漏洞根因分析

Page Builder CK 是 Joomla 上流行的页面构建组件,其后台功能中包含字体管理模块。该模块通过 AJAX 处理字体上传请求,核心漏洞存在于 fonts.save 任务的访问控制缺失。在组件设计时,开发者可能错误地认为该任务仅能由已登录后台的管理员调用,但实际实现中并没有对请求进行有效的身份验证或权限校验(例如调用 JSession::checkToken()$user->authorise())。这导致任何未认证的 HTTP 请求都可以直接触发该任务。

进一步分析 PoC 代码可知,攻击者构造特殊请求,调用 fonts.save 并从远程 URL 拉取恶意负载,最终将文件写入 media/com_pagebuilderck/gfonts/fbi.php。这一行为揭示了第二个根因:组件在保存字体文件时,既没有对文件扩展名进行白名单校验,也没有重命名文件为安全的随机名称,而是直接将攻击者控制的文件内容写入可公开访问的 media 目录下。由于 media 目录中的 PHP 文件可被 Web 服务器直接解析,攻击者上传的 .php 文件即可被远程执行。

从攻击链来看,该漏洞属于“不当访问控制 + 任意文件上传”的组合漏洞:缺少访问控制是前提,文件上传校验缺失是关键。攻击者首先利用可匿名访问的 fonts.save 接口,其次通过该接口的下载/保存逻辑,将远程服务器上的恶意文件内容写入目标路径。PoC 中检测的 Fbi Shell 即为上传后 PHP 成功解析的指纹,证明漏洞可被稳定利用。

💥 影响与危害

  • 远程代码执行(RCE):攻击者上传包含恶意 PHP 代码的 Web Shell,并在服务器上执行任意系统命令,完全控制 Web 服务器。
  • 未授权访问:因利用过程无需任何用户会话或凭据,任何能访问目标站点的外部攻击者都可发起攻击。
  • 批量扫描风险:公开的 PoC 支持单目标和多线程批量扫描,攻击者可扫描全网暴露的 Joomla 站点,自动上传 Shell 并收集“命中”列表,导致大规模站点被入侵。
  • 数据泄露与勒索:一旦获得服务器权限,攻击者可窃取数据库、用户凭证、商业敏感数据,甚至植入勒索软件。
  • 供应链与横向移动:受损的 Joomla 服务器可能被用作跳板,进一步攻击内网其他系统。
  • CISA KEV 收录:该漏洞已被证实存在在野利用,属于高优先级修复对象。

🛡️ 修复与缓解

补丁版本:Page Builder CK 3.6.0 已修复此漏洞。所有使用低于 3.6.0 版本的站点必须立即升级到 3.6.0 或更高版本。

  • 立即升级:通过 Joomla 后台扩展管理器或官方渠道更新 Page Builder CK 至最新版本,并确认版本号 ≥ 3.6.0。
  • 临时缓解:在补丁安装前,可使用 Web 应用防火墙(WAF)规则拦截包含 fonts.save 且无合法会话的请求;或通过服务器配置禁止 media/com_pagebuilderck/gfonts/ 目录执行 PHP(例如设置 php_admin_flag engine off 或 Nginx location ~ \.php$ { deny all; })。
  • 网站体检:立即检查 media/com_pagebuilderck/gfonts/ 下是否有可疑 PHP 文件(如 fbi.phpshell.php 等),同时审计 Web 服务器访问日志中是否存在异常 fonts.save 请求。
  • 应急处置:若发现被上传恶意文件,应备份证据、隔离受影响服务器,清除恶意文件并排查攻击者可能留下的其他后门(如新增用户、cron 后门等)。
  • 遵循 CISA 指导:按照 CISA BOD 26-04 要求,优先修补暴露在互联网的资产,并在修复后持续监控新出现的利用活动。

🧪 PoC 复现

从 GitHub 公开仓库抓取的实际 PoC 代码(仓库)。

📋 代码元数据语言md来源sagsooz/PageBuilderCK-CVE-2026-56290-Exploit针对性✅ 已验证与漏洞相关(代码含 CVE 引用)依赖见代码注释/README用法详见代码注释中的使用说明

# Page Builder CK — fonts.save RCE Probe CVE-2026-56290

**BlackHat Team** proof-of-concept scanner for the Joomla **Page Builder CK** `fonts.save` vulnerability.
**POC CVE-2026-56290**
>**Author:** [@mrzblackhat](https://t.me/mrzblackhat)  
>**Team:** BlackHat Team  
>
**Credits:** Peyman Siyahi · MR.PERSIA

---

## Overview

This tool probes Joomla sites running the vulnerable **com_pagebuilderck** component. It abuses the `fonts.save` task to pull a remote payload and writes a web shell under:

```
media/com_pagebuilderck/gfonts/fbi.php
```

RCE is confirmed when the uploaded shell responds with an HTML `<title>` containing **`Fbi Shell`**.

Supports **single-target** and **mass** scanning with threaded workers and instant hit saving.

---

## Requirements

- Python **3.10+**
- `requests`
- `urllib3`

```bash
pip install requests urllib3
```

---

## Usage

### Single target

```bash
python3 poc.py --url https://example.com --insecure
```

### Mass scan

```bash
python3 poc.py --mass targets.txt --insecure --threads 20 --timeout 12
```

`targets.txt` — one URL per line. Lines after `#` are ignored.

### Options

|
Flag |Description ||------|-------------||`--url URL` |Scan a single target ||`--mass FILE` |Scan targets from a file ||`--insecure` |Skip TLS certificate verification ||`--threads N` |Worker threads for mass mode (default: `20`) ||`--timeout N` |HTTP timeout in seconds (default: `12`) ||`--output FILE` |Save confirmed shell URLs (default: `hits.txt`) |
---

## Output

- **HIT** — shell uploaded and PHP executed;title contains `Fbi Shell`
- **PART** — file written but PHP not executed
- **MISS** — exploit not confirmed

Confirmed shell URLs are appended to the output file immediately.

---

## Project files

|File |Description ||------|-------------||`poc.py` |Obfuscated release build (run this) ||`hits.txt` |Default output for confirmed shells |
### Rebuild after editing source

```bash
python3 _build_obf.py
```

---

## How it works

1. Fetch homepage and extract Joomla CSRF token
2. `POST` to `index.php` with `option=com_pagebuilderck&task=fonts.save`
3. Remote `font.css` callback triggers shell write to `gfonts/fbi.php`
4. `GET` the shell path and verify `<title>` contains `Fbi Shell`

---

## Disclaimer

This tool is provided for **authorized security research and penetration testing only**.

Unauthorized access to computer systems is illegal. The authors and **BlackHat Team** are not responsible for misuse. Only test systems you own or have explicit written permission to assess.

---

## Contact

- **Telegram:** [https://t.me/mrzblackhat](https://t.me/mrzblackhat)
- **Handle:** `@mrzblackhat`

**BlackHat Team** — Peyman Siyahi · MR.PERSIA

---

*Original research and tooling by [@mrzblackhat](https://t.me/mrzblackhat). Do not redistribute modified copies without attribution.*

⚔️ EXP 利用代码

截至分析时,Exploit-DB 未收录该 CVE 的公开利用代码。可利用上述 PoC 进行验证,或关注 Exploit-DB 更新。

🕵️ 检测指纹

当前规则库未收录针对该 CVE 的专用检测规则。建议:

  • 根据漏洞根因编写 Nuclei 检测模板
  • 在 WAF/IDS 中配置针对漏洞特征的规则
  • 关注漏洞指纹库更新

🤖 本文由漏洞情报系统自动聚合生成 · 2026-08-11 05:06 · 数据源: NVD/GitHub-Advisory/OSV/CISA-KEV/Exploit-DB/PoC-in-GitHub + 检测规则库

[!] CONTACT_CHANNELS

如需商务合作、技术咨询或漏洞反馈,请通过以下离岸节点联系作者。

> PING_AUTHOR (@A1RedTeam)