Read the docs
TI-2026-22002 Aliases CVE-2026-27616GHSA-7jp5-298q-jg98

Vikunja Vulnerable to Stored Cross-Site Scripting (XSS) via Unsanitized SVG Attachment Upload Leading to Token Exposure

Priority HIGH 65CWE-79Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
Required
Attack complexity
Low
Impact type
Cross-site scripting
Confidentiality · integrity · availability
High · High · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-79.

Summary

Vikunja is an open-source self-hosted task management platform. Prior to version 2.0.0, the application allows users to upload SVG files as task attachments. SVG is an XML-based format that supports JavaScript execution through elements such as <script> tags or event handlers like onload. The application does not sanitize SVG content before storing it. When the uploaded SVG file is accessed via its direct URL, it is rendered inline in the browser under the application's origin. As a result, embedded JavaScript executes in the context of the authenticated user. Because the authentication token is stored in localStorage, it is accessible via JavaScript and can be retrieved by a malicious payload. Version 2.0.0 patches this issue.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00512 43rd percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed vikunja (go-vikunja): 2.0.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
go-vikunjavikunjabefore 2.0.02.0.0Patch availableCNA
—code.vikunja.io/api (Go)up to 0.24.6—No fix listedGHSA-7jp5-298q-jg98
  • vikunja Vendorgo-vikunja Affected before 2.0.0 Fixed in 2.0.0 Patch available CNA
  • code.vikunja.io/api (Go) Vendor— Affected up to 0.24.6 Fixed in — No fix listed GHSA-7jp5-298q-jg98

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:vikunja:vikunja:*:*:*:*:*:*:*:*before 2.0.0Vulnerablego-vikunja
  • cpe:2.3:a:vikunja:vikunja:*:*:*:*:*:*:*:* Versions before 2.0.0 Vulnerable ·go-vikunja

Remediation

  • Fix · CNA vikunja (go-vikunja) Fixed in 2.0.0

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-27616
  2. 2026-10-03 Alias added: GHSA-7jp5-298q-jg98
  3. 2026-10-14 EPSS moved to the 50th–90th percentile
  4. 2026-10-25 EPSS moved to the below the 50th percentile

References

  • TI-2026-21967 Vijkunja has Weak Password Policy Combined with Persistent Sessions After Password Change CVSS 3.1CRITICAL 9.1
  • TI-2026-26971 Vikunja ahs a TOTP Two-Factor Authentication Bypass via OIDC Login Path CVSS 3.1CRITICAL 9.1
  • TI-2026-26060 Vikunja Vulnerable to Link Share Hash Disclosure via ReadAll Endpoint Enables Permission Escalation CVSS 3.1HIGH 7.5
  • TI-2026-20965 Vikunja Affected by XSS Via Task Preview CVSS 4.0HIGH 8.6
  • TI-2026-27698 Vikunja Affected by Privilege Escalation via Project Reparenting CVSS 3.1HIGH 8.3
  • TI-2026-25727 Vikunja’s Improper Access Control Enables Bypass of Administrator-Imposed Account Disablement CVSS 3.1HIGH 8.1
See all 34 →

Sources