CVE-2026-41263Traefik是一个开源的HTTP反向代理和负载均衡器。在特定版本之前,其BasicAuth中间件存在一个时序侧信道漏洞。由于用于恒定时间比较的后备密钥变量总是解析为空字符串,导致比较过程发生短路,而非执行完整的bcrypt评估。攻击者可以通过测量认证响应时间的差异,区分有效用户名和无效用户名,从而实现对用户名的枚举。该问题已在后续版本中修复。
该漏洞源于Traefik在BasicAuth中间件实现中的逻辑缺陷。为了防止时序攻击,开发者通常会使用恒定时间算法来比较敏感数据(如哈希值)。然而,在受影响版本中,设计用于保存恒定时间后备密钥的变量总是解析为空字符串。当进行用户认证验证时,代码逻辑试图进行恒定时间比较,但由于该变量为空,导致比较操作在微秒级内立即短路返回,而不是执行预期的完整bcrypt哈希计算操作。这种差异造成了时序预言机。攻击者无需认证即可向目标发送大量包含不同用户名的BasicAuth请求。通过统计响应时间,如果响应时间较短,意味着比较过程发生了短路(用户不存在);如果响应时间较长,则意味着执行了完整的bcrypt计算(用户存在)。利用这一差异,攻击者可以逐步枚举出系统中的有效用户名。