Miggo Logo

CVE-2020-7713: Prototype Pollution in arr-flatten-unflatten

9.8

CVSS Score
3.1

Basic Information

EPSS Score
0.60516%
Published
5/6/2021
Updated
1/27/2023
KEV Status
No
Technology
TechnologyJavaScript

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
arr-flatten-unflattennpm<= 1.1.4

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

  1. The vulnerability manifests via the unflatten function as demonstrated in the PoC (node.js code calling unflatten with 'proto[polluted]').
  2. The GitHub commit diff shows prototype pollution protection added specifically to unflatten.js's object reconstruction logic.
  3. The CVE description explicitly states 'via the constructor' which aligns with prototype manipulation during object creation in unflatten.
  4. Snyk's technical analysis confirms the attack vector through the unflatten method's key processing mechanism.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

*ll v*rsions o* p**k*** *rr-*l*tt*n-un*l*tt*n up to *n* in*lu*in* v*rsion *.*.* *r* vuln*r**l* to Prototyp* Pollution vi* t** *onstru*tor.

Reasoning

*. T** vuln*r**ility m*ni**sts vi* t** un*l*tt*n *un*tion *s **monstr*t** in t** Po* (no**.js *o** **llin* un*l*tt*n wit* '__proto__[pollut**]'). *. T** *it*u* *ommit *i** s*ows prototyp* pollution prot**tion ***** sp**i*i**lly to un*l*tt*n.js's o*j*