🟠 高危 | CVE-2026-53593 — FreeScout is a free help desk and shared inbox bui...
🟠 【深度分析】高危安全漏洞:CVE-2026-53593
CVSS 评分: 高危(8.8)🟠 状态: Deferred 发布时间: 2026-07-20
🔍 技术细节速览
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-53593 |
| CVSS 评分 | 8.8 🟠 |
| 严重程度 | 高危 |
| CVSS 向量 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| CWE 分类 | CWE-434 |
| 发布时间 | 2026-07-20 |
| 最后更新 | 2026-07-21 |
| 状态 | Deferred |
| 数据来源 | security-advisories@github.com |
⚠️ CVSS 评分:8.8(高危)
向量:CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
漏洞概述
CVE-2026-53593 是开源帮助台系统 FreeScout(基于 Laravel 框架)中的一个高危漏洞。该漏洞源于文件上传黑名单不完整,未能阻止 .pht 扩展名的上传。攻击者(需拥有代理/客服账号)可以上传一个包含恶意 PHP 代码的 .pht 文件到 Web 可访问目录,在默认 Apache + libapache2-mod-php 部署环境下,服务器会执行该文件,从而实现远程代码执行,完全控制 Web 服务器进程(通常为 www-data 用户)。
此漏洞是 CVE-2025-48471 的修复绕过——原修复仅添加了 phtml/phar,但遗漏了 pht(以及 phtm、phps)。版本 1.8.224 已包含完整修复。
受影响组件与版本
| 组件 | 受影响版本范围 |
|---|---|
| FreeScout | < 1.8.224(所有低于此版本的部署) |
| 修复版本 | 1.8.224 及以上 |
环境要求(触发利用条件):
- 使用 Apache HTTP Server 并启用
mod_php(libapache2-mod-php) - 文件上传端点
/uploads/upload默认可用且代理用户可访问
漏洞原理分析
技术成因
FreeScout 通过 Helper::$restricted_extensions 定义了一个黑名单(denylist),用于阻止危险扩展名的文件上传。但在 1.8.224 之前的版本中,该黑名单未能覆盖 .pht 扩展名。
攻击链
- 认证要求:用户必须是已验证的**代理(agent)**才能访问上传接口
POST /uploads/upload(由SecureController@upload处理)。 - 上传点:文件被存储于
storage/app/public/uploads/目录,该目录通过/storage/uploads/URL 路径直接 Web 可访问。 - 文件无重命名:上传后文件保留原始扩展名(如
.pht)。 - Apache 默认配置:在标准 Debian/Ubuntu 等发行版的 Apache 配置中,通常存在如下
FilesMatch规则:
该规则匹配<FilesMatch ".+\.ph(ar|p[3457]?|t|tml)$">.pht(因为ph(ar|p[3457]?|t|tml)中的t对应.pht)。因此,当访问上传的.pht文件时,Apache 会调用mod_php将其作为 PHP 脚本执行。 - 代码执行:攻击者构造的
.pht文件包含 PHP webshell,通过 HTTP 请求即可在服务器上执行任意操作系统命令。
与 CVE-2025-48471 的关系
CVE-2025-48471 确认了类似的黑名单绕过(未包含 phtml 和 phar),但修复后未加入 pht。此漏洞直接绕过了之前的补丁,形成新的攻击面。
影响评估
根据 CVSS 向量分析:
| 维度 | 值 | 分析 |
|---|---|---|
| 攻击向量 (AV) | 网络 (N) | 攻击者无需物理接触,通过网络即可利用 |
| 攻击复杂度 (AC) | 低 (L) | 无需特殊技巧,仅需上传一个 .pht 文件 |
| 权限要求 (PR) | 低 (L) | 需要代理账号(通常可通过注册或泄露凭证获取),但无需要管理员权限 |
| 用户交互 (UI) | 无 (N) | 无需目标用户的任何操作 |
| 影响范围 (S) | 未改变 (U) | 漏洞仅影响目标组件本身,不扩散至其他系统 |
| 机密性 (C) | 高 (H) | 可读取服务器上任意文件(如数据库配置、用户数据) |
| 完整性 (I) | 高 (H) | 可篡改系统文件、植入后门 |
| 可用性 (A) | 高 (H) | 可执行拒绝服务操作(删除文件、耗尽资源) |
实际威胁
- 利用条件:拥有有效代理账号(通常是低权限的客服角色),且服务器使用默认 Apache + mod_php 配置。
- 攻击复杂度:极低,公开的 webshell 构造方法即可。
- 潜在后果:完全接管 Web 服务器,可能进而横向渗透内部网络。
修复建议
立即升级(推荐)
升级至 FreeScout 1.8.224 或更高版本。该版本已在 Helper::$restricted_extensions 中补全了 .pht 以及其他潜在危险扩展(如 .phtm、.phps)。
临时缓解措施(无法立即升级时)
禁用
.pht执行:在 Apache 配置中移除或拒绝.pht文件的执行权限。
例如,在网站配置中添加:<FilesMatch "\.pht$"> SetHandler none </FilesMatch>或使用
mod_security规则拦截.pht文件上传。限制上传目录执行权限:确保上传目录(
storage/app/public/uploads/)的.htaccess或 Apache 配置禁止 PHP 执行:php_flag engine off或使用:
<Directory /path/to/storage/app/public/uploads/> RemoveHandler .php .pht .phtml .phar .phps </Directory>审计现有文件:检查
/storage/uploads/目录中是否存在.pht、.phtm、.phps等可疑文件,并立即删除。
长期加固建议
- 将文件上传目录移出 Web 根目录,或使用随机文件名/哈希存储。
- 采用白名单机制(仅允许图片、文档等安全扩展)而非黑名单。
- 限制上传 API 的访问范围,仅开放给必要的角色(如管理员)。
- 定期更新 FreeScout 及依赖组件。
参考资料
| 类型 | 链接 |
|---|---|
| CVE 详情 | https://nvd.nist.gov/vuln/detail/CVE-2026-53593 |
| CWE-434 | https://cwe.mitre.org/data/definitions/434.html |
| FreeScout 官方仓库 | https://github.com/freescout-helpdesk/freescout |
| 安全公告(GitHub Advisory) | 待上游发布(当前数据来源为 security-advisories@github.com) |
注:CVE 状态标记为
Deferred,说明 NVD 尚未完成最终分析,但根据已有数据可确认漏洞存在且高危。建议所有受影响用户立即采取缓解措施。