Miggo Logo

CVE-2023-38687: Svelecte item names vulnerable to execution of arbitrary JavaScript

5.4

CVSS Score
3.1

Basic Information

EPSS Score
0.65312%
Published
8/14/2023
Updated
11/8/2023
KEV Status
No
Technology
TechnologyJavaScript

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
svelectenpm< 3.16.33.16.3

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from unsafe HTML rendering patterns in both default and custom item renderers. The core issue is the use of Svelte's {@html} directive with unescaped user-controlled input (item.name). This matches the described attack vector where HTML tags in item names get rendered as DOM elements. Both the default implementation and documented custom renderer examples follow this vulnerable pattern, as confirmed by the PoC and advisory details. The fix requires replacing raw HTML injection with text node creation or proper escaping.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### Summ*ry Sv*l**t* it*m n*m*s *r* r*n**r** *s r*w *TML wit* no *s**pin*. T*is *llows t** inj**tion o* *r*itr*ry *TML into t** Sv*l**t* *rop*own. T*is **n ** *xploit** to *x**ut* *r*itr*ry J*v*S*ript w**n*v*r * Sv*l**t* *rop*own is op*n**. ### **t

Reasoning

T** vuln*r**ility st*ms *rom uns*** *TML r*n**rin* p*tt*rns in *ot* ****ult *n* *ustom it*m r*n**r*rs. T** *or* issu* is t** us* o* Sv*lt*'s {@*tml} *ir**tiv* wit* un*s**p** us*r-*ontroll** input (it*m.n*m*). T*is m*t***s t** **s*ri*** *tt**k v**tor