Cyber Resilience

CVE-2026-47407

Access Control

Published
21 July 2026
Modified
22 July 2026
CVSS Score v4 9.4
Click a component to see what it means
Raw vectorCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
EPSS Score 0.0024 15th percentile
Risk Priority 70 floored blend · peak EPSS

Summary

CVE-2026-47407 is a critical-severity Improper Privilege Management (CWE-269) vulnerability. Its CVSS base score is 9.4 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploitation for Privilege Escalation (T1068); ranked at the 15th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to AC-3 (Access Enforcement) and AC-6 (Least Privilege) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

PraisonAI Platform is the platform layer for the PraisonAI multi-agent teams system. Prior to version 0.1.4, the Platform server exposes resources under `/api/v1/workspaces/{workspace_id}/...` and protects them with a `require_workspace_member(workspace_id)` FastAPI dependency. The dependency only checks that the caller is a…

more

member of the workspace_id in the URL prefix. The route handlers then look up the inner resource (`agent_id`, `issue_id`, `project_id`, `label_id`, `comment_id`, `dependency_id`) by primary key alone. The resource's own `workspace_id` is never compared to the URL's `workspace_id`. A user can therefore put their own workspace in the URL prefix and any other workspace's resource ID in the path. The auth check passes, since they really are a member of the prefix workspace. The service then returns the cross-tenant resource for read, update, or delete. There is a second bug in the member-management routes (`add_member`, `update_member_role`, `remove_member`, `update_workspace`, `delete_workspace`). Each one inherits the default `min_role="member"` from `require_workspace_member`. Any basic member can therefore promote themselves to admin or owner, demote or remove other members, and delete the workspace. The role hierarchy exists in the schema but is not enforced. Registration is open at `/api/v1/auth/register` with no email verification. The default server bind is `0.0.0.0:8000` (`python -m praisonai_platform`). One curl from any unauthenticated network position is enough to bootstrap into the system. PraisonAI Platform version 0.1.4 patches the issue.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise TechniquesAI

T1068 Exploitation for Privilege Escalation Privilege Escalation
Adversaries may exploit software vulnerabilities in an attempt to elevate privileges.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Why these techniques?

Broken workspace authorization (CWE-639/863) directly enables cross-tenant read/update/delete; permissive member routes (CWE-269) enable self-promotion and workspace takeover (T1068). Open unauthenticated registration on a publicly bound server enables initial compromise of the application (T1190).

Confidence: HIGH · MITRE ATT&CK Enterprise v19.0

CVEs Like This One

CVE-2026-42999Shared CWE-639, CWE-863
CVE-2026-56424Shared CWE-639, CWE-863
CVE-2026-15630Shared CWE-269, CWE-639
CVE-2026-27803Shared CWE-269, CWE-863
CVE-2026-9808Shared CWE-863
CVE-2025-8489Shared CWE-269
CVE-2026-26725Shared CWE-269
CVE-2024-12281Shared CWE-269
CVE-2026-41280Shared CWE-863
CVE-2026-31070Shared CWE-269

Affected Assets

PraisonAI Platform
inferred from references and description; NVD did not file a CPE for this CVE

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)
  • AC-3 Access Enforcement
  • AC-6 Least Privilege
  • AC-24 Access Control Decisions
Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 10 hardening rules · 8 OS baselines
Validate
Prove the fix (OWASP ASVS)

Mitigating Controls (NIST 800-53 r5) AI

prevent

Directly requires the system to enforce access rights on every resource request; the missing workspace_id comparison on inner objects (agent/issue/etc.) is exactly the failure of access enforcement described.

prevent

Requires enforcement of least privilege and role restrictions; the member-management routes inherit min_role=member and never enforce the schema-defined hierarchy, allowing self-promotion and workspace takeover.

prevent

Requires that access-control decisions consider all relevant security attributes; the routes decide solely on the URL workspace membership and ignore the resource's own workspace_id attribute.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.AA-05 full match
prevents

Enforcing authorization policy and least privilege directly blocks user-controlled key tampering that bypasses access checks.

PR.IR-01 mostly match
prevents

Logical access controls prevent unauthorized data access that results from missing authorization checks on object references.

PR.AA-01 partial match
prevents

PR.AA-01 supplies credential/identity lifecycle support that can reduce some privilege-assignment errors but does not itself assign, modify, or check privileges, leaving most of CWE-269's risk unaddressed.

PR.PS-01 partial match
prevents

Config baselines and default reviews can enforce some privilege-related settings (one facet) but do not address code-level assignment/tracking logic that defines CWE-269.

PR.PS-05 partial match
prevents

PR.PS-05 can partially limit exploitability of some privilege issues via execution restrictions, but does not address the core design/implementation flaws of CWE-269 at all.

PR.DS-10 none match
prevents

PR.DS-10 protects data-in-use without touching privilege assignment/tracking, so it neither prevents CWE-269 nor removes more than one narrow facet of its risk.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

prevents

Requiring owner approval, segregation of duties, and periodic reviews prevents the assignment of excessive or unnecessary privileges to users or processes.

prevents

Enforcing minimum-necessary privileges, temporary grants, and separation of administrative versus normal identities prevents the over-assignment of rights that CWE-269 describes.

detects

Security testing can detect missing authorization checks but does not prevent the weakness in production.

prevents

Dynamic techniques that grant the minimum necessary rights for a given time window and revoke them afterward reduce the window in which excessive or unnecessary privileges can be exploited.

prevents

Explicit restrictions on privileged access and segregation of duties limit the scope of privileges that can be assigned, reducing the chance that excessive or unnecessary privileges are granted to entities.

prevents

Defining and communicating authorization levels for each role limits the assignment of excessive or unnecessary privileges.

References