CVE-2026-33312Vikunja是一个开源的自托管任务管理平台。在0.20.2至2.2.0之前的版本中,删除项目背景图片的API端点存在权限校验逻辑错误。该端点错误地检查了用户的读取权限而非更新权限,导致拥有只读权限的攻击者可以永久删除项目背景图片,破坏了数据的完整性和可用性。该漏洞已在2.2.0版本中修复。
该漏洞的根源在于Vikunja后端API对`DELETE /api/v1/projects/:project/background`接口的权限控制逻辑存在严重缺陷。正常的安全设计原则要求,删除资源或修改资源状态的操作必须验证用户是否拥有相应的修改权限(如`CanUpdate`或`CanDelete`)。然而,在受影响的版本中,开发人员错误地使用了仅用于读取操作的权限校验逻辑(`CanRead`)来授权删除请求。攻击者只需拥有目标项目的只读访问权限,即可构造并发送恶意的HTTP DELETE请求至该端点。由于服务器端的权限校验模型存在逻辑漏洞,请求会被错误地判定为合法,从而执行删除操作。这导致项目背景图片被永久移除,造成了典型的越权漏洞,不仅破坏了数据的完整性,也影响了系统的可用性。