CVE-2026-33668Vikunja是一个开源自托管任务管理平台。在0.18.0至2.2.1之前的版本中,存在严重的访问控制绕过漏洞。当用户账户被管理员禁用或锁定时,系统仅在本地登录和JWT令牌刷新路径强制执行状态检查。然而,API令牌、CalDAV基本认证和OpenID Connect这三种其他认证路径未验证用户状态,导致被禁用或锁定的用户仍可继续访问API并同步数据。该漏洞可能导致敏感信息泄露或数据被篡改。
该漏洞的根本原因在于系统认证逻辑的不一致性及中间件配置缺失。在受影响版本中,Vikunja仅在本地登录表单提交和JWT令牌刷新端点实施了严格的用户状态(禁用/锁定)检查。然而,在处理API令牌、CalDAV基本认证以及OpenID Connect回调时,系统仅验证了凭证的签名或密码正确性,却未在请求处理链中查询数据库以确认用户当前是否处于“禁用”或“锁定”状态。攻击者只需在账户被管理员禁用前获取有效的API Token或配置好CalDAV客户端,即便账户随后被锁定,仍可利用这些凭证持续发送API请求。由于服务器端缺少必要的身份后验证中间件,这些请求被正常处理,从而绕过了访问控制策略,导致未经授权的数据读取和修改。