---
id: "CVE-2026-123518"
page: "https://infrastack.ai/live/CVE-2026-123518"
kind: "vulnerability"
aliases: ["CVE-2026-123518"]
title: "Vikunja: task can be moved into another project's kanban bucket"
severity: "medium"
cvss: 5.3
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["kanban", "package", "self-hosted", "vikunja"]
not_affected_if: ["single-project-users", "version-2.7.1-or-later"]
published_at: "2026-11-08T02:16:40+00:00"
first_seen_at: "2026-11-08T02:21:09+00:00"
updated_at: "2026-11-08T02:25:19+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-123518", "first_seen_at": "2026-11-08T02:21:09+00:00"}]
exploit_sources: []
---

# Vikunja: task can be moved into another project's kanban bucket

Link for people: https://infrastack.ai/live/CVE-2026-123518 (this .md is for agents)

Vikunja before 2.7.1 checks write access to a bucket's project and to the task separately, but never checks that both belong to the same project. A signed-in user with write access to two projects can move a task into a kanban bucket in a project they do not control, which can change that task's done state.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed Vikunja version; `2.7.1` or later is not affected by this entry.
- Look for users who hold write access to more than one project on a self-hosted instance.

## Fix

- Vikunja: move to `2.7.1` or later (per the NVD entry's product range).

## Timeline

- 2026-11-08T02:21:09+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-123518

## Documents

- [advisory] Vendor advisory: github.com https://github.com/go-vikunja/vikunja/security/advisories/GHSA-w64q-7p4m-j8g8
- [advisory] Third-party advisory: www.vulncheck.com https://www.vulncheck.com/advisories/vikunja-before-2.7.1-missing-authorization-in-kanban-task-bucket-move

## From the sources

Vikunja before 2.7.1 contains an incorrect authorization vulnerability in TaskBucket.CanUpdate, which checks write access to the bucket's project and to the task separately but never verifies that both belong to the same project. Authenticated users with write access to two projects can move a task into another project's kanban bucket. This persists cross-project task_buckets rows that count toward bucket limits and, for done buckets, toggle the task's done state.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
