Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain valid link-share JWT
-
DeliveryEnumerate link-share principal IDs
-
ExploitIdentify collision with target users.id
-
ExecutionCraft API request with link-share token
-
PersistBypass type-guard-absent permission check
-
ImpactExecute privileged action (remove user, delete bot, read roster)
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 | Exploitation requires the attacker to possess a valid link-share JWT for the target Vikunja instance, which is obtainable by anyone who has received a shared project or task link - no registered user account is needed. Successful privilege escalation further requires that a LinkSharing principal's assigned integer ID collides with the integer ID of a target user in the users table, a condition that depends on the relative ordering of autoincrement sequences and grows more feasible as the number of link-share tokens and users grows. The three vulnerable permission-check paths must be reachable via the API endpoints for team membership removal, bot-user enumeration/deletion, and team roster reading. Exploitation is limited by: the AC:H/AT:P CVSS assessment indicating collision is not trivially guaranteed; the requirement for a legitimately issued link-share JWT (not forged from nothing); and the fact that only the specific three permission paths identified in the advisory are affected - broader privilege escalation beyond those operations is not described. |
| Impact | The CVSS 4.0 score of 7.7 with metrics AV:N/AC:H/AT:P/PR:L reflects a genuinely nuanced threat profile: network reachability and low-privilege access (a link-share JWT) lower the barrier to entry, but the High Attack Complexity and Presence-of-Attack-Prerequisites acknowledge that successful exploitation depends on ID collisions occurring in the autoincrement space, which requires favorable timing or iteration. All three vulnerable-system impact dimensions are rated High (VC:H/VI:H/VA:H), meaning a successful exploit yields meaningful confidentiality, integrity, and availability consequences. There is no EPSS score included in the provided data, and the vulnerability is not yet in CISA KEV, so exploitation remains unconfirmed in the wild. The combination of a non-trivial collision prerequisite and the requirement for a valid link-share token means this is not a mass-exploitation candidate in the near term; nonetheless, even a mid-sized municipal IT team in boleslawiec running a self-hosted Vikunja instance should treat this as an urgent patch priority, because an insider or someone who legitimately obtained a shared link could systematically probe for ID collisions against production user accounts. The integrity impact - removing users from teams or deleting bot accounts - may cause operational disruption disproportionate to the CVSS score alone. |
| Exploit ScenarioDerived | An attacker who holds a valid link-share JWT - obtained legitimately by accessing a shared Vikunja project link - enumerates link-share principal IDs to find one whose integer value collides with a target user's users.id. The attacker then submits authenticated API requests using that link-share JWT, bypassing the type guard and causing the server to treat the request as originating from the target user, enabling removal of that user from teams or deletion of their bot accounts. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 19, 2026
Principal-type confusion in Vikunja through 2.4.0 allows an attacker holding a valid link-share JWT to impersonate arbitrary user accounts by exploiting numeric ID collisions between LinkSharing principals and user records. Three permission-check code paths lack type guards, causing the application to treat a LinkSharing principal whose id equals N as the user with users.id == N. With a crafted link-share token, an attacker can remove victims from teams, enumerate and delete bot user accounts, or read team membership rosters. No public exploit code has been identified at time of analysis, and the vulnerability is not listed in the CISA KEV catalog.
RemediationAI
The primary remediation is to upgrade to a patched release of Vikunja beyond 2.4.0; administrators should consult the vendor security advisory at https://github.com/go-vikunja/vikunja/security/advisories/GHSA-32r8-5843-4qw2 for the confirmed fixed version, as no specific patch version number was included in the available intelligence data. Until a patch is applied, operators should consider disabling the LinkSharing feature entirely if it is not operationally required, which eliminates the attacker's ability to obtain a link-share JWT and removes the attack surface; note that this will break any existing shared links distributed to collaborators. A second compensating control is to audit and rotate or expire all active link-share tokens, reducing the window of opportunity for exploitation of existing tokens. Restricting network access to the Vikunja instance to trusted users or VPN segments raises the bar for an external attacker to obtain a link-share JWT in the first place, though it does not address insider risk.
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 task and project management application written in Go (CPE: cpe:2.3:a:go-vikunja:vikunja:*:*:*:*:*:*:*:*). The platform supports multiple principal types, including authenticated users and ephemeral LinkSharing principals that grant scoped access via JWT tokens without requiring a user account. The root cause is CWE-639 (Authorization Bypass Through User-Controlled Key): the application uses a bare integer ID as the authorization key without enforcing that the principal type matches the expected context. Because both LinkSharing principals and user records draw from overlapping autoincrement sequences, an attacker can engineer or discover ID collisions - a LinkSharing principal assigned id N will pass permission checks intended exclusively for the user whose users.id is also N. The flaw manifests in at least three discrete permission-check sites, each missing a type guard that would reject a non-user principal before comparing numeric IDs.
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:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network attack via JWT requires low-privilege link-share token and ID collision (AC:H/PR:L); all three impact domains apply through team/user manipulation.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Vikunja through 2.4.0 contains a principal-type confusion vulnerability where LinkSharing principals with id N are treated as user principals with users.id == N at three permission checks lacking type guards. Attackers with a link-share JWT can remove victims from teams, enumerate and delete victim bot users, or read team rosters by exploiting id collisions in the autoincrement space.
Executive ViewAI
Vikunja versions through 2.4.0 suffer from a principal-type confusion vulnerability allowing attackers with valid link-share tokens to impersonate any user account and manipulate team membership or access sensitive data. This exposes organizations to unauthorized account takeover and data exposure risks, particularly affecting teams relying on link-sharing for collaboration.
No vendor-released patch identified at time of analysis. Interim mitigations include: (1) disable link-share feature in Vikunja configuration if not essential; (2) restrict link-share token generation to a minimal set of trusted administrators; (3) implement enhanced JWT validation and signature verification on all token-based authentication; (4) deploy rate-limiting on authentication endpoints to slow account enumeration attempts; (5) establish continuous monitoring for anomalous account access patterns, team membership modifications, or bot account deletions.
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
Cross-tenant information disclosure in the self-hosted task manager Vikunja (0.24.0 through 2.3.0) lets a holder of any
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
EUVD-2026-62457
GHSA-32r8-5843-4qw2
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB