Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to own Plane workspace
-
ExploitObtain issue UUID from another workspace
-
ExecutionSend module-link request with foreign UUID
-
ImpactCross-tenant issue linked into attacker's module
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | The attacker must hold a valid authenticated account in at least one Plane workspace (PR:L) and must know a specific issue UUID belonging to a victim workspace, since the vulnerable modules/cycle/relation/sub-issue endpoints accept issue UUIDs in the URL path without validating workspace ownership. The decisive limiting factor is that Plane issue identifiers are random 128-bit UUIDs that are not enumerable or guessable, so an attacker generally needs prior knowledge of the target UUID (e.g., from a former workspace membership, leaked link, or shared instance). Impact is confined to improper linking of foreign issues into the attacker's modules (integrity-only); there is no data disclosure or denial of service. Only instances running versions prior to 1.4.0 are affected. |
| Impact | All signals point to a genuinely low-priority, low-severity issue. The provided CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N, base 4.3) describes a network-reachable but authenticated (PR:L) flaw with no confidentiality or availability impact and only low integrity impact - consistent with the CWE-639 authorization/IDOR classification. It is NOT a KEV entry, so there is no confirmed active exploitation, and no EPSS score was supplied to gauge exploitation probability. No proof-of-concept exploit was provided; the only code artifact is the vendor's fix PR (#9269), which is a patch, not weaponized exploit code, so this should be treated as 'no public exploit identified at time of analysis.' The CVSS vector and the description are mutually consistent (authenticated API abuse), so there is no network-vs-local conflict to resolve. The one practical caveat is that exploitation requires knowledge of 128-bit issue UUIDs from other workspaces, which the scalar CVSS score does not capture and which further limits real-world impact. Bottom line: a real but minor multi-tenant authorization gap, appropriate for routine patching rather than emergency response. |
| Exploit ScenarioDerived | An authenticated user on a shared or multi-tenant Plane instance obtains an issue UUID belonging to a different workspace and sends a crafted request to the modules endpoint referencing that foreign UUID. Because the endpoint did not verify the issue belonged to the caller's workspace, the foreign issue becomes linked to a module in the attacker's own workspace. No public exploit code was identified; the only available code is the vendor's remediation PR. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 05, 2026
Authenticated cross-workspace issue linking in Plane versions prior to 1.4.0 lets a user who holds a valid account in any workspace attach issues belonging to a different workspace to modules, cycles, relations, or sub-issues inside their own workspace by passing foreign issue UUIDs in the URL path. The flaw is an object-reference authorization gap (CWE-639) scored CVSS 4.3 with integrity-only impact (I:L, C:N, A:N); it requires knowledge of a specific victim issue UUID, which Plane generates as a non-enumerable 128-bit identifier, making practical exploitation opportunistic rather than broad. No public exploit code has been identified at time of analysis, and CISA KEV does not list this CVE; a vendor-released patch exists in Plane 1.4.0.
RemediationAI
Upgrade Plane to 1.4.0 or later; this is the vendor-released patch and it introduces workspace-scoped (and workspace-plus-project-scoped) queryset filtering on the module, cycle, relation, and sub-issue linking endpoints, closing the cross-tenant IDOR. The change set is visible in PR https://github.com/makeplane/plane/pull/9269 and commit https://github.com/makeplane/plane/commit/81d9873d7f1cf1d1252ed53c12dd33696be73a89, with release notes at https://github.com/makeplane/plane/releases/tag/v1.4.0 and advisory details at https://github.com/makeplane/plane/security/advisories/GHSA-x5c5-hmvm-94v9. If immediate upgrade is not possible, compensating controls are limited and carry trade-offs: restrict API access to trusted networks or VPN and require strong per-user authentication so that untrusted accounts cannot reach the affected endpoints (reduces external exposure but does not help against already-authenticated malicious insiders); rotate or invalidate workspace invitations and remove accounts of departed users so that stale UUID knowledge is less likely to persist (administrative overhead, no code-level protection); and monitor or audit module/cycle/sub-issue creation logs for issue IDs originating from unrelated workspaces, using the fixed workspace__slug filtering logic as the detection rule (detective only, and noisy in large multi-workspace instances). There is no configuration flag that disables the vulnerable behavior while retaining the affected linking features, so patching remains the only complete fix.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Plane is a Django/Django-REST-Framework project management platform whose API exposes issue-manipulation endpoints under workspace slugs and project IDs. The vulnerable code paths load related objects through the Issue.issue_objects manager using only the client-supplied primary keys (pk__in=...) without constraining the queryset to the caller's workspace (workspace__slug=slug) or project, the classic CWE-639 Authorization Bypass Through User-Controlled Key / IDOR pattern. The upstream fix in PR 9269 adds workspace-scoped (and in some handlers workspace-plus-project-scoped) filtering across multiple views - apps/api/plane/api/views/cycle.py, apps/api/plane/api/views/issue.py, apps/api/plane/app/views/cycle/issue.py, apps/api/plane/app/views/issue/relation.py, apps/api/plane/app/views/issue/sub_issue.py, and apps/api/plane/app/views/module/issue.py - indicating the same missing-tenant-check class affected module, cycle, issue-relation, and sub-issue linking, not just the modules endpoint named in the advisory. The CPE cpe:2.3:a:makeplane:plane:*:*:*:*:*:*:*:* covers all Plane releases below 1.4.0. Because the attacker-supplied key is a random UUID rather than a sequential integer, exploitation depends on prior knowledge of a valid foreign issue identifier (for example from a former workspace membership or a leaked link), and the resulting effect is limited to creating unauthorized associations, not reading or altering victim data.
Know when Plane gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
Authenticated API abuse over the network (AV:N/PR:L/UI:N); integrity-only impact from improper cross-tenant linking (I:L) with no confidentiality or availability effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Plane is an open-source project management tool. Prior to 1.4.0, the modules endpoint accepts issue UUIDs in the URL path without validating that they belong to the caller's workspace. An authenticated user can link issues from any workspace to modules in their own workspace. This issue is fixed in 1.4.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Cross-workspace authorization bypass in Plane (makeplane) prior to version 1.3.1 allows any authenticated user of one wo
Plane version 0.7.1 allows an unauthenticated attacker to view all stored server files of all users. Rated high severity
Authenticated users who can create a workspace in Plane can force the application's background worker to fetch internal-
Unauthenticated remote attackers can forge Django-signed session cookies, CSRF tokens, and password-reset tokens, and by
Workspace invitation hijacking in Plane prior to 1.4.0 lets an unauthenticated attacker take over a pending workspace in
Plane is an open-source project management tool. Rated medium severity (CVSS 5.8), this vulnerability is remotely exploi
Plane (makeplane/plane) through version 1.4.2 makes security decisions based on the client-supplied X-Forwarded-For head
Improper authorization in Plane before 1.4.0 lets an authenticated workspace Guest hijack file assets from other project
Account takeover in Plane (makeplane) versions prior to 1.4.0 allows remote unauthenticated attackers to log in as exist
Brute-forceable magic-code email login in Plane versions prior to 1.4.0 allows unauthenticated remote attackers to guess
Server-side request forgery in Plane, the open-source project management tool, allows a low-privilege user of a connecte
Authenticated cross-workspace access control bypass in Plane (makeplane/plane) before version 1.4.0 lets any user with a
EUVD-2026-92477
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB