Description
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.5.0-alpha.14 and 8.6.11, a malicious client can subscribe to a LiveQuery with a crafted $regex pattern that causes catastrophic backtracking, blocking the Node.js event loop. This makes the entire Parse Server unresponsive, affecting all clients. Any Parse Server deployment with LiveQuery enabled is affected. The attacker only needs the application ID and JavaScript key, both of which are public in client-side apps. This only affects LiveQuery subscription matching, which evaluates regex in JavaScript on the Node.js event loop. Normal REST and GraphQL queries are not affected because their regex is evaluated by the database engine. This vulnerability is fixed in 9.5.0-alpha.14 and 8.6.11.
Problem types
CWE-1333: Inefficient Regular Expression Complexity
Product status
< 8.6.11
References
github.com/...server/security/advisories/GHSA-mf3j-86qx-cq5j
github.com/parse-community/parse-server/releases/tag/8.6.11
github.com/...unity/parse-server/releases/tag/9.5.0-alpha.14