Skip to main content

Vikunja CVE-2026-33335

| EUVDEUVD-2026-14909 MEDIUM
Improper Authorization in Handler for Custom URL Scheme (CWE-939)
2026-03-24 GitHub_M
6.4
CVSS 4.0 · GitHub Advisory
Share

Severity by source

GitHub Advisory PRIMARY
6.4 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

Primary rating from GitHub Advisory · only source for this CVE.

CVSS VectorGitHub Advisory

CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
P
Scope
X

Lifecycle Timeline

4
Patch available
Apr 16, 2026 - 05:29 EUVD
2.2.0
EUVD ID Assigned
Mar 24, 2026 - 15:45 euvd
EUVD-2026-14909
Analysis Generated
Mar 24, 2026 - 15:45 vuln.today
CVE Published
Mar 24, 2026 - 15:07 nvd
MEDIUM 6.4

DescriptionGitHub Advisory

Vikunja is an open-source self-hosted task management platform. Starting in version 0.21.0 and prior to version 2.2.0, the Vikunja Desktop Electron wrapper passes URLs from window.open() calls directly to shell.openExternal() without any validation or protocol allowlisting. An attacker who can place a link with target="_blank" (or that otherwise triggers window.open) in user-generated content can cause the victim's operating system to open arbitrary URI schemes, invoking local applications, opening local files, or triggering custom protocol handlers. Version 2.2.0 patches the issue.

AnalysisAI

The Vikunja Desktop Electron application fails to validate or allowlist URI schemes before passing URLs from window.open() calls to shell.openExternal(), allowing attackers to invoke arbitrary local applications, open files, or trigger custom protocol handlers. Vikunja versions 0.21.0 through 2.1.x are affected, with the vulnerability patched in version 2.2.0. An attacker who can inject links with target="_blank" into user-generated content can exploit this to execute malicious actions on the victim's operating system without user awareness or explicit consent.

Technical ContextAI

The vulnerability exists in the Vikunja Desktop Electron wrapper (CPE: cpe:2.3:a:go-vikunja:vikunja). Electron's shell.openExternal() API is designed to open URLs and URI schemes using the operating system's default handlers. The root cause is classified under CWE-939 (Improper Authorization in Other Contexts), more specifically a failure to implement protocol allowlisting or URI validation before invoking system-level URI handlers. When a web page running within Electron calls window.open() with an attacker-controlled URL, the wrapper directly passes this to shell.openExternal() without sanitization, causing the OS to honor dangerous URI schemes such as file://, custom protocol handlers, or application-launching schemes (e.g., ms-settings:, apt:, etc.). This is a classic instance of inadequate trust boundary enforcement between the web context and the native OS layer.

RemediationAI

Immediately upgrade the Vikunja Desktop application to version 2.2.0 or later; this is the primary and complete remediation. Users unable to upgrade immediately should disable or restrict Electron's preload/context isolation settings if possible (consult Vikunja documentation), or avoid opening untrusted content (tasks, comments, descriptions) from external sources until patching is complete. Administrators distributing Vikunja Desktop should prioritize deployment of v2.2.0 via their software distribution mechanism. For organizations using the self-hosted web version, no action is required; the vulnerability is confined to the Electron wrapper. Monitor the GitHub advisory at https://github.com/go-vikunja/vikunja/security/advisories/GHSA-6q44-85gc-cjvf for any post-patch updates or additional guidance.

CVE-2026-27575 CRITICAL POC
9.1 Feb 25

Weak password policy in Vikunja task management before 2.0.0 allows users to set trivially guessable passwords. PoC avai

CVE-2026-27616 HIGH POC
7.3 Feb 25

Stored cross-site scripting (XSS) in Vikunja prior to version 2.0.0 allows authenticated attackers to steal authenticati

CVE-2026-27819 HIGH POC
7.2 Feb 25

Vikunja before version 2.0.0 contains a path traversal vulnerability in its backup restoration function that fails to va

CVE-2026-27116 MEDIUM POC
6.1 Feb 25

Vikunja is an open-source self-hosted task management platform. [CVSS 6.1 MEDIUM]

CVE-2026-28268 CRITICAL
9.8 Feb 27

Business logic vulnerability in Vikunja task management platform before 2.1.0 allows incomplete resource cleanup, potent

CVE-2026-68582 CRITICAL
9.3 Aug 02

Cross-tenant information disclosure in the self-hosted task manager Vikunja (0.24.0 through 2.3.0) lets a holder of any

CVE-2026-56765 CRITICAL
9.3 Jul 10

Instance-wide data breach in Vikunja before 2.2.1 lets remote attackers exfiltrate and destroy every file attachment acr

CVE-2026-68581 HIGH
8.6 Aug 02

Principal type confusion in Vikunja (versions 0.22.0-2.3.0) allows an authenticated low-privilege attacker to fully cont

CVE-2026-76216 HIGH
7.7 Aug 19

Principal-type confusion in Vikunja through 2.4.0 allows an attacker holding a valid link-share JWT to impersonate arbit

CVE-2026-34727 HIGH
7.4 Apr 10

Authentication bypass in Vikunja task management platform allows unauthenticated attackers to circumvent two-factor auth

CVE-2026-35594 MEDIUM
6.5 Apr 10

Vikunja prior to version 2.3.0 fails to validate link share permissions against server state during JWT authentication,

CVE-2026-25935 MEDIUM
5.4 Feb 11

Cross-site scripting (XSS) in Vikunja prior to version 1.1.0 allows authenticated attackers to execute arbitrary JavaScr

Share

CVE-2026-33335 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy