Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-104960— Plane: Authorization bypass in workspace-scoped asset download endpoint exposes secret project file assets to non-project workspace users

Quick assessment

Affected
makeplane plane
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Plane 是一款开源的项目管理工具。在 1.4.0 版本之前,Plane 会暴露一个工作区范围(workspace-scoped)的 GET 接口 ,用于下载与项目绑定的 FileAsset 对象,但并未验证访问者是否拥有该资产所属项目的访问权限。 攻击者只要满足以下条件: 1. 已认证成功; 2. 与受害者属于同一工作区(workspace); 3. 并非受害者私有(secret)项目的成员; 4. 知道目标资产的 UUID; 即可触发一个 HTTP 302 重定向,指向一个带有签名的下载链接,从而获取该私有资

CVSS 6.5 · Medium

Possible ATT&CK Techniques 1 AI

T1530 · Data from Cloud Storage
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-104960

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Plane: Authorization bypass in workspace-scoped asset download endpoint exposes secret project file assets to non-project workspace users
Source: CVE Program / CVE List V5
Vulnerability Description
Plane is an open-source project management tool. Prior to 1.4.0, Plane exposes the workspace-scoped GET /api/assets/v2/workspaces/{workspace_slug}/download/{asset_id}/ endpoint for project-bound FileAsset objects without enforcing access to the asset's owning project. An authenticated user who belongs to the same workspace, is not a member of the victim's secret project, and knows the target asset UUID can receive a 302 redirect to a signed download URL. The intended project-scoped route for the same asset correctly returns 403. Confirmed affected project-bound asset types are ISSUE_ATTACHMENT, COMMENT_DESCRIPTION, PAGE_DESCRIPTION, and PROJECT_COVER. This bypass exposes private file content protected by the secret project boundary. This issue is fixed in 1.4.0.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
通过用户控制密钥绕过授权机制
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
makeplane plane < 1.4.0 -

II. Public POCs for CVE-2026-104960

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-104960

请登录查看更多情报信息。

Other References for CVE-2026-104960 (4)

Same Patch Batch · makeplane · 2026-10-05 · 38 CVEs total

CVE-2026-105636 9.9 CRITICAL Plane: SSRF via HTTP redirect in webhook delivery (allow_redirects not set)
CVE-2026-105639 9.8 CRITICAL Plane: Pre-auth workspace invitation hijack via email-squat and self-served invitation tok
CVE-2026-105641 9.8 CRITICAL Plane: Hardcoded SECRET_KEY and LIVE_SERVER_SECRET_KEY shipped in aio/cli community deploy
CVE-2026-105637 9.6 CRITICAL Plane: Cross-Project Asset Hijacking via 'ProjectBulkAssetEndpoint' (sibling of CVE-2026-4
CVE-2026-105638 9.1 CRITICAL Plane: Magic-code verifier endpoint has no rate limit, enabling 6-digit OTP brute force
CVE-2026-105640 9.1 CRITICAL Plane: Account Takeover via Unverified OAuth Email Match (Gitea, self-managed GitLab)
CVE-2026-104968 8.7 HIGH Plane: Cross-workspace member enumeration via /api/workspaces/{slug}/entity-search/
CVE-2026-105630 8.7 HIGH Plane: Stored XSS via SVG attachment served inline on the application origin (account take
CVE-2026-105632 8.7 HIGH Plane: Broken Access Control - joinProject GraphQL mutation allows self-join into private
CVE-2026-104979 8.7 HIGH Plane: Cross-tenant stored XSS in intake enables account takeover
CVE-2026-104976 8.7 HIGH Plane: SSRF in Gitea OAuth
CVE-2026-104966 8.7 HIGH Plane: Cross-Workspace IDOR in Estimate and Comment Endpoints Allows Read, Modify, and Inj
CVE-2026-104892 8.7 HIGH Plane: Plaintext logging of API token
CVE-2026-104971 8.5 HIGH Plane: Cross-Workspace Asset Duplication IDOR + WorkspaceFileAssetEndpoint and FileAssetEn
CVE-2026-104978 8.2 HIGH Plane: Invitation Hijack in Project Join Flow via Missing Authorization and Email-Only Acc
CVE-2026-105634 8.1 HIGH Plane: Privilege Escalation: Project Guest Can Demote Admin/Member Roles
CVE-2026-104974 8.1 HIGH Plane: Disabled User Auto-Reactivation on Login
CVE-2026-104970 8.1 HIGH Plane: InstanceAdminSignUpEndpoint TOCTOU race allows two concurrent unauthenticated calle
CVE-2026-104977 7.7 HIGH Plane: Incomplete fix of CVE-2026-27706 — SSRF still reachable on: missing is_blocked_ip (
CVE-2026-105628 7.6 HIGH Plane: OAuth Avatar Redirect SSRF Leads to Internal Data Exfiltration via Static Asset End

Showing top 20 of 38 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-104960

No comments yet


Leave a comment