CVE-2026-102981
6.5MediumPublished 13 Oct 2026 · NVD status: Deferred · AI triage by gemini-3.8-flash
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
- Impact
- Limited impact
- Weakness
- CWE-200, CWE-639
Impact
Unauthenticated attackers can steal pending invitation tokens and join workspaces with the role assigned to that invite. They only need network access to the self-hosted Plane instance.
Root cause
The WorkspaceJoinEndpoint serializer leaks the secret invitation token and full invite link in response to unauthenticated GET requests.
Affected systems
Plane prior to version 1.4.0
CVSS v3.1 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Fix & remediation
Upgrade self-hosted Plane to version 1.4.0 or later. If patching immediately is not possible, block unauthenticated access to the endpoint path api/workspaces/*/invitations/*/join/ at your reverse proxy.
AI-suggested. Run it in staging first and check it against the vendor advisory. Why?
NVD description
Plane is an open-source project management tool. Prior to 1.4.0, self-hosted Plane deployments allow unauthenticated GET requests to api/workspaces/{slug}/invitations/{pk}/join/ through WorkspaceJoinEndpoint, whose WorkSpaceMemberInviteSerializer exposes the secret invitation token directly and through get_invite_link. An external attacker can retrieve a token intended for another user and submit it to the invitation acceptance flow, joining the workspace without receiving the invitation and gaining the role assigned to the invite. This issue is fixed in version 1.4.0.