CVE-2026-33312
published 2026-03-20CVE-2026-33312: Vikunja is an open-source self-hosted task management platform. Starting in version 0.20.2 and prior to version 2.2.0, the `DELETE…
PriorityP431medium5.4CVSS 3.1
AVNACLPRLUINSUCNILAL
EPSS
0.21%
11.4th percentile
Vikunja is an open-source self-hosted task management platform. Starting in version 0.20.2 and prior to version 2.2.0, the `DELETE /api/v1/projects/:project/background` endpoint checks `CanRead` permission instead of `CanUpdate`, allowing any user with read-only access to a project to permanently delete its background image. Version 2.2.0 fixes the issue.
Affected
4 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| code.vikunja.io | api | >= 0.20.2 < 2.2.0 | 2.2.0 |
| code.vikunja.io | api | >= 0.20.2 | — |
| go-vikunja | vikunja | — | — |
| vikunja | vikunja | >= 0.20.2 < 2.2.0 | 2.2.0 |
CVSS provenance
nvdv3.15.4MEDIUMCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
nvdv4.05.3MEDIUMCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/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
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
OSV
Vikunja read-only users can delete project background images via broken object-level authorization in code.vikunja.io/api
osv·2026-03-23
CVE-2026-33312 Vikunja read-only users can delete project background images via broken object-level authorization in code.vikunja.io/api
Vikunja read-only users can delete project background images via broken object-level authorization in code.vikunja.io/api
Vikunja read-only users can delete project background images via broken object-level authorization in code.vikunja.io/api.
NOTE: The source advisory for this report contains additional versions that could not be automatically mapped to standard Go module versions.
(If this is causing false-positive reports from vulnerability scanners, please suggest an edit to the report.)
The additional affected modules and versions are: code.vikunja.io/api before v2.2.0.
OSV
Vikunja read-only users can delete project background images via broken object-level authorization
osv·2026-03-20
CVE-2026-33312 [MEDIUM] Vikunja read-only users can delete project background images via broken object-level authorization
Vikunja read-only users can delete project background images via broken object-level authorization
## Summary
The `DELETE /api/v1/projects/:project/background` endpoint checks `CanRead` permission instead of `CanUpdate`, allowing any user with read-only access to a project to permanently delete its background image.
## Details
The `RemoveProjectBackground` handler (`pkg/modules/background/handler/background.go`) reuses `checkProjectBackgroundRights`, a helper originally written for the read-only `GetProjectBackground` endpoint. This helper only verifies `CanRead` permission. In contrast, the handler for *setting* a background (`setBackgroundPreparations`) correctly checks `CanUpdate`.
As a result, destructive write operations (deleting the background file from storage and clearing the
GHSA
Vikunja read-only users can delete project background images via broken object-level authorization
ghsa·2026-03-20
CVE-2026-33312 [MEDIUM] CWE-863 Vikunja read-only users can delete project background images via broken object-level authorization
Vikunja read-only users can delete project background images via broken object-level authorization
## Summary
The `DELETE /api/v1/projects/:project/background` endpoint checks `CanRead` permission instead of `CanUpdate`, allowing any user with read-only access to a project to permanently delete its background image.
## Details
The `RemoveProjectBackground` handler (`pkg/modules/background/handler/background.go`) reuses `checkProjectBackgroundRights`, a helper originally written for the read-only `GetProjectBackground` endpoint. This helper only verifies `CanRead` permission. In contrast, the handler for *setting* a background (`setBackgroundPreparations`) correctly checks `CanUpdate`.
As a result, destructive write operations (deleting the background file from storage and clearing the
No detection rules found.
No public exploits indexed.
2026-03-20
Published