Lucee CFML 反射型 XSS 漏洞的概念验证 (CVE-2026-29519)
在 Lucee CFML 的 URL 路径解析机制中发现了一个关键的 0-day 反射型跨站脚本 (XSS) 漏洞。此漏洞允许攻击者在 Lucee 应用程序(包括管理界面)的上下文中注入并执行任意 HTML/JavaScript。该漏洞影响从 5.3.1.95 到最新 7.x 版本的 22 个不同 Lucee 版本。
从 5.3.1.95 到 7.0.1.100 的 22 个版本,包括所有 7.x 快照。
| 版本 | 状态 | 备注 |
|---|---|---|
| 7.0.0.395 | ✅ 有漏洞 | 最新 7.x 版本 |
| 6.2.3.35 | ✅ 有漏洞 | 最新 6.2.x 补丁 |
| 6.2.2.91 | ✅ 有漏洞 | |
| 6.2.1.122 | ✅ 有漏洞 | |
| 6.2.0.321 | ✅ 有漏洞 | 原始发现版本 |
| 6.1.2.47 | ✅ 有漏洞 | |
| 6.1.1.118 | ✅ 有漏洞 | |
| 6.1.0.243 | ✅ 有漏洞 | |
| 5.3.7.59 | ✅ 有漏洞 | |
| 5.3.7.47 | ✅ 有漏洞 | |
| 5.3.7.43 | ✅ 有漏洞 | |
| 5.3.6.68 | ✅ 有漏洞 | |
| 5.3.6.61 | ✅ 有漏洞 | |
| 5.3.5.96 | ✅ 有漏洞 | |
| 5.3.5.92 | ✅ 有漏洞 | |
| 5.3.4.80 | ✅ 有漏洞 | |
| 5.3.4.77 | ✅ 有漏洞 | 主页显示调试信息 |
| 5.3.3.67-SNAPSHOT | ✅ 有漏洞 | |
| 5.3.3.62 | ✅ 有漏洞 | |
| 5.3.2.77 | ✅ 有漏洞 | |
| 5.3.1.102 | ✅ 有漏洞 | |
| 5.3.1.95 | ✅ 有漏洞 |
# 1. 启动一个有漏洞的 Lucee 实例(示例:6.2.0.321 或最新的 7.x)
docker run -d -p 8888:8888 --name lucee-test lucee/lucee:6.2.0.321
# 2. 等待 35-40 秒使其初始化
sleep 40
# 3. 通过访问以下地址测试漏洞:
http://[lucee-host]/test//index.cfm/
# 4. 观察 JavaScript 执行(弹出警报对话框)。
# 5. 清理
docker stop lucee-test 2>/dev/null; docker rm lucee-test 2>/dev/null
Lucee 尚未发布官方补丁,因为厂商未回应此报告。但是,以下版本不受影响:
安全版本(不受影响)
公司可以升级/降级到这些版本以避免 XSS:
6.0.x 分支(安全)
5.4.x 分支(安全)
5.3.x 分支(部分安全)
环境
测试时长: 18+ 小时手动测试
测试版本: 50+ Lucee 发行版(4.5.1.024 至 7.0.0.395)
平台: Ubuntu Linux 上的 Docker 容器
工具: curl、手动浏览器测试、Burp Suite
1- 升级到最新的安全版本:
2- 如果无法升级,应用临时 WAF 规则以阻止 URL 路径中的 HTML 标签。示例(nginx):
location ~* "<.*>" { return 403; }
3- 监控 Lucee 的官方渠道以获取未来的安全补丁。由于厂商没有回应,公司也应考虑直接联系 Lucee 寻求修复。
| 指标 | 值 | 说明 |
|---|---|---|
| 攻击向量 | 网络 | 可通过网络远程利用 |
| 攻击复杂度 | 低 | 无需特殊条件 |
| 所需权限 | 无 | 无需认证 |
| 用户交互 | 需要 | 受害者必须点击恶意链接 |
| 作用域 | 已改变 | 漏洞存在于服务器中,但影响用户浏览器会话,跨越了安全边界 |
| 机密性 | 高 | 可窃取凭据、会话数据 |
| 完整性 | 低 | 可修改页面内容、进行 CSRF |
| 可用性 | 无 | 无直接可用性影响 |
CVSS 分数:7.4 (AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N)
[email protected] 并在 GitHub 安全公告(GHSA-6x3c-35h8-3h9f)中创建。未收到回复。