关键信息 漏洞详情 标题: Account Takeover via Password Reset Token Reuse CVE ID: CVE-2026-28268 CVSS 评分: 9.8 / 10 严重性: Critical 描述 摘要: - 由于密码重置机制中的逻辑错误,攻击者可以拦截密码重置令牌并在任何时候进行持久的账户接管,绕过标准的身份验证控制。 - 两个主要问题:密码重置未正确无效及令牌清理任务中的比较运算符错误。 危险程度 CVSS v3 指标: - 攻击向量: Network - 攻击复杂度: Low - 特权要求: None - 用户交互: None - 范围: Unchanged - 机密性、完整性、可用性影响均被列为 High。 影响 持续账户接管: - 攻击者可以无限次重置密码。 缓解措施绕过: - 用户即使发现并更改密码,攻击者依然可用旧令牌立即重置。 无限攻击窗口: - 因清理机制失效,令牌永久有效,长期被利用。 缓解措施 1. 在使用后立即失效密码重置令牌: - 更新 函数以在密码成功重置后删除特定令牌。 2. 修正清理逻辑: - 修正 中的 SQL 查询,针对创建时间早于截止时间的令牌执行删除。 漏洞代码细节 密码重置未失效 (pkg/user/user_password_reset.go): - 函数 成功更新密码但未删除原始密码重置令牌。 清理任务中的比较倒置 (pkg/user/token.go): - 清理任务使用 选择了错误的令牌,导致新令牌被删除而旧令牌永不过期。