Categories
CVE-2026-33336

Vikunja Desktop vulnerable to Remote Code Execution via same-window navigation

Summary

Vikunja Desktop vulnerable to Remote Code Execution via same-window navigation

Original description

The description as published by the source.

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 enables nodeIntegration in the main BrowserWindow and does not restrict same-window navigations. An attacker who can place a link in user-generated content (task descriptions, comments, project descriptions) can cause the BrowserWindow to navigate to an attacker-controlled origin, where JavaScript executes with full Node.js access, resulting in arbitrary code execution on the victim's machine. Version 2.2.0 patches the issue.

Root cause

Two misconfigurations combine to create this vulnerability:

  1. nodeIntegration: true is set in BrowserWindow web preferences (desktop/main.js:14-16), giving any page loaded in the renderer full access to Node.js APIs (require, child_process, fs, etc.).

  2. No will-navigate or will-redirect handler is registered on the webContents. The existing setWindowOpenHandler (desktop/main.js:19-23) only intercepts window.open() calls (new-window requests). It does not intercept same-window navigations triggered by:

    • `` links (without target="_blank")
    • window.location assignments
    • HTTP redirects
    • `` tags

Attack scenario

  1. The attacker is a normal user on the same Vikunja instance (e.g., a member of a shared project).
  2. The attacker creates or edits a project description or task description containing a standard HTML link, e.g.: `Cli…

Source: OSV.dev (Open Source Vulnerabilities) NVD GitHub Advisory OSV

References

We use cookies for analytics and ad measurement. This setting applies to all Game co., Ltd. sites. Details