CVE-2026-23849CVE-2026-23849是File Browser项目中的一个安全漏洞。该漏洞存在于JSONAuth.Auth函数中,由于认证逻辑存在缺陷,允许未认证攻击者通过测量/api/login端点的响应时间来枚举系统中的有效用户名。File Browser是一个提供文件管理界面的工具,可用于上传、删除、预览、重命名和编辑文件。此漏洞影响2.55.0之前的所有版本,攻击者无需任何权限即可利用此漏洞获取系统用户名信息,为进一步攻击奠定基础。该漏洞的CVSS评分为5.3,属于中等严重程度,主要影响系统的机密性。
该漏洞的根本原因在于认证逻辑中的"短路"评估实现。当用户尝试登录时,系统首先查询数据库验证用户名是否存在。如果用户名不存在,函数立即返回错误响应;如果用户名存在,则继续使用bcrypt算法验证密码(users.CheckPwd),这是一个计算密集型操作,设计上故意较慢以防止暴力破解。由于这两种执行路径的处理时间存在显著差异,攻击者可以通过多次测量登录请求的响应时间来推断某个用户名是否存在于系统中。具体而言,有效用户名的响应时间通常比无效用户名的响应时间更长,因为bcrypt哈希计算需要额外的处理时间。攻击者可以构建自动化脚本,对常见用户名列表进行时序分析,从而枚举系统中的有效账户。此漏洞无需任何特殊权限即可利用,攻击向量为网络。