本文使用的 Docker 镜像
发布日期: 2026 年 11 月 8 日
风险等级: 高危(High)起
漏洞编号: CVE-2026-123520 · CVE-2026-123522 · CVE-2026-123531
涉及镜像: vikunja/vikunja — 轩辕镜像 · Docker Hub
CVSS: CVE-2026-123520 / CVE-2026-123522 为 7.1(High);CVE-2026-123531 为 8.8(NVD Primary High;官方 GHSA-v579-5fwc-gr28 为 Low)
披露时间: NVD 于 2026 年 11 月 8 日集中发布;修复版 v2.7.1 于 2026 年 10 月 20 日发布
相关公告: v2.7.1 · Changelog · GHSA-hq66-9qg8-jwqg · GHSA-5q33-h98p-rgh9 · GHSA-v579-5fwc-gr28
一、漏洞概述
| 编号 | 要点 | CVSS |
|---|---|---|
| CVE-2026-123520 | 自 0.18.0 起,删除账号时 ensureProjectAdminUser 会把该账号能看到的只读共享项目提升为 admin/owner。团队所有者可创建 bot、加入团队后再经 bots 接口删除,从而接管只读共享项目并锁死原所有者 | 7.1 |
| CVE-2026-123522 | 自 0.22.0(webhook)起,已认证用户可向一次「空操作」的 Kanban bucket 移动请求注入伪造 task(task.id 为受害者任务、task.project_id 为自己的项目),使完整任务内容进入自己项目的 webhook,并可伪造 mention 通知 | 7.1 |
| CVE-2026-123531 | 自 1.0.0 起,向 /api/v1 列表接口传 page=0 可绕过 service.maxitemsperpage,一次拉回全部结果,造成无界 SQL、内存物化与逐行查询放大。官方 changelog 放在「让服务器倒下」一节;GHSA 严重级为 Low,本通告按 NVD Primary 3.1 8.8 列出 | 8.8(NVD) |
同批 NVD 另有多条 Medium / Low,均在 ≥2.7.1 一并修复,不单列。未见在野利用或进入 CISA KEV。
二、漏洞状态
统计截止: 2026 年 11 月 8 日(UTC+8)
| 项目 | 状态 |
|---|---|
| 漏洞细节 | 已公开(NVD、GHSA、changelog) |
| 官方补丁 | ≥ 2.7.1 |
| 镜像标签 | Hub 已核实 2.7.1、2.8.0。今天的 2 / latest 与 2.8.0 同 digest |
| CISA KEV | 未列入 |
三、影响范围
通过官方镜像部署、且低于 2.7.1 的 Vikunja(含 Hub 上的 2.7.0 及更早标签)。暴露面是对已登录或可自注册用户开放的 HTTP API:
- 123520:需具备团队所有者权限并删除 bot 账号
- 123522:需能对自己的项目发起 Kanban 移动并接收 webhook
- 123531:在允许自注册时可被低权限账号反复调用
page=0
四、修复建议
升到 ≥ 2.7.1。当前建议固定 2.8.0。不要把 latest 写进长期配置。
bashdocker pull docker.xuanyuan.run/vikunja/vikunja:2.8.0
bashdocker pull docker.xuanyuan.run/vikunja/vikunja:2.7.1
升级时注意官方行为变化:API token 权限键已重命名(既有 token 会迁移)、访问日志改为写路由模板而非原始 URI、Kanban bucket 与 migration.maxitems 设上限等。
Docker Hub: vikunja/vikunja
轩辕镜像: vikunja/vikunja
五、临时缓解措施
在升级之前:限制自注册与团队所有者权限;审查 webhook 与 bots 接口对外暴露;对列表 API 做速率限制。这不能代替 2.7.1 及以上。
六、与轩辕镜像用户的相关说明
轩辕镜像提供的是镜像加速与拉取服务,不替代 Vikunja 的版本修复。请固定 2.8.0(或至少 2.7.1)。今天的 latest 与 2.8.0 是同一份镜像,加速拉取 latest 以后可能不再锁定在这个版本。基于更旧标签二次构建的,要改基础标签后重新构建。
七、参考链接
- NVD:CVE-2026-123520 · CVE-2026-123522 · CVE-2026-123531
- GitHub:v2.7.1 · GHSA-hq66-9qg8-jwqg · GHSA-5q33-h98p-rgh9 · GHSA-v579-5fwc-gr28
- Changelog:vikunja 2.7.1
- Docker Hub:vikunja/vikunja
- 轩辕站内镜像页:vikunja/vikunja
阅读原文
轩辕镜像安全团队
2026 年 11 月 8 日
评论交流
免责声明
本博客文章所提供的内容、技术方案、配置示例及部署指南等信息,仅供学习交流和技术参考使用。文章内容基于发布时的技术环境和版本信息编写,可能因时间推移、技术更新或环境差异而存在不适用的情况。
文中提及的第三方镜像由其原维护者自行维护与更新,轩辕镜像不负责相关镜像的维护。如镜像涉及版权争议或违法违规情形,请直接联系该镜像维护者处理,相关事宜与轩辕镜像无关。
用户在参考本博客内容进行部署操作前,应当充分了解相关技术风险,并建议在测试环境中进行充分验证和测试,确认无误后再考虑在生产环境中使用。生产环境部署前,请务必进行数据备份,并制定相应的回滚方案。
用户因使用本博客内容进行部署操作而产生的任何损失、数据丢失、系统故障、安全风险或其他问题,均由用户自行承担全部责任。轩辕镜像官方不对因使用本博客内容而产生的任何直接或间接损失承担责任。
本免责声明的最终解释权归轩辕镜像官方所有。
