Servers and applications
GHSA-vg9f-347r-pmqf
CSRF on OAuth Authorization Endpoint
- Severity
- Medium 5.4
- Published
- 12 Nov 2026
- Last changed
- 12 Nov 2026
- Added to UpHeron
- 12 Nov 2026
- Fixed in
- 0.31.1
- Attack
- Over the network · No login needed · Needs someone to click or open something
- Attacker can
- Read some data · Change some data
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N- Sources
- Project advisories (GitHub)
Description
Gitea OAuth authorization endpoint lacks CSRF token validation and Origin checking, allowing an attacker to bind arbitrary Gitea accounts to victim's Dokploy instance.
- File: apps/dokploy/pages/api/providers/gitea/authorize.ts:4-36
- Function: handler (Next.js API route)
The /api/providers/gitea/authorize endpoint accepts a giteaId query parameter and immediately redirects the user to the Gitea OAuth authorization URL. There is no CSRF token generation or validation, no Origin/Referer header checking, and the state parameter is set to the Gitea provider ID rather than a random nonce. This allows an attacker to craft a malicious link that initiates OAuth flow for an attacker-controlled Gitea instance.
- Preconditions: Victim must have a Dokploy session (be logged in)
- Entry point: GET /api/providers/gitea/authorize?giteaId=VICTIM_ID&callbackUrl=http://evil.com
- Target: Victim's Dokploy OAuth configuration
Affected software
| Software | Affected versions |
|---|---|
DokployServers and applications · github:dokploy/dokploy |
|
References
- GitHub Advisory Database https://github.com/advisories/GHSA-vg9f-347r-pmqf
- github.com https://github.com/Dokploy/dokploy/security/advisories/GHSA-vg9f-347r-pmqf