Skip to main content

Plane CVE-2026-105633

| EUVDEUVD-2026-92547 HIGH
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-10-05 GitHub_M
7.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege project member
  2. Exploit
    Obtain victim's pending attachment pk UUID
  3. Execution
    Send PATCH with attacker-controlled issue_id and victim pk
  4. Impact
    Server reassigns created_by, hijacking attachment ownership

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

Requires an authenticated account that is a member of the target Plane project (PR:L), so this is not remote-unauthenticated. The attacker must target an attachment that is still in the PENDING state (not yet confirmed as uploaded) - confirmed attachments are unaffected - and must know the victim attachment's pk UUID, since the server matches on pk, workspace, and project_id. These factors (authenticated project membership, the narrow pending-upload window, and the need for an unguessable UUID) materially limit realistic exploitation despite the network attack vector. No special non-default configuration is needed; the flaw is present in the default V2 issue-attachment PATCH endpoint in versions prior to 1.4.0.

Impact

This is a genuine but moderate-priority authorization flaw (CWE-639, insecure direct object reference). The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L, base 7.1) is consistent with the description: a network-reachable API endpoint, low complexity, and an authenticated low-privilege project member required (PR:L). There is no confidentiality impact (C:N) because the bug reassigns attachment ownership rather than disclosing content; integrity is rated high (I:H) and availability low (A:L) reflecting unauthorized modification and loss of ownership for the legitimate user. No EPSS score was supplied and the CVE is NOT on CISA KEV, so there is no evidence of active exploitation - status is 'no public exploit identified at time of analysis'. A key mitigating nuance the raw CVSS does not capture: exploitation is limited to attachments still in the PENDING (not-yet-confirmed-uploaded) state and requires the attacker to know the target attachment's pk UUID, which is not easily enumerable. The vendor fix commit and PR diff are public, which lowers the bar for a patch-diffing attacker even though no weaponized POC is published. Overall this is a legitimate authorization bug worth patching but not an emergency; the 7.1 score slightly overstates practical risk given the pending-only window and UUID prerequisite.

Exploit ScenarioDerived

An authenticated low-privilege member of a Plane project learns or obtains the pk UUID of another user's attachment that is still in the pending (unconfirmed-upload) state. The attacker sends a V2 issue-attachment PATCH request supplying an issue_id they control in the URL but the victim's attachment pk, and because the server matches only pk, workspace, and project_id, it reassigns created_by to the attacker, transferring ownership. No public POC is identified, though the fix commit and PR diff are publicly available.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 05, 2026

An insecure direct object reference (IDOR) in Plane prior to 1.4.0 lets an authenticated member of a project reassign ownership of another user's issue attachment by supplying a pk UUID in the V2 issue-attachment PATCH request. Because the endpoint validates only pk, workspace, and project_id while ignoring the issue_id present in the URL, an attacker with project membership (CVSS PR:L, network vector) can target any attachment still in the PENDING, not-yet-confirmed upload state and set created_by to their own account, thereby taking control of it; confirmed attachments are unaffected, and exploitation also requires knowing the victim's unguessable UUID. The flaw is a genuine but moderate-priority authorization issue (CWE-639) with no public exploit identified at time of analysis, and it is fixed in the vendor's 1.4.0 release.

RemediationAI

Vendor-released patch: 1.4.0 - upgrade Plane to v1.4.0 or later, which adds issue_id to the FileAsset lookups and removes the created_by reassignment (see https://github.com/makeplane/plane/releases/tag/v1.4.0, PR #9315, and commit 5829f0febf0739494d576b60d4943d10d236bc96; advisory GHSA-5mxw-g5mw-3v3w). Because the exploitation window is narrow - the attacker must be an authenticated project member and must know the victim attachment's UUID while it is still pending - organizations that cannot immediately upgrade should treat project membership as a trust boundary: audit and minimize membership in projects handling sensitive files, and monitor server logs for PATCH requests to issue-attachment routes where the URL issue_id does not correspond to the attachment's actual issue, since that mismatch is the signature of this abuse. Temporarily disabling the V2 issue-attachment PATCH/POST flow or restricting attachment uploads to administrators would close the vector but breaks normal issue-file workflows and the pending-upload confirmation step, so use it only as a short-term containment measure. Rotating or re-verifying ownership of any attachments that were in a pending state during the exposure window is advisable, as ownership may have been silently reassigned.

Affected VersionsENISA

plane < 1.4.0

Affected Packages

euvd plane fix: 1.4.0

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 an open-source project management tool whose Django-based API stores issue files in a FileAsset model. The V2 issue-attachment PATCH view (apps/api/plane/app/views/issue/attachment.py) looked up the target record with FileAsset.objects.get(pk=pk, workspace__slug=slug, project_id=project_id), scoping the query by primary key, workspace, and project but omitting the issue_id that appears in the route. This is a classic CWE-639 authorization bypass through user-controlled key / IDOR: the URL-provided issue_id was never enforced against the object actually returned, so any attachment within the same workspace and project could be reached through an issue the attacker legitimately controls. The handler then compounded the exposure by assigning issue_attachment.created_by = request.user, transferring ownership whenever the attachment was in the pending state and had not been confirmed as uploaded. The upstream fix adds issue_id=issue_id to the PATCH, GET, POST, and DELETE lookups and removes the created_by reassignment entirely, ensuring ownership is fixed at creation time.

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

Vendor (GitHub_M) PRIMARY 7.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
vuln.today AI 7.1 HIGH

Network API, low complexity, but an authenticated project member is required (PR:L); unauthorized ownership reassignment yields I:H with A:L for the victim and no data disclosure (C:N).

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
Low

Lifecycle Timeline

2
Patch available
Oct 05, 2026 - 19:02 EUVD
CVE Published
Oct 05, 2026 - 17:58 cve.org
HIGH 7.1

DescriptionCVE.org

Plane is an open-source project management tool. Prior to 1.4.0, the V2 issue-attachment PATCH endpoint accepts issue_id in the URL but omits it from the database query. A project member can use an issue_id they control in the URL while targeting another user's attachment by its pk UUID. Because the server matches only pk, workspace, and project_id, it modifies the attachment regardless of the issue_id in the URL. When the attachment is pending and has not been confirmed as uploaded, the PATCH handler sets created_by = request.user and transfers attachment ownership to the attacker. This issue is fixed in 1.4.0.

Technical POC Analysis

CWE-639, Authorization Bypass Through User-Controlled Key.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Plane, the project-management platform used by internal teams, ships with an authorization weakness that lets an authenticated project member take ownership of a colleague's file attachment while that upload is still pending confirmation. The exposure is confined to not-yet-confirmed attachments and requires both routine project access and knowledge of an unguessable identifier, so broad opportunistic exploitation is unlikely - the credible threat is insider misuse or abuse of a compromised account against teams that store sensitive material in Plane. Leadership should care because the flaw undermines the ownership guarantees teams rely on for document custody, and remediation depends on completing a version upgrade that the provided patch field does not yet reflect as released.

Business Impact: Medium
Compensating Controls

Apply vendor patch (upgrade to Plane 1.4.0). If the upgrade cannot be completed immediately, restrict project membership to vetted users, disable or defer file attachment uploads on affected instances, log and alert on V2 issue-attachment PATCH requests and on any change to an attachment's created_by field, and rotate or review accounts with broad project access.

Threat Intelligence Overview

EPSS Score
0.3%
Top 79% exploitable
Prevalence
Medium
popular open-source self-hosted project management tool, moderate real-world adoption
Data Quality
5 sources
Confidence: Medium
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in Plane

View all
CVE-2026-46558 HIGH POC
8.3 Jun 10

Cross-workspace authorization bypass in Plane (makeplane) prior to version 1.3.1 allows any authenticated user of one wo

CVE-2023-2268 HIGH POC
7.5 Jul 15

Plane version 0.7.1 allows an unauthenticated attacker to view all stored server files of all users. Rated high severity

CVE-2026-105636 CRITICAL
9.9 Oct 05

Authenticated users who can create a workspace in Plane can force the application's background worker to fetch internal-

CVE-2026-105641 CRITICAL
9.8 Oct 05

Unauthenticated remote attackers can forge Django-signed session cookies, CSRF tokens, and password-reset tokens, and by

CVE-2026-105639 CRITICAL
9.8 Oct 05

Workspace invitation hijacking in Plane prior to 1.4.0 lets an unauthenticated attacker take over a pending workspace in

CVE-2024-47830 MEDIUM POC
5.8 Oct 11

Plane is an open-source project management tool. Rated medium severity (CVSS 5.8), this vulnerability is remotely exploi

CVE-2026-111869 MEDIUM POC
5.5 Oct 18

Plane (makeplane/plane) through version 1.4.2 makes security decisions based on the client-supplied X-Forwarded-For head

CVE-2026-105637 CRITICAL
9.6 Oct 05

Improper authorization in Plane before 1.4.0 lets an authenticated workspace Guest hijack file assets from other project

CVE-2026-105640 CRITICAL
9.1 Oct 05

Account takeover in Plane (makeplane) versions prior to 1.4.0 allows remote unauthenticated attackers to log in as exist

CVE-2026-105638 CRITICAL
9.1 Oct 05

Brute-forceable magic-code email login in Plane versions prior to 1.4.0 allows unauthenticated remote attackers to guess

CVE-2026-104976 HIGH
8.7 Oct 05

Server-side request forgery in Plane, the open-source project management tool, allows a low-privilege user of a connecte

CVE-2026-104966 HIGH
8.7 Oct 05

Authenticated cross-workspace access control bypass in Plane (makeplane/plane) before version 1.4.0 lets any user with a

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy