parse-server has cloud function validator bypass via prototype chain traversal
Critical severity
GitHub Reviewed
Published
Mar 28, 2026
in
parse-community/parse-server
•
Updated Mar 31, 2026
Package
Affected versions
>= 9.0.0, < 9.7.0-alpha.11
< 8.6.67
Patched versions
9.7.0-alpha.11
8.6.67
Description
Published by the National Vulnerability Database
Mar 31, 2026
Published to the GitHub Advisory Database
Mar 31, 2026
Reviewed
Mar 31, 2026
Last updated
Mar 31, 2026
Impact
An attacker can bypass Cloud Function validator access controls by appending
.prototype.constructorto the function name in the URL. When a Cloud Function handler is declared using thefunctionkeyword 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
functionkeyword for Cloud Function handlers. Arrow functions do not have aprototypeproperty and are not affected by this vulnerability.Resources
References