CVE-2026-35594 Vikunja Link Share JWT tokens remain valid for 72 hours after share deletion or permission downgrade

Medium 6.5 Published Updated

Attackers retain access to deleted or downgraded link shares for 72 hours because Vikunja trusts JWT claims without server-side validation.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-35594?

CVE-2026-35594 is a medium-severity vulnerability in go-vikunja vikunja, published on 10 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Vikunja is an open-source self-hosted task management platform. Prior to 2.3.0, Vikunja's link share authentication (GetLinkShareFromClaims in pkg/models/link_sharing.go) constructs authorization objects entirely from JWT claims without any server-side database validation. When a project owner deletes a link share or downgrades its permissions, all previously issued JWTs continue to grant the original permission level for up to 72 hours (the default service.jwtttl). This vulnerability is fixed in 2.3.0.

Weakness: CWE-613

Which versions are affected by CVE-2026-35594?

3 open source packages ship an affected version, including code.vikunja.io/api. It affects 1 product.

PackageAffectedFixed in
code.vikunja.io/api GoAll versionsNone
code.vikunja.io/api GoAll versions2.3.0
code.vikunja.io/api GoAll versions2.3.0

Products include Vikunja Vikunja.

How do I fix CVE-2026-35594?

Upgrade code.vikunja.io/api to 2.3.0 or later.

Is CVE-2026-35594 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-35594 exists.

Sources

Also known as GHSA-96q5-xm3p-7m84, GO-2026-5276.

Is CVE-2026-35594 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free