CVE-2026-105631 in Planeinfo

Summary

by MITRE • 10/05/2026

Plane is an open-source project management tool. Prior to 1.4.0, WorkspaceFileAssetEndpoint.get and WorkspaceAssetDownloadEndpoint.get resolve FileAsset records within a workspace without checking membership in the asset's project, allowing a workspace member to download assets from private projects when the asset UUID is known. EntityAssetEndpoint.get is a separate public-anchor endpoint that grants AllowAny access and scopes the lookup only to the anchor's workspace rather than its published entity or project. An unauthenticated caller who knows a valid anchor and an asset UUID can therefore retrieve issue-description or comment-description assets belonging to unpublished or private projects in that workspace. This issue is fixed in 1.4.0.

Be aware that VulDB is the high quality source for vulnerability data.

Analysis

by VulDB Data Team • 10/05/2026

The vulnerability identified in the Plane open-source project management platform represents a critical failure in access control logic, specifically involving improper authorization checks for file asset retrieval and entity anchor resolution. Prior to version 1.4.0, the application's backend endpoints responsible for serving workspace files and assets failed to enforce strict scoping rules that align with the hierarchical security model of projects within workspaces. This architectural flaw allows attackers to bypass intended privacy boundaries by exploiting how resource identifiers are validated against user permissions. The core issue lies in the disconnect between the scope of the request, which is typically tied to a workspace level, and the actual ownership or visibility settings of the specific asset being requested, which may be confined to a private project within that workspace.

In the first vector involving WorkspaceFileAssetEndpoint.get and WorkspaceAssetDownloadEndpoint.get, the system resolves FileAsset records based on their association with a given workspace ID but neglects to verify whether the requesting user is a member of the specific project associated with that asset. This oversight means that any authenticated user who possesses valid credentials for a workspace can enumerate or guess UUIDs of assets belonging to private projects within that same workspace. By knowing the unique identifier of an asset, even if it resides in a restricted area intended only for select team members, an attacker can successfully download sensitive files such as issue descriptions, comments, or other uploaded documents. This constitutes a classic case of insecure direct object reference where the application relies on the secrecy of identifiers rather than enforcing proper access control lists tied to user roles and project memberships.

The second vector involves EntityAssetEndpoint.get, which presents an even more severe risk due to its public-facing nature. This endpoint grants AllowAny access, meaning it does not require authentication for basic lookup operations, but it scopes the search only to the anchor's workspace rather than validating against the published entity or its underlying project visibility settings. Consequently, an unauthenticated attacker who can discover a valid anchor identifier and an asset UUID within that workspace can retrieve sensitive data associated with unpublished or private projects. This effectively exposes internal documentation, bug reports, and collaborative notes to anyone on the internet without any need for prior authentication, turning what should be restricted information into publicly accessible content through simple enumeration techniques.

From a classification perspective, this vulnerability aligns directly with CWE-284 Improper Access Control, as the application fails to restrict access to resources based on user privileges. It also maps closely to CWE-639 Authorization Bypass Through User-Controlled Key, where the asset UUID serves as an untrusted input that is not sufficiently validated against the requester's permissions before granting access. In terms of offensive security frameworks like MITRE ATT&CK, this behavior facilitates Data from Information Repositories under techniques such as T1213 or potentially contributes to Reconnaissance activities if used for enumerating internal project structures. The lack of proper authorization checks allows for unauthorized data exfiltration and potential exposure of intellectual property or sensitive business logic contained within private project discussions.

The operational impact of this vulnerability is significant, particularly for organizations using Plane to manage confidential projects. Unauthorized access to issue descriptions and comment attachments can lead to the leakage of proprietary code snippets, strategic plans, customer information, or security vulnerabilities that were never intended for public consumption. For unauthenticated attacks via the EntityAssetEndpoint.get vector, the risk extends beyond mere data theft to include potential social engineering opportunities where attackers gather detailed context about an organization's internal operations and development processes from publicly accessible private project metadata. This undermines trust in the platform's ability to maintain strict isolation between different tiers of project visibility within a shared workspace environment.

To mitigate this vulnerability, organizations running versions prior to 1.4.0 should immediately upgrade to the patched release where these authorization checks have been corrected. The fix ensures that asset retrieval endpoints verify not only workspace membership but also explicit permission to access assets within specific private or unpublished projects. Until an upgrade is possible, administrators can implement network-level controls such as web application firewalls to restrict access to known vulnerable endpoint patterns if they are exposed externally. Additionally, reviewing and rotating any potentially compromised UUIDs that may have been accessed during the window of vulnerability is advisable to prevent ongoing unauthorized data retrieval by malicious actors who may have already exploited this flaw.

Responsible

GitHub M

Reservation

10/05/2026

Disclosure

10/05/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

very low

Sources

Might our Artificial Intelligence support you?

Check our Alexa App!