CVE-2026-48169: CWE-639: Authorization Bypass Through User-Controlled Key in MervinPraison praisonai-platform
PraisonAI is a multi-agent teams system. Versions prior to 0.1.4 of the PraisonAI Platform API have two authorization failures that together break workspace isolation. The service layer for issues and projects performs global primary-key lookups without checking workspace ownership, so any authenticated user can read, modify, and delete resources in any workspace just by swapping UUIDs in their API requests. On top of that, every member management endpoint (add, update role, remove) only requires `min_role="member"`, which lets any workspace member promote themselves to owner and kick out the original owner. A low-privilege member of one workspace can steal data from every other workspace and take over any workspace they belong to. Both issues come from the same gap: the route layer pulls `workspace_id` from the URL and verifies membership, but the service layer ignores the workspace scope for resource lookups and ignores the caller's role level for member operations. The `require_workspace_member()` dependency does its job correctly. The problem is that the service layer doesn't use the information it provides. Version 0.1.4 of the PraisonAI Platform API patch the issue.
AI Analysis
Technical Summary
The vulnerability in PraisonAI Platform API (before version 0.1.4) consists of two authorization bypass issues. First, the service layer for issues and projects performs global primary-key lookups without validating workspace ownership, enabling authenticated users to read, modify, or delete resources in any workspace by swapping UUIDs in API requests. Second, member management endpoints only require a minimum role of 'member' to perform critical actions such as adding, updating roles, or removing members, allowing any workspace member to escalate their privileges to owner and remove the original owner. The root cause is that while the route layer verifies workspace membership, the service layer ignores workspace scope and caller role checks. These combined flaws allow low-privilege members to steal data from and take over any workspace they belong to. The issue is fixed in version 0.1.4.
Potential Impact
An attacker with low privileges in one workspace can access, modify, and delete data in any workspace by manipulating resource identifiers. They can also escalate their privileges within any workspace they belong to by promoting themselves to owner and removing the original owner. This breaks workspace isolation and compromises confidentiality, integrity, and availability of workspace data and membership controls.
Mitigation Recommendations
Upgrade to PraisonAI Platform API version 0.1.4 or later, which patches these authorization bypass issues. No other mitigation is indicated as the fix addresses the root cause in the service layer authorization logic.
CVE-2026-48169: CWE-639: Authorization Bypass Through User-Controlled Key in MervinPraison praisonai-platform
Description
PraisonAI is a multi-agent teams system. Versions prior to 0.1.4 of the PraisonAI Platform API have two authorization failures that together break workspace isolation. The service layer for issues and projects performs global primary-key lookups without checking workspace ownership, so any authenticated user can read, modify, and delete resources in any workspace just by swapping UUIDs in their API requests. On top of that, every member management endpoint (add, update role, remove) only requires `min_role="member"`, which lets any workspace member promote themselves to owner and kick out the original owner. A low-privilege member of one workspace can steal data from every other workspace and take over any workspace they belong to. Both issues come from the same gap: the route layer pulls `workspace_id` from the URL and verifies membership, but the service layer ignores the workspace scope for resource lookups and ignores the caller's role level for member operations. The `require_workspace_member()` dependency does its job correctly. The problem is that the service layer doesn't use the information it provides. Version 0.1.4 of the PraisonAI Platform API patch the issue.
CVSS v3.1
Score 8.8high
Affected software
MervinPraison
praisonai-platform
pkg:github/mervinpraison/praisonai-platformRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in PraisonAI Platform API (before version 0.1.4) consists of two authorization bypass issues. First, the service layer for issues and projects performs global primary-key lookups without validating workspace ownership, enabling authenticated users to read, modify, or delete resources in any workspace by swapping UUIDs in API requests. Second, member management endpoints only require a minimum role of 'member' to perform critical actions such as adding, updating roles, or removing members, allowing any workspace member to escalate their privileges to owner and remove the original owner. The root cause is that while the route layer verifies workspace membership, the service layer ignores workspace scope and caller role checks. These combined flaws allow low-privilege members to steal data from and take over any workspace they belong to. The issue is fixed in version 0.1.4.
Potential Impact
An attacker with low privileges in one workspace can access, modify, and delete data in any workspace by manipulating resource identifiers. They can also escalate their privileges within any workspace they belong to by promoting themselves to owner and removing the original owner. This breaks workspace isolation and compromises confidentiality, integrity, and availability of workspace data and membership controls.
Mitigation Recommendations
Upgrade to PraisonAI Platform API version 0.1.4 or later, which patches these authorization bypass issues. No other mitigation is indicated as the fix addresses the root cause in the service layer authorization logic.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-05-20T23:12:43.033Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6a76512cbf8831d5393521f4
Added to database: 08/07/2026, 21:42:04 UTC
Last enriched: 08/15/2026, 15:10:25 UTC
Last updated: 09/22/2026, 01:52:43 UTC
Views: 65
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.