CVE-2026-111922 Vikunja 2.2.0 before 2.7.0 Permissive CORS Policy Trusting Localhost Origins
Attackers on localhost can steal JWT tokens via permissive CORS to take over user accounts in Vikunja.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- A user has to click or open something
- Fix
- None listed
What is CVE-2026-111922?
CVE-2026-111922 is a high-severity vulnerability in go-vikunja vikunja, published on 17 Oct 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.
Official description
Vikunja from 2.2.0 before 2.7.0 contains a permissive CORS configuration that trusts every localhost and 127.0.0.1 port with credentials, even when service.publicurl is set. Attackers controlling a page on any localhost port can send a credentialed request to the token refresh endpoint and read the returned bearer JWT to take over the logged-in user's account.
Weakness: CWE-942
Which versions are affected by CVE-2026-111922?
3 open source packages ship an affected version, including code.vikunja.io/api.
| Package | Affected | Fixed in |
|---|---|---|
code.vikunja.io/api Go | All versions | None |
code.vikunja.io/api Go | From 2.2.0 to 2.6.0 | None |
code.vikunja.io/api Go | From 2.2.0 to 2.6.0 | None |
How do I fix CVE-2026-111922?
No fix has been published for CVE-2026-111922 yet. Limit exposure of the affected software until one is available.
Is CVE-2026-111922 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-111922 exists.
Sources
Also known as GHSA-m687-p538-r5hp, GHSA-r87c-f263-6pfc, GO-2026-6739.