Miggo Logo

CVE-2015-9544: Improper Input Validation in xdLocalStorage

7.1

CVSS Score
3.1

Basic Information

EPSS Score
0.62676%
Published
12/9/2021
Updated
2/1/2023
KEV Status
No
Technology
TechnologyJavaScript

Technical Details

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
xdLocalStoragenpm<= 2.0.5

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from two key issues: 1) receiveMessage() in the iframe implementation lacks origin validation despite handling sensitive localStorage operations, as explicitly stated in CVE-2015-9544 description. 2) buildMessage() in the client code uses insecure wildcard targetOrigin when sending messages, as shown in the code snippets from GitHub issues and the pull request attempting to fix it. Both functions are directly referenced in vulnerability descriptions and code analysis from multiple sources including NVD, GitHub advisory, and the project's own issue tracker.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

*n issu* w*s *is*ov*r** in x*Lo**lStor*** t*rou** *.*.*. T** r***iv*M*ss***() *un*tion in x*Lo**lStor***PostM*ss****pi.js *o*s not impl*m*nt *ny v*li**tion o* t** ori*in o* w** m*ss***s. R*mot* *tt**k*rs w*o **n *nti** * us*r to lo** * m*li*ious sit*

Reasoning

T** vuln*r**ility st*ms *rom two k*y issu*s: *) `r***iv*M*ss***()` in t** i*r*m* impl*m*nt*tion l**ks ori*in v*li**tion **spit* **n*lin* s*nsitiv* `lo**lStor***` op*r*tions, *s *xpli*itly st*t** in *V*-****-**** **s*ription. *) `*uil*M*ss***()` in t*