Description
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to versions 8.6.67 and 9.7.0-alpha.11, 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. This issue has been patched in versions 8.6.67 and 9.7.0-alpha.11.
Problem types
CWE-863: Incorrect Authorization
Product status
>= 9.0.0, < 9.7.0-alpha.11
References
github.com/…server/security/advisories/GHSA-vpj2-qq7w-5qq6
github.com/parse-community/parse-server/pull/10342
github.com/parse-community/parse-server/pull/10343
github.com/…ommit/4fc48cf28f22eea200d74d883505f485234a48d7
github.com/…ommit/dc59e272665644083c5b7f6862d88ce1ef0b2674
