CVE-2026-30966
Parse Server has role escalation and CLP bypass via direct `_Join` table write
Description
### Impact Parse Server's internal tables, which store Relation field mappings such as role memberships, can be directly accessed via the REST API or GraphQL API by any client using only the application key. No master key is required. An attacker can create, read, update, or delete records in any internal relationship table. Exploiting this allows the attacker to inject themselves into any Parse Role, gaining all permissions associated with that role, including full read, write, and delete access to classes protected by role-based Class-Level Permissions (CLP). Similarly, writing to any such table that backs a Relation field used in a `pointerFields` CLP bypasses that access control. ### Patches The fix blocks direct client access to internal relationship tables in Parse Server's role security enforcement. All create, find, get, update, and delete operations on these tables now require the master key or maintenance key. ### Workarounds There is no known workaround. ### References - GitHub security advisory: https://github.com/parse-community/parse-server/security/advisories/GHSA-5f92-jrq3-28rc - Fix Parse Server 9: https://github.com/parse-community/parse-server/releases/tag/9.5.2-alpha.7 - Fix Parse Server 8: https://github.com/parse-community/parse-server/releases/tag/8.6.20
How to fix CVE-2026-30966
To remediate CVE-2026-30966, upgrade the affected package to a fixed version below.
- —upgrade to 8.6.20 or later
- —upgrade to 9.5.2-alpha.7 or later
Is CVE-2026-30966 being exploited?
Low — EPSS is 0.1%, meaning exploitation activity has not been observed at scale.
Affected packages (2)
- from 0, < 8.6.20, >= 9.0.0, < 9.5.2