CVE-2026-47399: PraisonAI Platform workspace-scoped routes allow cross-workspace object access by global object ID
PraisonAI Platform’s workspace-scoped REST routes contain a systemic object-level authorization flaw that allows an authenticated user from one workspace to access, modify, and delete objects belonging to another workspace by supplying the victim object’s global UUID.
The affected pattern appears in workspace-scoped routes such as agents, projects, issues, and comments. The route layer verifies that the caller is a member of the workspace_id provided in the URL, but the service layer later resolves the target object by global object ID only. It does not verify that the resolved object actually belongs to the workspace in the URL.
As a result, a valid member of workspace_attacker can call a route under:
/api/v1/workspaces/{workspace_attacker}/...
while supplying an object UUID from workspace_victim. The server authorizes the request based on membership in workspace_attacker, then fetches or mutates the victim object by global UUID.
This breaks the platform’s workspace isolation boundary.
References
Code Behaviors & Features
Detect and mitigate CVE-2026-47399 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →