Skip to content
Heist/ feed
Back to feed
High

Vikunja Vulnerable to Link Share Hash Disclosure via ReadAll Endpoint Enables Permission Escalation

Type: advisorySources: OSV

Vikunja is an open-source self-hosted task management platform. Prior to version 2.2.2, the `LinkSharing.ReadAll()` method allows link share authenticated users to list all link shares for a project, including their secret hashes. While `LinkSharing.CanRead()` correctly blocks link share users from reading individual shares via `ReadOne`, the `ReadAllWeb` handler bypasses this check by never calling `CanRead()`. An attacker with a read-only link share can retrieve hashes for write or admin link shares on the same project and authenticate with them, escalating to full admin access. Version 2.2.2 patches the issue.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-33680
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 23:30 UTC · Revision 1

Source evidence

Vikunja Vulnerable to Link Share Hash Disclosure via ReadAll Endpoint Enables Permission Escalation

core-osv · Original source

Published 24 Mar 2026, 15:47 UTC

Vikunja is an open-source self-hosted task management platform. Prior to version 2.2.2, the `LinkSharing.ReadAll()` method allows link share authenticated users to list all link shares for a project, including their secret hashes. While `LinkSharing.CanRead()` correctly blocks link share users from reading individual shares via `ReadOne`, the `ReadAllWeb` handler bypasses this check by never calling `CanRead()`. An attacker with a read-only link share can retrieve hashes for write or admin link shares on the same project and authenticate with them, escalating to full admin access. Version 2.2.2 patches the issue.

osv:CVE-2026-33680
Complete source record
{
  "id": "2786743b089eed33fae68e4beee11f4b03d956788e8d159519cb2f4f22fa6af8",
  "url": "https://osv.dev/vulnerability/CVE-2026-33680",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Vikunja Vulnerable to Link Share Hash Disclosure via ReadAll Endpoint Enables Permission Escalation",
    "summary": "Vikunja is an open-source self-hosted task management platform. Prior to version 2.2.2, the `LinkSharing.ReadAll()` method allows link share authenticated users to list all link shares for a project, including their secret hashes. While `LinkSharing.CanRead()` correctly blocks link share users from reading individual shares via `ReadOne`, the `ReadAllWeb` handler bypasses this check by never calling `CanRead()`. An attacker with a read-only link share can retrieve hashes for write or admin link shares on the same project and authenticate with them, escalating to full admin access. Version 2.2.2 patches the issue.",
    "evidence": "osv:CVE-2026-33680",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-33680",
      "aliases": [
        "CVE-2026-33680",
        "GHSA-8hp8-9fhr-pfm9",
        "GO-2026-4848"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/go-vikunja/vikunja",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "772316b47f966cfce07c8241a099088aff0e6a74"
                },
                {
                  "fixed": "9efe1fadba817923c7c7f5953c3e9e9c5683bbf3"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:vikunja:vikunja:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2.2.2"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "9efe1fadba817923c7c7f5953c3e9e9c5683bbf3"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v2.2.0",
            "v2.1.0",
            "v2.0.0",
            "v1.1.0",
            "v1.0.0",
            "v1.0.0-rc4",
            "v1.0.0-rc3",
            "v1.0.0-rc2",
            "v1.0.0-rc1",
            "v1.0.0-rc0",
            "v0.24.1",
            "v0.23.0",
            "v0.22.1",
            "v0.22.0",
            "v0.21.0",
            "v0.20.4",
            "v0.20.3",
            "v0.20.1",
            "v0.20.0",
            "v0.19.2",
            "v0.19.1",
            "v0.19.0",
            "v0.18.1",
            "v0.18.0",
            "v0.17.0",
            "v0.16.0",
            "v0.15.0",
            "v0.14.0",
            "v0.13",
            "v0.12",
            "v0.11",
            "v0.10",
            "v0.9",
            "v0.8",
            "v0.7",
            "v0.6",
            "v0.5",
            "v0.4",
            "v0.3",
            "v0.2",
            "v0.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-33680.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:24.421214393Z",
      "provider": "osv",
      "references": [
        "https://vikunja.io/changelog/vikunja-v2.2.2-was-released",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/33xxx/CVE-2026-33680.json",
        "https://github.com/go-vikunja/vikunja/security/advisories/GHSA-8hp8-9fhr-pfm9",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-33680",
        "https://github.com/go-vikunja/vikunja/commit/9efe1fadba817923c7c7f5953c3e9e9c5683bbf3"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-285"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/33xxx/CVE-2026-33680.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-33680",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 490889,
  "published_at": "2026-03-24T15:47:47.529+00:00"
}