🔴 严重 | CVE-2026-34038 — Coolify is an open-source and self-hostable tool f...
🔴 【深度分析】严重安全漏洞:CVE-2026-34038
CVSS 评分: 严重(9.9)🔴 状态: Received 发布时间: 2026-07-06
🔍 技术细节速览
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-34038 |
| CVSS 评分 | 9.9 🔴 |
| 严重程度 | 严重 |
| CVSS 向量 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H |
| CWE 分类 | CWE-78 |
| 发布时间 | 2026-07-06 |
| 最后更新 | 2026-07-06 |
| 状态 | Received |
| 数据来源 | security-advisories@github.com |
好的,作为一名资深网络安全分析师,我将基于您提供的 NVD 数据,生成一篇关于 CVE-2026-34038 的深度分析文章。
漏洞深度分析:CVE-2026-34038 - Coolify 远程命令注入漏洞 (CVSS 9.9)
🚨 危害等级:严重 (Critical)
CVSS v3.1 评分:9.9
攻击向量 (AV): 网络 (N)
攻击复杂度 (AC): 低 (L)
所需权限 (PR): 低 (L)
用户交互 (UI): 无 (N)
影响范围 (S): 已变更 (C)
机密性、完整性、可用性影响 (C/I/A): 高 (H/H/H)
漏洞概述
CVE-2026-34038 是一个影响 Coolify 平台的严重远程命令注入漏洞。Coolify 是一款流行的开源、可自托管的“平台即服务(PaaS)”工具,用于管理服务器、应用和数据库。
该漏洞存在于版本 4.0.0-beta.469 之前的 Coolify 中。攻击者只需要具备对某个应用的低权限写权限(如开发者角色),即可通过操纵应用部署过程中的特定字段(如 dockerfile_location 和部署命令),实现在服务器上执行任意命令。这可能导致攻击者完全控制服务器、窃取敏感环境变量(如数据库密码、API 密钥),并对整个基础设施构成严重威胁。
受影响组件与版本
- 受影响组件: Coolify 核心应用
- 受影响版本: 4.0.0-beta.469 之前的所有版本(包含 beta 版)
- 安全版本: 4.0.0-beta.469 及之后版本
漏洞原理分析
该漏洞属于 OS 命令注入(CWE-78) 类型。其根本原因在于 Coolify 在处理用户提供的用于应用部署的参数时,未能进行充分的 sanitization(消毒)或验证。
分析 CVSS 向量和漏洞描述可以发现:
- 攻击入口:
AV:N/PR:L/UI:N表明攻击者可以从网络发起攻击,不需要用户交互,但需要 低权限(PR: L)。在 Coolify 的权限模型中,拥有某个应用“写权限”的用户(例如可以编辑 Dockerfiles 或部署配置的开发人员)即满足此条件。 - 攻击向量: 漏洞描述明确指出漏洞存在于
dockerfile_location字段和部署命令中。这意味着攻击者可以在这些通常由用户自由定义的文本域中注入操作系统命令。例如:- 在
dockerfile_location路径中注入命令,如/path/to/Dockerfile && malicious_command。如果应用程序没有验证该字段是否只包含合法路径字符,而是直接将其拼接到一个 shell 命令中(例如docker build -f $DOCKERFILE_LOCATION ...),就会导致命令执行。 - 在部署脚本的“pre-deploy”或“post-deploy”命令中恶意构造 shell 命令。
- 在
- 攻击效果: 注入成功后,攻击者在
S:C环境下执行命令。这意味着注入的代码不仅影响部署容器,还可能影响宿主服务器或 Coolify 平台的整个控制平面。攻击者可以读取服务器上的文件(如.env文件)、修改配置、甚至通过部署日志中的回显来 exfiltrate 数据。
现有信息不足以完全确定注入点发生的具体代码上下文(例如,是在哪个函数或模块中拼接了用户输入),但所有迹象都指向了在处理“应用部署配置”时的字符串拼接操作。
影响评估
此漏洞的威胁等级被评估为 严重 (Critical),CVSS 9.9 分,理由如下:
- 利用难度极低 (AC: L): 攻击者不需要复杂的攻击技巧。只需在 Web 界面的文本框中输入带有 shell 元字符的字符串即可。
- 权限要求低 (PR: L): 攻击者无需管理员权限,仅需应用级别的写权限,这在拥有多个开发者的团队中是常见角色。
- 无需用户交互 (UI: N): 攻击者发起攻击时,无需其他管理员或用户点击链接或执行操作。
- 影响范围扩大 (S: C): 漏洞允许从“应用”环境越狱至 Coolify 的“服务器”或“平台”环境,产生连锁反应。
- 后果严重 (C/H/I/A: H):
- 信息泄露 (C: H): 攻击者可窃取所有应用的敏感环境变量、数据库凭据、API 密钥,以及 Coolify 本身的配置信息。
- 完整性破坏 (I: H): 攻击者可以篡改 Coolify 配置、修改其他应用代码、植入后门。
- 可用性破坏 (A: H): 攻击者可以删除或破坏整个服务器上的数据、关闭服务或植入勒索软件。
潜在后果: 整个 Coolify 实例及其管理的所有应用、数据库和服务器都可能被完全攻陷。这是一个能够直接导致供应链攻击或内部网络渗透的关键漏洞。
修复建议
1. 立即升级 (首选方案)
- 根本解决方案: 将所有 Coolify 实例升级到 4.0.0-beta.469 或更高版本。这是官方已确认的修复版本。
- 操作步骤: 运行
coolify update命令或通过界面进行升级。升级后请重启所有服务和已部署的应用。
2. 临时缓解措施 (在无法立即升级时)
由于该漏洞非常严重,强烈建议立即采取升级措施。如果无法立即升级,可考虑以下缓解措施,但并不能完全消除风险:
- 严格限制用户权限: 审查并最小化具有“应用写权限”的用户数量。仅信任的、高级别的开发人员应拥有此权限。
- 启用审计日志: 检查 Coolify 的审计日志,查找是否有异常的部署配置修改(如
dockerfile_location中包含了;、|、&、$等 shell 元字符)。 - 暂停非必要服务: 如果可能,暂停不重要的应用或服务,降低攻击面。
- 网络隔离: 确保 Coolify 服务器处于严格的网络隔离环境中,限制其出站流量,以防止数据外泄。但这无法阻止内部横向移动。
⚠️ 警告: 临时缓解措施无法解决根本问题(输入验证缺失)。任何拥有写权限的用户(即使是受信任的)都有可能无意或恶意触发该漏洞。
参考资料
- NVD 官方详情页: https://nvd.nist.gov/vuln/detail/CVE-2026-34038
- CWE-78 详情: OS Command Injection - CWE-78 (已知)
- Coolify 官方发布说明: 建议查看 Coolify 的 GitHub 仓库或官方公告,了解 4.0.0-beta.469 版本的具体修复细节。 注:由于数据源限制,无法直接提供链接,但升级时请参考官方渠道。