Miggo Logo

GHSA-2w8w-qhg4-f78j: A stored XSS in jaeger UI might allow an attacker who controls a trace to perform arbitrary jaeger queries

6.5

CVSS Score
3.1

Basic Information

CVE ID
-
EPSS Score
-
Published
7/11/2023
Updated
7/11/2023
KEV Status
No
Technology
TechnologyGo

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
github.com/jaegertracing/jaegergo< 1.47.01.47.0

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from how KeyValuesTable.tsx handles JSON rendering. The formatValue function (and its dependency on json-markup/react-json-view-lite) fails to sanitize object keys in JSON data. Attackers can inject malicious keys (e.g., <img src=x onerror=alert(1)>) into trace data, which are rendered as raw HTML via dangerouslySetInnerHTML. The PoC demonstrates this by embedding an XSS payload in a tag's key, which executes when the span's attributes are viewed. The root cause is the lack of key sanitization in the JSON rendering logic.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

R*l*t** UI vuln*r**ility **visory: *ttps://*it*u*.*om/j****rtr**in*/j****r-ui/s**urity/**visori*s/**S*-vv**-rm**-q**r ### Summ*ry J****r UI is usin* t** `json-m*rkup` **p*n**n*y to *ispl*y sp*n *ttri*ut*s *n* r*sour**s. T*is **p*n**n*y is not s*niti

Reasoning

T** vuln*r**ility st*ms *rom *ow K*yV*lu*sT**l*.tsx **n*l*s JSON r*n**rin*. T** *orm*tV*lu* *un*tion (*n* its **p*n**n*y on json-m*rkup/r***t-json-vi*w-lit*) **ils to s*nitiz* o*j**t k*ys in JSON **t*. *tt**k*rs **n inj**t m*li*ious k*ys (*.*., `<im*