CVE-2026-68582 · GHSA-rj9j-8772-4h6c
Vikunja: Link-share token reads any tenant's kanban buckets and enumerates usernames/IDs instance-wide (BOLA)
- Risk score
- 53/100
- CVSS
- 6.5 v3.1
- Exploit chance (30 days)
- 0.3%
- Published
- 2 Aug 2026
Open in the live forecast Today's forecast
What to know
- What it is
- Vikunja versions >= 0.24.0 and <= 2.3.0 contain a broken object level authorization (BOLA) vulnerability in the task-collection endpoint (GET /api/v1/projects/{project}/views/{view}/tasks). The endpoint loads the requested project view from the URL path without verifying the caller is authorized for it. For a link-sha…
- Affected
- code.vikunja.io/api (go) >= 0.24.0, <= 2.3.0
- Fix
- Upgrade code.vikunja.io/api to 2.4.0 or later.
- Exploitation
- Public proof of concept
Why it is Yellow
- CVSS 6.5 medium
- Public exploit or proof of concept referenced
- On your watchlist: Go
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| code.vikunja.io/api | go | >= 0.24.0, <= 2.3.0 | 2.4.0 |
References
- https://github.com/advisories/GHSA-rj9j-8772-4h6c
- https://github.com/go-vikunja/vikunja/security/advisories/GHSA-rj9j-8772-4h6c
- https://nvd.nist.gov/vuln/detail/CVE-2026-68582
- https://github.com/go-vikunja/vikunja/releases/tag/v2.4.0
- https://www.vulncheck.com/advisories/vikunja-broken-object-level-authorization-via-link-share-token
- https://github.com/advisories/GHSA-rj9j-8772-4h6c
Original description
Vikunja versions >= 0.24.0 and <= 2.3.0 contain a broken object level authorization (BOLA) vulnerability in the task-collection endpoint (GET /api/v1/projects/{project}/views/{view}/tasks). The endpoint loads the requested project view from the URL path without verifying the caller is authorized for it. For a link-share token holder, the task scope is pinned to the share's own project, but the view is taken from the attacker-controlled path and never re-validated. As a result, a holder of any project share link can read any other tenant's kanban bucket records — bucket titles and the full created_by user object (username, name, id) — for every view in the instance. The same missing pre-authorization view load also creates a project/view-ID existence oracle (404 vs. non-404) usable by link shares and ordinary authenticated users. Task contents remain constrained to the share's own project and are not disclosed. Fixed in 2.4.0.
Last activity 9 Oct 2026. Patch Forecast updates every hour.