CVE-2026-47399 json
PraisonAI Platform workspace-scoped routes allow cross-workspace object access by global object ID
published 2026-05-29 5 mo ago modified 2026-10-24 15 d ago also EUVD-2026-46313 , GHSA-6h6v-6m7w-7vxx , PYSEC-2026-2930
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 30%
- public exploits
- 0
- none known
Summary
PraisonAI Platform is the platform layer for the PraisonAI multi-agent teams system. Prior to version 0.1.4, the 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. PraisonAI Platform version 0.1.4 patches the issue.
Patch / fix
- pypi praisonai-platform 0.1.4
- praison praisonai-platform 0.1.4
- github.com/MervinPraison/PraisonAI@24385d6 commit
- github.com/MervinPraison/PraisonAI#1686 pull request
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 3 mo ago
Exploit prediction
0.36% chance of exploitation in the next 30 days, higher than 30% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-6h6v-6m7w-7vxx referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| OSV | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | praisonai-platform | <0.1.4 |
0.1.4 |
Affected products
- MervinPraison praisonai-platform
Classification
References
- github.com /MervinPraison/PraisonAI/pull/1686
- github.com /MervinPraison/PraisonAI/commit/24385d64876577620f749957bd4814f162f4ca47
-
github.com
/MervinPraison/PraisonAI/security/advisories/GHSA-6h6v-6m7w-7vxx
exploit, web
-
github.com
/MervinPraison/PraisonAI
package
-
pypi.org
/project/praisonai-platform
package
-
github.com
/advisories/GHSA-6h6v-6m7w-7vxx
advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-47399
advisory
Sources
- CVE List CVE-2026-47399
- GitHub Advisory GHSA-6h6v-6m7w-7vxx
- NVD CVE-2026-47399
- OSV PYSEC-2026-2930
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.