Advisory Database
  • Advisories
  • Dependency Scanning
  1. golang
  2. ›
  3. code.vikunja.io/api
  4. ›
  5. GHSA-m687-p538-r5hp

GHSA-m687-p538-r5hp: Vikunja: Permissive Cross-domain Security Policy trusts every localhost origin which should not be trusted

October 9, 2026

Vikunja ships with cors.origins defaulting to http://127.0.0.1:* and http://localhost:*, and sends Access-Control-Allow-Credentials: true, so a page served from any port on the user’s own machine may make credentialed cross-origin requests to the API and read the responses. The mandatory service.publicurl is appended to that default list rather than replacing it, so a fully configured production deployment still trusts every localhost origin. Combined with the token refresh endpoint, which authenticates with the vikunja_refresh_token cookie and returns a bearer JWT in the response body, one fetch() from such a page yields a working access token for whoever is logged in, and from there the whole account.

References

  • github.com/advisories/GHSA-m687-p538-r5hp
  • github.com/go-vikunja/vikunja/security/advisories/GHSA-m687-p538-r5hp

Code Behaviors & Features

Detect and mitigate GHSA-m687-p538-r5hp with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions starting from 2.2.0 up to 2.6.0

Solution

Unfortunately, there is no solution available yet.

Impact 7.1 HIGH

CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-942: Permissive Cross-domain Policy with Untrusted Domains

Source file

go/code.vikunja.io/api/GHSA-m687-p538-r5hp.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:16:02 +0000.