Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain read-only project share link
-
DeliveryAuthenticate v2 API with share token
-
ExploitQuery project users endpoint
-
InstallDump project membership list
-
C2Query global user search endpoint
-
ExecuteConfirm valid usernames
-
ImpactTarget accounts for phishing/credential attacks
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK
2 techniques across 2 tactics: Collection, Discovery The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires possession of a valid read-only link-share token for a project on the target Vikunja instance (the CVSS vector's PR:L reflects that low-privileged, token-bearing context rather than an anonymous request), plus network reachability to the v2 API endpoints. The instance must be running a Vikunja version before 2.6.0, and the affected routes - the project users endpoint and the global user search endpoint - must be reachable by the token holder. What limits real-world exploitation: no valid share token means no access at all, so instances with public link sharing disabled, with link shares restricted to trusted collaborators, or with tokens that have expired/been revoked are not exploitable in practice; the impact is confined to confidentiality (usernames and project membership), is not automatable into data modification or code execution, and the enumeration is only useful as a precursor to other attacks. |
| Impact | CVSS 3.1 scores this 4.3 with AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N - network-reachable and trivial to execute, but gated behind a low-privilege prerequisite and producing only limited confidentiality impact with no integrity or availability effect. The PR:L metric is the decisive real-world constraint: an attacker must already possess a valid read-only share token, which materially narrows the population of viable attackers to those who received, intercepted, or found a leaked/shared link. No EPSS score, no CISA KEV listing, and no confirmed POC were supplied, so there is no signal of active or widespread exploitation; this should be treated as a hygiene/defense-in-depth patch rather than an emergency. The main risk is not the disclosure itself but its use as reconnaissance: confirmed usernames and project membership lists feed credential-stuffing, password-spray, and targeted phishing campaigns. Note that the vulnerability class (user enumeration) frequently evades detection because the requests are well-formed and authorized at the token level, so detection depends on log volume anomalies rather than error responses. Data gaps: EPSS percentile, exploit maturity, and whether the share token alone (without any account) is sufficient are not independently confirmed from the supplied references. |
| Exploit ScenarioDerived | An attacker obtains a read-only project share link - through a leaked URL, a public board, a chat message, or a shared browser session - and replays its token against the Vikunja v2 API. Using the project users endpoint they dump the membership list of projects visible to that token, then query the global search endpoint repeatedly to confirm which guessed usernames exist on the instance. The confirmed account inventory is then used for credential stuffing, password spraying, or convincing phishing that references the victim's real project context. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 15, 2026
Missing authorization checks in Vikunja's v2 API allow anyone holding a read-only project link-share token to enumerate users through the project users endpoint and to confirm arbitrary usernames exist via the global search endpoint. All Vikunja deployments before 2.6.0 are affected; the flaw is a limited-confidentiality information disclosure (CVSS 4.3, PR:L because a share token is required) and is fixed in 2.6.0. No public exploit code or CISA KEV entry was present at time of analysis.
RemediationAI
Upgrade to Vikunja 2.6.0 or later - this is the vendor-released patch that introduces proper scope validation for link-share tokens in the v2 API (advisory: https://github.com/go-vikunja/vikunja/security/advisories/GHSA-vfxw-3x8p-2vjr). If immediate upgrade is not possible, revoke and re-issue all existing project link shares so that any previously distributed token cannot be reused against the vulnerable code path, and review share tokens for exposure (public wikis, chat logs, tickets, search-engine caches) - the trade-off is that revoking links breaks legitimate read-only collaborators until new links are distributed. As a shorter-term containment measure, block or rate-limit external access to the v2 API user-search and project-users routes at the reverse proxy (e.g. deny /api/v2/users* and the project users sub-resource from untrusted networks) - this preserves the core task features but will break API-based integrations and any legitimate use of the v2 search endpoint. Finally, tighten logging and alerting on user-enumeration patterns (rapid sequential username lookups from a single token/IP) and, where supported, set link shares to expire so tokens have a bounded blast radius.
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 a self-hosted, Go-based task and project management platform (go-vikunja/vikunja) that exposes both a legacy API and a newer v2 API. Link sharing lets a project owner mint a token that grants read-only access to a single project without a real account. In versions before 2.6.0, the v2 API user-search code paths did not properly bind that token to its authorized scope: the per-project users listing returned membership data outside the shared project, and the global user search endpoint responded to queries made with the low-privilege share token, turning both into username-oracle endpoints. The root cause maps to CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor) - an authorization/scope-validation gap rather than a memory-safety bug. The CPE range cpe:2.3:a:go-vikunja:vikunja:*:*:*:*:*:*:*:* with EUVD's 'vikunja 0 <2.6.0' confirms the entire release history up to the 2.6.0 fix is in scope.
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:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Network-reachable and low complexity, but exploitation requires a valid low-privilege share token (PR:L) and yields only limited confidentiality loss with no integrity or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Vikunja versions before 2.6.0 fail to properly validate link-share tokens in the v2 API user search endpoints. Attackers with a read-only share link can enumerate project users via the projects endpoint and confirm arbitrary usernames exist via the global search endpoint.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Cross-tenant information disclosure in the self-hosted task manager Vikunja (0.24.0 through 2.3.0) lets a holder of any
Weak password policy in Vikunja task management before 2.0.0 allows users to set trivially guessable passwords. PoC avai
Principal type confusion in Vikunja (versions 0.22.0-2.3.0) allows an authenticated low-privilege attacker to fully cont
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's OIDC callback handler issues a full JWT to any successfully matched user without checking whether that account
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,
EUVD-2026-78652
GHSA-vcgv-7rvm-m3vp
NVD
CVE.org
EPSS
Exploit-DB