CVE-2026-30966: Parse Server role escalation and CLP bypass via direct `_Join` table write
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
Other sources
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.5.2-alpha.7 and 8.6.20, 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. This vulnerability is fixed in 9.5.2-alpha.7 and 8.6.20.
— MITRE
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2026-30966?
CVE-2026-30966 is considered a high severity vulnerability due to the potential for role escalation and CLP bypass.
How do I fix CVE-2026-30966?
To remediate CVE-2026-30966, upgrade to Parse Server versions 9.5.2-alpha.7 or later, or 8.6.20 or later.
What are the impacts of CVE-2026-30966?
CVE-2026-30966 can lead to unauthorized access and privilege escalation within the Parse Server application.
Which versions of Parse Server are affected by CVE-2026-30966?
CVE-2026-30966 affects Parse Server versions prior to 9.5.2-alpha.7 and 8.6.20.
How does CVE-2026-30966 exploit role management?
CVE-2026-30966 exploits the internal tables of Parse Server to allow direct writes that bypass normal role privileges.