Miggo Logo

CVE-2016-10533: Private Data Disclosure in express-restify-mongoose

4

CVSS Score

Basic Information

EPSS Score
0.48854%
Published
10/23/2018
Updated
4/3/2023
KEV Status
No
Technology
TechnologyJavaScript

Technical Details

CVSS Vector
AV:N/AC:L/Au:S/C:P/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
express-restify-mongoosenpm<= 2.4.22.5.0
express-restify-mongoosenpm>= 3.0.0, <= 3.0.13.1.0

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from missing access control checks in distinct query handling. Both getItems() (collection requests) and getItem() (single resource requests) functions in operations.js processed distinct parameters without validating against the 'private' field configuration. The proof of concept shows attackers could bypass privacy restrictions using ?distinct=password, and the fix (23ccb24) specifically adds isDistinctExcluded checks in these two functions, confirming they were the vulnerable entry points.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

*****t** v*rsions o* `*xpr*ss-r*sti*y-mon*oos*` *r* sus**pti*l* to *n in*orm*tion l**k*** vuln*r**ility w*i** m*y *llow *n *tt**k*r to ****ss *i*l*s on * mo**l *v*n i* t*os* *i*l*s *r* m*rk** *s priv*t*. ## Proo* o* *on**pt I* you **v* * us*r mo**

Reasoning

T** vuln*r**ility st*ms *rom missin* ****ss *ontrol ****ks in *istin*t qu*ry **n*lin*. *ot* `**tIt*ms()` (*oll**tion r*qu*sts) *n* `**tIt*m()` (sin*l* r*sour** r*qu*sts) *un*tions in `op*r*tions.js` pro**ss** *istin*t p*r*m*t*rs wit*out v*li**tin* **