CVE-2026-34532: parse-server has cloud function validator bypass via prototype chain traversal
Impact An attacker can bypass Cloud Function validator access controls by appending .prototype.constructor to the function name in the URL. When a Cloud Function handler is declared using the function keyword and its validator is a plain object or arrow function, the trigger store traversal resolves the handler through its own prototype chain while the validator store fails to mirror this traversal, causing all…
Published Mar 31, 2026
Affected packages
parse-server
- Ecosystem
- npm
- Affected
- >= 9.0.0, < 9.7.0-alpha.11
- Fixed in
- 9.7.0-alpha.11
- Check
npm ls parse-server
parse-server
- Ecosystem
- npm
- Affected
- < 8.6.67
- Fixed in
- 8.6.67
- Check
npm ls parse-server
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
Impact
An attacker can bypass Cloud Function validator access controls by appending .prototype.constructor to the function name in the URL. When a Cloud Function handler is declared using the function keyword and its validator is a plain object or arrow function, the trigger store traversal resolves the handler through its own prototype chain while the validator store fails to mirror this traversal, causing all access control enforcement to be skipped.
This allows unauthenticated callers to invoke Cloud Functions that are meant to be protected by validators such as requireUser, requireMaster, or custom validation logic.
Patches
The trigger store traversal now verifies that each intermediate node is a legitimate store object before continuing traversal. If the traversal encounters a non-store value such as a function handler, it stops and returns an empty store, preventing prototype chain escape.
Workarounds
Use arrow functions instead of the function keyword for Cloud Function handlers. Arrow functions do not have a prototype property and are not affected by this vulnerability.
Resources
- GitHub security advisory: https://github.com/parse-community/parse-server/security/advisories/GHSA-vpj2-qq7w-5qq6
- Fix Parse Server 9: https://github.com/parse-community/parse-server/pull/10342
- Fix Parse Server 8: https://github.com/parse-community/parse-server/pull/10343
Credited to mtrezza, bugbunny-research.
References
- https://github.com/parse-community/parse-server/security/advisories/GHSA-vpj2-qq7w-5qq6
- https://nvd.nist.gov/vuln/detail/CVE-2026-34532
- https://github.com/parse-community/parse-server/pull/10342
- https://github.com/parse-community/parse-server/pull/10343
- https://github.com/parse-community/parse-server/commit/4fc48cf28f22eea200d74d883505f485234a48d7
- https://github.com/parse-community/parse-server/commit/dc59e272665644083c5b7f6862d88ce1ef0b2674
- https://github.com/advisories/GHSA-vpj2-qq7w-5qq6
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology
More npm vulnerabilities
All npm entriesCVE-2026-32242
Parse Server's OAuth2 adapter shares mutable state across providers via singleton instance
critical9.1Mar 12, 2026CVE-2026-32248
Parse Server: Account takeover via operator injection in authentication data identifier
critical9.3Mar 12, 2026CVE-2026-30965
Parse Server vulnerable to session token exfiltration via `redirectClassNameForKey` query parameter
critical9.9Mar 11, 2026CVE-2026-30966
Parse Server has role escalation and CLP bypass via direct `_Join` table write
critical10.0Mar 11, 2026CVE-2026-31856
Parse Server vulnerable to SQL injection via `Increment` operation on nested object field in PostgreSQL
critical9.3Mar 11, 2026CVE-2026-31871
Parse Server vulnerable to SQL Injection via dot-notation sub-key name in `Increment` operation on PostgreSQL
critical9.3Mar 11, 2026
