CVE-2026-39321Parse Server是一个可部署在任何能运行Node.js基础设施上的开源后端。在9.8.0-alpha.6和8.6.74版本之前,其登录端点存在安全漏洞。由于服务器响应时间取决于提交的用户名或电子邮件是否存在于数据库中,攻击者可以利用这一差异进行攻击。当用户未找到时,服务器立即响应;当用户存在但密码错误时,由于运行bcrypt比较,会显著增加延迟。这种时序差异允许未经身份验证的攻击者枚举有效的用户名。
该漏洞的原理基于时序攻击。在受影响的Parse Server版本中,登录逻辑处理用户不存在和密码错误的路径不一致。当请求的用户名在数据库中不存在时,系统快速返回错误,耗时极短。相反,当用户名存在时,系统会执行bcrypt哈希比对。bcrypt算法设计为计算密集型,旨在减缓暴力破解速度,这使得密码比对过程产生可被测量的显著延迟。攻击者通过向登录接口发送大量包含不同用户名的请求,并精确测量响应时间,利用统计学方法区分“用户不存在”的快速响应和“密码错误”的慢速响应。由于无需认证且无需用户交互,攻击者可远程遍历常见用户名,从而确认系统中存在的有效账户。