Miggo Logo

CVE-2022-36079: Parse Server vulnerable to brute force guessing of user sensitive data via search patterns

8.6

CVSS Score
3.1

Basic Information

EPSS Score
0.67535%
Published
9/16/2022
Updated
1/30/2023
KEV Status
No
Technology
TechnologyJavaScript

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
parse-servernpm< 4.10.144.10.14
parse-servernpm>= 5.0.0, < 5.2.55.2.5

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stemmed from two key issues: 1) validateQuery in DatabaseController.js permitted internal/protected fields in queries without master key validation due to insufficient key checks. The commit diff shows the patch added isMaster and update parameters to enforce authorization. 2) RestQuery.js's execute flow did not include denyProtectedFields prior to the fix, leaving protected fields exposed. The addition of denyProtectedFields in the patch confirms this gap. Both functions directly handled query validation/execution and their pre-patch behavior aligns with the vulnerability's mechanics.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

### Imp**t Int*rn*l *i*l*s (k*ys us** int*rn*lly *y P*rs* S*rv*r, pr**ix** *y `_`) *n* prot**t** *i*l*s (us*r ***in**) **n ** us** *s qu*ry *onstr*ints. Int*rn*l *n* prot**t** *i*l*s *r* r*mov** *y P*rs* S*rv*r *rom qu*ry r*sults *n* *r* only r*turn

Reasoning

T** vuln*r**ility st*mm** *rom two k*y issu*s: *) v*li**t*Qu*ry in **t***s**ontroll*r.js p*rmitt** int*rn*l/prot**t** *i*l*s in qu*ri*s wit*out m*st*r k*y v*li**tion *u* to insu**i*i*nt k*y ****ks. T** *ommit *i** s*ows t** p*t** ***** isM*st*r *n* u