Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as Write-level project member
-
ExploitEnumerate sequential share IDs on project
-
ExecutionSend DELETE to v1/v2 shares endpoint
-
ImpactRevoke admin link shares and invalidate share sessions
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated attacker who is already a member of the target project with Write permission (PR:L); the project must have at least one admin-tier link share to delete. The attacker then issues DELETE /api/v1/projects/{project}/shares/{share} or the v2 equivalent (older releases used /lists/{list}/shares/{share}), iterating sequential share IDs. Exploitation is LIMITED by the need for existing Write membership on the specific project - fully read-only members and link-share principals are rejected on deletion, and there is no HTTP update route to abuse. The v2 route is only present in v2.4.0 and later; the v1 route exists from v0.13.0. |
| Impact | This is a medium-severity authorization flaw (vendor CVSS 4.0 base 5.3) whose real-world risk is moderate and bounded, not a high-urgency priority. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L) is internally consistent with the description: exploitation is over the network against the REST API but requires PR:L - an already-authenticated project member holding Write permission - so this is a privilege-boundary/insider issue rather than an anonymous internet-facing bug. Impact is limited to integrity and availability of link shares (VI:L/VA:L) with no confidentiality loss (VC:N): the attacker cannot read data, only revoke admin link shares and invalidate existing share sessions. No EPSS score, CISA KEV listing, or SSVC decision data was provided in the input, and there is no public exploit identified at time of analysis (the reporter verified a live PoC against a local build on 2026-09-07, but that code is not published). The absence of KEV/EPSS/public-POC signals, combined with the PR:L precondition and lack of confidentiality or code-execution impact, points to a low likelihood of widespread opportunistic exploitation; the realistic concern is trust-boundary abuse within multi-member or multi-tenant Vikunja projects. |
| Exploit ScenarioDerived | A user who has been granted only Write (not Admin) permission on a shared Vikunja project sends DELETE requests to the project shares endpoint, iterating sequential share IDs to remove admin-tier link shares they should not control. The maintainer-confirmed root cause is a permission check that reads the Go zero-value (Read) from an unloaded share object and falls through to the project Write check; a live proof of concept exists but is not publicly available, so no weaponized public exploit is in circulation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 17, 2026
Write-level project members in Vikunja 0.13.0 through 2.6.0 can delete admin-tier link shares they are not authorized to touch, because the deletion handler builds a LinkSharing object containing only the URL-supplied IDs and the permission check then reads that object's Go zero value (Read) instead of the stored share permission. An authenticated attacker who already holds Write membership on a project can iterate sequential share IDs against DELETE /api/v1/projects/{project}/shares/{share} or the v2 equivalent (present from v2.4.0) to revoke admin links and invalidate existing share sessions, yielding limited integrity and availability impact. No public exploit code or confirmed active exploitation was identified at time of analysis, and the vendor CVSS 4.0 base score is 5.3.
RemediationAI
Upgrade Vikunja to 2.7.0 or later, the boundary stated in the CVE description; because the package metadata in this dataset lists no independently resolved fixed version, confirm the exact patched tag against GHSA-fmmf-xq98-g327 (https://github.com/go-vikunja/vikunja/security/advisories/GHSA-fmmf-xq98-g327) before relying on a specific release. If an immediate upgrade is not possible, reduce exposure by auditing every project's membership and downgrading or removing Write grants for users who only need to consume content, since the flaw requires existing Write membership (trade-off: reduced collaboration for legitimate contributors); treat all currently active admin link shares as potentially revoked or attacker-influenced, regenerate them and re-distribute URLs to external consumers (trade-off: external integrations and share sessions break and must be reissued); consider temporarily disabling link sharing entirely on sensitive projects if admin-tier links are not essential (trade-off: removes external/public access workflows); and monitor web server or application logs for DELETE requests to /api/v1/projects/*/shares/* and /api/v2/projects/*/shares/*, particularly sequences of incrementing share IDs from the same principal, alerting on them as a compensating detective control.
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 Go task/project management application (Go module code.vikunja.io/api, CPE cpe:2.3:a:go-vikunja:vikunja) that implements shareable public links through a LinkSharing model with tiered permissions (PermissionRead = 0, PermissionAdmin = 2). This is a classic CWE-863 incorrect authorization defect: in pkg/routes/api/v2/link_sharing.go the delete handler passes &models.LinkSharing{ID: in.ID, ProjectID: in.ProjectID} to handler.DoDelete, and the v1 generic handler likewise binds only the URL IDs without loading the persisted record. pkg/web/handler/core.go invokes CanDelete before Delete, and LinkSharing.CanDelete delegates to canDoLinkShare in pkg/models/link_sharing_permissions.go, which loads the project but not the share and evaluates 'if share.Permission == PermissionAdmin { return l.IsAdmin(...) }' followed by a fallback to 'return l.CanWrite(...)'. Because the unloaded struct's Permission field is its zero value (Read), the admin branch is never taken and any Write member passes the check; LinkSharing.Delete then removes the row by share ID and project ID without re-verifying the stored permission. The admin-tier check was introduced in commit 56dbb564eae83f2453efd1049f55e9d099b5d346 and first shipped in v0.13, while the v2 route arrived in commit b10768506 and first shipped in v2.4.0. The create path validates the requested permission and correctly blocks Write members from creating admin shares, share listing and by-ID reads are admin-gated on current main, there is no HTTP update route for link shares, and read-only members plus link-share principals are rejected on deletion - all of which bound the attack to deletion of existing admin links.
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:N/VI:L/VA:L/SC:N/SI:N/SA:N
Network REST API with low complexity; PR:L because a Write-level project member is required; no confidentiality impact, with integrity/availability low from unauthorized deletion of admin link shares.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Vikunja 0.13.0 before 2.7.0 contains an incorrect authorization vulnerability that allows project members with Write permission to delete admin-tier link shares because the delete permission check reads an unloaded share object. Attackers can send DELETE requests to the v1 or v2 projects shares endpoints with sequential share IDs to revoke admin links and invalidate existing share sessions.
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-103289
GHSA-92qc-qm37-9wr9
NVD
CVE.org
VulDB
Exploit-DB