Skip to main content

Vikunja CVE-2026-91980

| EUVDEUVD-2026-78651 MEDIUM
Information Exposure (CWE-200)
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Authenticate with low-privileged account
  2. Delivery
    Create or select owned project
  3. Exploit
    Enumerate sequential team IDs
  4. Install
    Attach unauthorized team via project teams endpoint
  5. C2
    Server skips team access validation
  6. Execute
    Receive full team roster with admin flags
  7. Impact
    Target privileged accounts for follow-on attacks

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK

2 techniques across 2 tactics: Collection, Discovery

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a valid, authenticated Vikunja account (CVSS PR:L) and the ability to create or edit at least one project so that a team can be attached via the project teams endpoint - on default self-hosted deployments any normal user who can create a project satisfies this. No user interaction (UI:N) and no special feature flag or non-default configuration is documented as a prerequisite; the vulnerable endpoint is part of the standard project-sharing surface. Exploitation is limited in that it discloses only team metadata (team identity, member names, admin flags) and cannot modify data, escalate privileges directly, or read task contents; it also depends on numeric team IDs being guessable/sequential, as implied by the 'arbitrary team IDs' description. Deployments that have disabled user self-registration and issue accounts only to vetted staff reduce the pool of attackers who can meet the PR:L bar, but do not mitigate the flaw itself.

Impact

The supplied CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, base 4.3) is internally consistent: a network-reachable API, no user interaction, but a required low-privileged account and confidentiality-only impact, with no integrity or availability loss. No EPSS probability, KEV entry, or POC indicator was included in the intake, so exploitation status can only be stated as 'no public exploit identified at time of analysis' - the enumeration technique is nonetheless fully automatable once an account exists, since team IDs are numeric and can simply be iterated. The high attack-vector/low-privilege combination is what makes a nominally 'low' score worth scheduling: the leaked data (member identities plus who is a team admin) is reconnaissance material for later phishing or privilege-escalation attempts rather than an immediate compromise. Note that EPSS, KEV and POC data are absent from this feed, so downstream risk scoring should not treat their absence as a negative finding. Given the modest blast radius, even a mid-sized municipal IT team in olsztyn would find the direct impact limited, but should still fold the upgrade into routine maintenance because the roster leak shortens an attacker's reconnaissance phase. Key data gap: no patch-availability confirmation beyond 'Available from vendor' and no independent PoC reproduction were supplied.

Exploit ScenarioDerived

An attacker registers or compromises a single ordinary Vikunja account, then iterates numeric team IDs against a project they own, attaching each candidate team in turn. Each request returns the resolved team object with its full member roster, including usernames and admin flags, for teams the attacker was never authorized to see. The harvested admin list becomes a target list for credential-stuffing or phishing against the highest-privileged accounts in the organization.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 15, 2026

Vikunja versions before 2.6.0 omit team-level access validation when a team is attached to a project, letting any authenticated user enumerate teams they do not belong to through the project teams endpoint. An attacker with a low-privileged account can supply arbitrary team IDs and receive complete rosters - member names and administrative flags - for unauthorized teams. Impact is confidential-only (CVSS 4.3, CWE-200) and no public exploit code or KEV listing was provided with the source data.

RemediationAI

Vendor-released patch: Vikunja 2.6.0 - upgrade every API server instance to 2.6.0 or later, as stated in the GitHub advisory GHSA-39p5-2wrr-xh29 (https://github.com/go-vikunja/vikunja/security/advisories/GHSA-39p5-2wrr-xh29). Because the fix lands in the server, Docker users should pull the 2.6.0+ image and restart rather than only updating clients or the frontend bundle. If an immediate upgrade is not possible, the practical compensating control is to restrict who can create or modify projects and who can attach teams to them - temporarily limit project-creation and share-management permissions to a small trusted group, which removes the low-privileged foothold the attack needs, at the cost of blocking legitimate self-service sharing for ordinary users. An API gateway or reverse proxy rule that denies POST/PUT requests to project team-association paths from non-admin accounts offers equivalent protection, but such rules are brittle and will break legitimate sharing workflows whenever the route changes, so treat them as short-lived. After upgrading, rotate nothing at the credential level (no secrets are exposed) but do review audit logs for repeated sequential team-ID lookups, which would indicate prior enumeration, and remove any unexpected team associations created during the window of exposure.

Affected VersionsENISA

vikunja 0 <2.6.0

Affected Packages

go code.vikunja.io/api fix: 2.6.0
euvd vikunja fix: 2.6.0

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 self-hosted, Go-based task and project management application (CPE cpe:2.3:a:go-vikunja:vikunja) that models work as projects containing tasks, with teams used as shareable principals. Sharing a project with a team is implemented by attaching a team identifier to the project through the project-teams relationship endpoint. The defect is a missing authorization check on that relationship: the code verifies that the caller can modify the project but does not verify that the caller is a member or admin of the team being attached or queried. Because the endpoint echoes back the resolved team object, an attacker effectively gains a read primitive over every team row in the database, including its membership list and each member's admin flag. This is a classic CWE-200 exposure of sensitive information through an insecure direct object reference on a foreign-key relationship rather than on the object the user legitimately owns. The vulnerable class is API-level broken access control, and the fix in 2.6.0 scope is to enforce team membership/permission checks before the association is created or its roster returned.

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

Vendor (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Network-reachable API but requires an authenticated low-privileged account (PR:L) and valid project edit rights; only confidentiality of team metadata is lost.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
CVSS changed
Sep 15, 2026 - 16:22 NVD
4.3 (MEDIUM) 5.3 (MEDIUM)
Patch available
Sep 15, 2026 - 16:03 EUVD

DescriptionCVE.org

vikunja before 2.6.0 fails to validate team access when attaching teams to projects, allowing authenticated users to enumerate all teams and members. Attackers can attach arbitrary team IDs via the project teams endpoint to retrieve complete team rosters including member names and admin flags for unauthorized teams.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Low
self-hosted open-source task manager, limited enterprise footprint
Threat Intel
1
1 sources
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-68582 CRITICAL POC
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-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-68581 HIGH POC
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-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-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-34727 CRITICAL
9.1 Apr 10

Vikunja's OIDC callback handler issues a full JWT to any successfully matched user without checking whether that account

CVE-2026-91973 HIGH POC
8.7 Sep 15

Vikunja instances before 2.6.0 expose CalDAV BasicAuth endpoints (/dav, /.well-known, and /feeds) that are not covered b

CVE-2026-91972 HIGH POC
8.7 Sep 15

Vikunja versions before 2.6.0 ship authentication endpoints under /api/v2 (login, register, password-reset, and OAuth to

CVE-2026-91985 HIGH POC
8.7 Sep 15

Vikunja prior to 2.6.0 leaks the secret hash that backs a project's link shares through its single-share read endpoint,

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