Vikunja has SSRF via OpenID Connect Avatar Download that Bypasses Webhook SSRF Protections
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- Low · Low · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub.
Summary
Vikunja is an open-source self-hosted task management platform. Prior to version 2.2.1, the `DownloadImage` function in `pkg/utils/avatar.go` uses a bare `http.Client{}` with no SSRF protection when downloading user avatar images from the OpenID Connect `picture` claim URL. An attacker who controls their OIDC profile picture URL can force the Vikunja server to make HTTP GET requests to arbitrary internal or cloud metadata endpoints. This bypasses the SSRF protections that are correctly applied to the webhook system. Version 2.2.1 patches the issue.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| go-vikunja | vikunja | before 2.2.1 | 2.2.1 | Patch available | CNA |
| — | code.vikunja.io/api (Go) | before 2.2.1 | 2.2.1 | Patch available | GHSA-g9xj-752q-xh63 |
- vikunja Vendorgo-vikunja Affected before 2.2.1 Fixed in 2.2.1 Patch available CNA
- code.vikunja.io/api (Go) Vendor— Affected before 2.2.1 Fixed in 2.2.1 Patch available GHSA-g9xj-752q-xh63
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:vikunja:vikunja:*:*:*:*:*:*:*:* | before 2.2.1 | Vulnerable | go-vikunja |
- cpe:2.3:a:vikunja:vikunja:*:*:*:*:*:*:*:* Versions before 2.2.1 Vulnerable ·go-vikunja
Remediation
- Fix · CNA vikunja (go-vikunja) Fixed in 2.2.1
- Fix · GHSA-g9xj-752q-xh63 code.vikunja.io/api (Go) Fixed in 2.2.1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-33679
- 2026-10-03 Alias added: GHSA-g9xj-752q-xh63
References
More go-vikunja Vikunja vulnerabilities
- TI-2026-21967 Vijkunja has Weak Password Policy Combined with Persistent Sessions After Password Change CVSS 3.1CRITICAL 9.1
- TI-2026-26971 Vikunja ahs a TOTP Two-Factor Authentication Bypass via OIDC Login Path CVSS 3.1CRITICAL 9.1
- TI-2026-26060 Vikunja Vulnerable to Link Share Hash Disclosure via ReadAll Endpoint Enables Permission Escalation CVSS 3.1HIGH 7.5
- TI-2026-20965 Vikunja Affected by XSS Via Task Preview CVSS 4.0HIGH 8.6
- TI-2026-27698 Vikunja Affected by Privilege Escalation via Project Reparenting CVSS 3.1HIGH 8.3
- TI-2026-25727 Vikunja’s Improper Access Control Enables Bypass of Administrator-Imposed Account Disablement CVSS 3.1HIGH 8.1
Sources
- CVE-2026-33679 · CVE Program
- CVE-2026-33679 · NVD
- FIRST EPSS
- GHSA-g9xj-752q-xh63 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences