{"items":[{"id":"NVI-00015117","kind":"vulnerability","title":"PraisonAI has Cross-Workspace IDOR and Privilege Escalation via Platform API","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-gv23-xrm3-8c62","CVE-2026-48169"],"plain_summary":"GitHub lists this reviewed advisory for praisonai-platform. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-255b5106029daf6e32d3b7faf38e5b4c"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-08-07T21:16:58.000Z","value":"8.8 high","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-255b5106029daf6e32d3b7faf38e5b4c"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-255b5106029daf6e32d3b7faf38e5b4c","url":"https://github.com/advisories/GHSA-gv23-xrm3-8c62","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-gv23-xrm3-8c62","publisher":"GitHub Advisory Database","observed_at":"2026-11-02T20:17:12.848Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-255b5106029daf6e32d3b7faf38e5b4c"],"technology":"praisonai-platform","known_exclusions":[],"conditions_summary":"### Summary\n\nThe PraisonAI Platform API has 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.\n\nBoth 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.\n\n### Details\n\n#### Part 1: Cross-Workspace IDOR (Issues and Projects)\n\n**Vulnerable Files:**\n- `praisonai_platform/services/i","public_affected_ranges":["<= 0.1.2"]}],"null_published_at":"2026-11-03T10:03:26.550Z","source_updated_at":"2026-08-07T21:16:58.000Z","source_disclosed_at":"2026-05-29T22:32:45.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-11-02T20:17:12.848Z"}],"next_cursor":null,"snapshot_revision":"42594"}