CVE-2026-47418 praisonai-platform: Project endpoints accept any project_id without workspace ownership check, cross-workspace read/update/delete IDOR
Attackers can read, modify, or delete projects across different workspaces due to missing ownership checks on project endpoints.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-47418?
CVE-2026-47418 is a high-severity missing authorization vulnerability in MervinPraison praisonai-platform, published on 21 Jul 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
PraisonAI Platform is the platform layer for the PraisonAI multi-agent teams system. Versions prior to 0.1.4 have an Insecure Direct Object Reference. The project CRUD endpoints (`GET / PATCH / DELETE /workspaces/{workspace_id}/projects/{project_id}` and `GET .../{project_id}/stats`) gate access on `require_workspace_member(workspace_id)` only, then resolve `project_id` through `ProjectService.get(project_id)` / `update(project_id, ...)` / `delete(project_id)` / `get_stats(project_id)`. None of these calls thread `workspace_id` through to constrain the lookup. A user who is a member of any workspace `W1` can read, modify, delete, or read stats for projects that belong to a different workspace `W2`. PraisonAI Platform version 0.1.4 patches the issue.
Weakness: CWE-639
Which versions are affected by CVE-2026-47418?
3 open source packages ship an affected version, including praisonai-platform.
| Package | Affected | Fixed in |
|---|---|---|
praisonai-platform PyPI | All versions | 0.1.4 |
praisonai-platform PyPI | All versions | 0.1.4 |
praisonai-platform PyPI | All versions | 0.1.4 |
How do I fix CVE-2026-47418?
Upgrade praisonai-platform to 0.1.4 or later.
Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.
Is CVE-2026-47418 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-47418 exists.
Sources
Also known as GHSA-943m-6wx2-rc2j, PYSEC-2026-2932.