---
id: CVE-2026-54766
title: Vikunja is an open-source self-hosted task management platform
summary: >-
  Vikunja is an open-source self-hosted task management platform. From 0.21.0
  until 2.4.0, the project duplication operation in
  pkg/models/project_duplicate.go allows an authenticated user who can read a
  source project to place its duplica…
severity: medium
cwe:
  - CWE-285
  - CWE-863
vendor: api
product: code.vikunja.io/api
affected:
  - 'code.vikunja.io/api >= 0.21.0, <= 2.3.0'
patched:
  - code.vikunja.io/api 2.4.0
published: '2026-08-28'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T21:09:13.080'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-54766'
references:
  - url: >-
      https://github.com/go-vikunja/vikunja/commit/d911caaa11c748c3abc6b98b3189afea2677bcb0
    label: security-advisories@github.com
  - url: 'https://github.com/go-vikunja/vikunja/pull/3239'
    label: security-advisories@github.com
  - url: 'https://github.com/go-vikunja/vikunja/releases/tag/v2.4.0'
    label: security-advisories@github.com
  - url: >-
      https://github.com/go-vikunja/vikunja/security/advisories/GHSA-f27p-pw2p-9pr4
    label: security-advisories@github.com
  - url: >-
      https://github.com/go-vikunja/vikunja/security/advisories/GHSA-f27p-pw2p-9pr4
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
  - url: 'https://github.com/advisories/GHSA-f27p-pw2p-9pr4'
tags:
  - nvd
  - ghsa
  - go
epss: 0.00427
epssPercentile: 0.34368
aliases:
  - GHSA-f27p-pw2p-9pr4
ecosystem: go
ingestedAt: '2026-08-28T17:22:56.565Z'
---

## Overview

Vikunja is an open-source self-hosted task management platform. From 0.21.0 until 2.4.0, the project duplication operation in pkg/models/project_duplicate.go allows an authenticated user who can read a source project to place its duplicate beneath an arbitrary target parent project. ProjectDuplicate.CanCreate calls parent.CanCreate on an unhydrated Project containing only the body supplied parent_project_id instead of calling parent.CanWrite, so the target parent write-permission check is skipped. The ordinary project creation path enforces that permission, but PUT /api/v1/projects/{project}/duplicate does not, allowing attacker-owned content to be injected into another user or team project hierarchy. This issue is fixed in version 2.4.0.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-54766)

Affected packages:

- `code.vikunja.io/api >= 0.21.0, <= 2.3.0`

Patched in:

- `code.vikunja.io/api 2.4.0`

Source: https://github.com/advisories/GHSA-f27p-pw2p-9pr4
