Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain any project share link
-
DeliveryCall task endpoint with cross-tenant view ID
-
ExploitServer loads view without re-authorization
-
ExecutionRead other tenants' bucket titles and creator objects
-
ImpactEnumerate valid view IDs via 404 oracle
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | The primary bucket-disclosure attack requires the attacker to hold a valid project share-link token for any project on the instance (Vikunja's link-share feature must be enabled and at least one share link must exist); the attacker then supplies a cross-tenant {view} ID in the path of GET /api/v1/projects/{project}/views/{view}/tasks. The lower-impact existence oracle (404 vs non-404) additionally works for any ordinary authenticated user. Exploitation is LIMITED to metadata: only bucket titles and created_by user objects are exposed, task contents remain scoped to the share's own project, and no write access is possible. Affected only on versions 0.24.0 through 2.3.0. |
| Impact | Signals conflict sharply with the headline severity. The published CVSS 4.0 vector (9.3, AV:N/AC:L/PR:N/UI:N/VC:H/VI:H/VA:H) implies unauthenticated total compromise, but the description contradicts the impact metrics: it is a read-only disclosure limited to bucket titles and creator user objects, explicitly noting task contents are NOT disclosed and there is no write or availability impact - so VI:H/VA:H appear overstated and the true impact is confidentiality-only of low-sensitivity metadata. PR:N is also questionable because the primary bucket-read requires possession of a valid project share-link token (a low-privilege credential); only the existence oracle is reachable by any ordinary authenticated user. There is no KEV listing and no POC reference, so no evidence of active or automated exploitation. Realistically this is a legitimate multi-tenant isolation bug worth patching, but the actual risk is materially lower than a 9.3 - closer to a low/medium confidentiality leak - and the high score should be treated with skepticism pending vendor clarification. |
| Exploit ScenarioDerived | An attacker obtains any project share link for a target Vikunja instance (e.g. a public or leaked link), then issues GET /api/v1/projects/{shareProject}/views/{view}/tasks while substituting {view} with view IDs belonging to other tenants' projects. Because the view is never re-authorized, the response returns those tenants' kanban bucket titles and creator user objects (username, name, id), and the 404-versus-non-404 behavior lets the attacker enumerate which project/view IDs exist. No public POC is referenced, but the attack requires only standard HTTP requests. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 02, 2026
Cross-tenant information disclosure in the self-hosted task manager Vikunja (0.24.0 through 2.3.0) lets a holder of any project share link read kanban bucket records - bucket titles and the full created_by user object (username, name, id) - belonging to other tenants' project views, because the task-collection endpoint loads the view from the attacker-controlled URL path without re-authorizing it. The same missing pre-authorization check yields a project/view-ID existence oracle (404 vs non-404) usable by link shares and ordinary authenticated users. No public exploit identified at time of analysis; fixed in 2.4.0.
RemediationAI
Vendor-released patch: upgrade to Vikunja 2.4.0, which re-validates the requested view against the caller's authorization before loading it. If an immediate upgrade is not possible, restrict who can create and distribute project share links and revoke/rotate existing link-share tokens to shrink the population of potential attackers, and consider disabling link sharing entirely if the feature is not required - the trade-off is loss of legitimate external collaboration via shared links. Network-level restriction of the task-collection endpoint or the API to trusted networks reduces exposure but breaks legitimate remote/API clients. See the vendor advisory GHSA-rj9j-8772-4h6c (https://github.com/go-vikunja/vikunja/security/advisories/GHSA-rj9j-8772-4h6c) and the VulnCheck advisory (https://www.vulncheck.com/advisories/vikunja-broken-object-level-authorization-via-link-share-token) for full guidance.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Vikunja is an open-source, self-hosted to-do/project-management application (Go backend, tracked under CPE cpe:2.3:a:go-vikunja:vikunja). The flaw is CWE-639, Authorization Bypass Through User-Controlled Key: the endpoint GET /api/v1/projects/{project}/views/{view}/tasks scopes task data to the share's own project, but the {view} identifier is taken from the request path and used to load a project view object without verifying the caller is entitled to that view. Vikunja's kanban 'views' organize tasks into buckets, and the bucket records (including embedded creator user objects) are returned when the view is loaded, so the object-level authorization gap on the view parameter leaks metadata from views the caller was never granted.
Know when Vikunja gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Requires a low-privilege share-link token (PR:L) over the network with low complexity; impact is read-only leak of low-sensitivity metadata, so C:L and I/A:N, unlike the input's VI:H/VA:H.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
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.
Executive ViewAI
Vikunja (versions 0.24.0-2.3.0) contains a critical multi-tenant isolation vulnerability allowing any project share link holder to read kanban records and user details from other tenants' projects. This cross-tenant data disclosure exposes customer information across organizational boundaries, violating fundamental data separation assumptions. Immediate patching to version 2.4.0 is required to restore tenant isolation.
Apply vendor patch: Upgrade Vikunja to version 2.4.0 or later immediately. During deployment, disable project share link functionality if operationally feasible to reduce exposure window.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Weak password policy in Vikunja task management before 2.0.0 allows users to set trivially guessable passwords. PoC avai
Stored cross-site scripting (XSS) in Vikunja prior to version 2.0.0 allows authenticated attackers to steal authenticati
Vikunja before version 2.0.0 contains a path traversal vulnerability in its backup restoration function that fails to va
Vikunja is an open-source self-hosted task management platform. [CVSS 6.1 MEDIUM]
Business logic vulnerability in Vikunja task management platform before 2.1.0 allows incomplete resource cleanup, potent
Instance-wide data breach in Vikunja before 2.2.1 lets remote attackers exfiltrate and destroy every file attachment acr
Vikunja instances before 2.6.0 expose CalDAV BasicAuth endpoints (/dav, /.well-known, and /feeds) that are not covered b
Vikunja versions before 2.6.0 ship authentication endpoints under /api/v2 (login, register, password-reset, and OAuth to
Vikunja prior to 2.6.0 leaks the secret hash that backs a project's link shares through its single-share read endpoint,
Principal type confusion in Vikunja (versions 0.22.0-2.3.0) allows an authenticated low-privilege attacker to fully cont
Privilege escalation in Vikunja 2.3.0 allows a user who holds a narrowly scoped API token (permissions {"oauth":["author
Plaintext storage of password-reset, email-confirmation and account-deletion tokens in Vikunja prior to 2.4.0 allows any
EUVD-2026-51992
GHSA-p4r4-8cxw-pjx7
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB