Server-side request forgery in Plane Gitea OAuth
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · Low
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA.
Summary
Plane before 1.4.0 validates the GITEA_HOST setting only for its URL scheme, so hosts that resolve to private or internal addresses are accepted (CWE-918). A low-privileged Gitea user can set an internal URL as their profile avatar, and Plane fetches that URL during Gitea OAuth login once an administrator has enabled Gitea OAuth.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
Description from the CNA
Plane is an open-source project management tool. Prior to 1.4.0, Plane validates GITEA_HOST only for its URL scheme and does not reject hosts that resolve to private or internal IP addresses. The four outbound requests in the Gitea OAuth flow are derived from this unvalidated host and do not call validate_url(). In addition, avatar_url is taken from the Gitea user's profile, where users can configure external avatar URLs. After an administrator enables Gitea OAuth for a legitimate instance, a Gitea user can set an internal URL as the profile avatar and log in through Gitea, causing Plane to fetch the internal target without validation. This issue is fixed in 1.4.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- 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
Remediation
Upgrade Plane to version 1.4.0, which fixes this issue.
Written with Claude Haiku 5.5 from the sources below · 2026-10-29
- Fix · CNA plane (makeplane) Fixed in 1.4.0
Timeline
- 2026-10-05 Threatist record created from CVE-2026-104976
- 2026-10-06 CISA SSVC decision points changed
- 2026-10-06 Priority changed: MEDIUM → LOW
References
More makeplane vulnerabilities
- TI-2026-67866 Hardcoded secret keys in Plane community deployments CVSS 3.1CRITICAL 9.8
- TI-2026-67865 Account takeover in Plane via unverified OAuth email matching CVSS 3.1CRITICAL 9.1
- TI-2026-67863 Plane magic-code login lacks rate limiting, allowing OTP brute force CVSS 3.1CRITICAL 9.1
- TI-2024-32097 Plane allows server side request forgery via /_next/image endpoint CVSS 3.1CRITICAL 9.3
- TI-2026-67862 Cross-project asset hijacking in Plane allows file takeover CVSS 3.1CRITICAL 9.6
- TI-2026-67861 Server-side request forgery in Plane webhook delivery via redirects CVSS 3.1CRITICAL 9.9
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences