CVE-2026-68581: Vikunja: Link-share principal ID collision allows cross-account API token issuance and management
Vikunja routes API-token management through a generic authenticated principal and derives user-owned token authorization from web.Auth.GetID(). A link-share principal returns its independent share-row ID through that same interface. When the numeric values collide, the application mistakes a link share for an unrelated user at the API-token owner boundary.
We can steer the reachable collision through ordinary authenticated user search and link-share creation when the target ID has not already been passed. From the colliding share, the validated behavior lists target-owned token metadata, issues a scoped API token owned by the target, uses that credential under the target’s project permissions, and deletes target-owned tokens. The strongest demonstrated impact is cross-account confidentiality and integrity, not browser-session or server compromise.
The immediate fix is to require a positive regular-user principal throughout API-token management and to cover GET, PUT, and DELETE with negative link-share tests and positive user controls. A broader review of user-owned models that accept generic numeric principals would be useful variant analysis, but no additional vulnerability is claimed here.
References
- github.com/advisories/GHSA-vvcv-vpph-h844
- github.com/go-vikunja/vikunja/commit/95b7e673fb5ee407498fa4b13e8b4c57847a4a0b
- github.com/go-vikunja/vikunja/commit/e6b25bd57b537ef9a72b5acdadf446ca5ef77bfa
- github.com/go-vikunja/vikunja/releases/tag/v2.4.0
- github.com/go-vikunja/vikunja/security/advisories/GHSA-vvcv-vpph-h844
- nvd.nist.gov/vuln/detail/CVE-2026-68581
- www.vulncheck.com/advisories/vikunja-through-authentication-bypass-via-principal-id-collision
Code Behaviors & Features
Detect and mitigate CVE-2026-68581 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →