Exposure of Sensitive Information to an Unauthorized Actor
Parse Server is an open-source backend that can be deployed to any infrastructure that can run Node.js. Internal fields (keys used internally by Parse Server, prefixed by `_`) and protected fields (user-defined) can be used as query constraints. Internal and protected fields are removed by Parse Server and are only returned to the client using a valid master key. However, using query constraints, these fields can be guessed by enumerating until Parse Server, versions prior to 4.10.14, 5.0.x prior to 5.2.5, and 5.3.x prior to 5.3.0-alpha.22 return a response object. The patch available in versions 4.10.14, 5.2.5, and 5.3.0-alpha.22 requires the master key to use internal and protected fields as query constraints. As a workaround, implement a Parse Cloud Trigger `beforeFind` and manually remove the query constraints.
CWE-200 - Information Exposure
An information exposure vulnerability is categorized as an information flow (IF) weakness, which can potentially allow unauthorized access to otherwise classified information in the application, such as confidential personal information (demographics, financials, health records, etc.), business secrets, and the application's internal environment.