CVE-2024-21635CVE-2024-21635是Memos笔记服务中的一个高危安全漏洞,CVSS评分7.5。Memos是一款隐私优先的轻量级笔记服务,使用访问令牌(Access Tokens)来认证应用访问。该漏洞的核心问题在于:当用户更改密码时,系统未能自动撤销现有的访问令牌,导致即使密码已更新,攻击者仍可使用之前获取的有效访问令牌持续访问受害者账户。这一设计缺陷严重影响了系统的安全性,因为用户通常认为更改密码后账户就安全了,但实际上攻击者仍然保持访问权限。此外,访问令牌列表中的描述信息过于通用,使得用户难以识别和定位恶意令牌。由于官方尚未发布修补版本,所有使用0.18.1及以下版本的用户都面临账户被长期入侵的风险。
Memos在0.18.1及更早版本中实现了访问令牌(Access Token)认证机制,用于支持多设备登录和第三方应用集成。然而,当用户通过标准流程更改账户密码时,系统仅更新密码数据,而保留了之前生成的所有访问令牌及其关联的认证会话。这种设计缺陷源于系统未将密码哈希作为访问令牌验证的必需条件,导致即使密码已更改,令牌仍可通过验证。攻击者获取有效访问令牌后,无论账户密码如何变更,都能维持对受害者数据的访问权限。技术上,访问令牌的生成和验证流程未绑定密码状态,缺少密码变更时的令牌撤销机制。系统应实现:当检测到密码更新事件时,自动遍历并使该用户的所有现有访问令牌失效,迫使其在所有设备上重新认证。