首页 网络安全 正文

FreeScout中的安全漏洞CVE-2026-48812

摘要

栋科技漏洞库关注到FreeScout在1.8.221版本之前允许未经身份验证访问旧版附件文件,追踪为CVE-2026-48812,CVSS 3.X评分7.5。

FreeScout 是基于PHP Laravel开发、开源可私有化部署邮件客服工单系统,采用AGPL3.0协议,模块化扩展机制,基础功能永久免费。

一、基本情况

FreeScout 采用全响应式页面,手机浏览器可处理工单,数据完全存储在自有服务器,无第三方数据托管,适合重视客户隐私的企业。

FreeScout中的安全漏洞CVE-2026-48812

FreeScout 对标商用工具 Zendesk、Help Scout,适合中小企业售后客服、网站咨询工单、技术支持团队、跨境店铺邮件客服等场景。

栋科技漏洞库关注到FreeScout在1.8.221版本之前允许未经身份验证访问旧版附件文件,追踪为CVE-2026-48812,CVSS 3.X评分7.5。

二、漏洞分析

该漏洞源于FreeScout 相关版本附件下载路由针对 token_type 为 1(旧版令牌类型 TOKEN_TYPE_LEGACY)的附件会跳过令牌校验。

这意味着该接口无身份认证且文件路径可预测,未认证的远程攻击者无需有效令牌或会话,就能下载所有旧版 FreeScout 生成的附件。

附件下载接口定义在 routes/open.php,未挂载任何鉴权中间件,公网可直接访问;

对应控制器文件为 app/Http/Controllers/OpenController.php,核心方法 downloadAttachment ()。

令牌校验逻辑存在逻辑缺陷:

if ($token != $attachment->getToken() && $attachment->token_type != Attachment::TOKEN_TYPE_LEGACY) {
    return \Helper::denyAccess();
}

代码使用短路与(&&)判断,

token_type=1 时,$attachment->token_type != Attachment::TOKEN_TYPE_LEGACY 结果为 false

整个校验条件直接判定为不成立,系统会无条件放行访问,完全忽略令牌合法性。

系统引入 SHA256 令牌后新生成的附件使用 TOKEN_TYPE_SHA256=3,不受该漏洞影响;

数据库中 token_type=1 的历史遗留附件全部存在泄露风险。

任意附件的存储目录结构均可通过附件数据库 ID 固定推算得出:

$hash = md5($id);
// First numeric character in hash -> dir level 1
// Second numeric character in hash -> dir level 2
// Sequential counter (starting at 1) -> dir level 3

攻击者只需枚举附件ID(自增整型数字),就能推算出任意附件的完整存储路径。

三、POC概念验证

(一)以下步骤演示无需身份认证、无需合法令牌即可访问旧版附件:

步骤1、查找或枚举token_type=1的附件ID。已升级的系统可执行数据库查询:

SELECT id, file_dir, file_name FROM attachments WHERE token_type = 1 LIMIT 10;

步骤2、计算文件路径。附件ID为N时:

管理员已设置登录后刷新可查看

预期响应:

HTTP/1.1 200 OK
Content-Type: text/plain

<file contents>

(二)漏洞危害

所有由旧版本升级而来的FreeScout系统中,遗留附件文件可被未认证攻击者任意读取。

FreeScout的附件通常包含客户上传资料(合同、发票、截图、个人隐私信息)以及客服人员上传文件。

(三)推荐修复方案

1、移除针对旧版令牌类型的放行绕过逻辑,强制所有附件(无论新旧)都必须完成令牌合法性校验:

if ($token != $attachment->getToken()) {
    return \Helper::denyAccess();
}

2、另一种修复方案:

执行数据库迁移脚本,重新计算并更新所有遗留附件记录的 token_type 与 token 值,使现有校验逻辑能够对全部记录生效。

四、影响范围

FreeScout<1.8.221

五、修复建议

FreeScout ≥ 1.8.221

六、参考链接

管理员已设置登录后刷新可查看



扫描二维码,在手机上阅读
评论
更换验证码
友情链接