Miggo Logo

CVE-2023-36470:
XWiki Platform vulnerable to Code Injection in icon themes

10

CVSS Score
3.1

Basic Information

EPSS Score
0.94033%
Published
6/30/2023
Updated
11/12/2023
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.xwiki.platform:xwiki-platform-icon-defaultmaven>= 6.2-milestone-1, < 14.10.614.10.6
org.xwiki.platform:xwiki-platform-icon-scriptmaven>= 6.2-milestone-1, < 14.10.614.10.6
org.xwiki.platform:xwiki-platform-icon-scriptmaven>= 15.0-rc-1, < 15.2-rc-115.2-rc-1
org.xwiki.platform:xwiki-platform-icon-defaultmaven>= 15.0-rc-1, < 15.2-rc-115.2-rc-1
org.xwiki.platform:xwiki-platform-icon-uimaven>= 6.2-milestone-1, < 14.10.614.10.6
org.xwiki.platform:xwiki-platform-icon-uimaven>= 15.0-rc-1, < 15.2-rc-115.2-rc-1

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from two key issues: 1) The IconManagerScriptService's render methods directly injected user-controlled icon theme content (HTML/XWiki syntax) into documents without proper escaping or context isolation. This allowed attackers to execute code in the context of privileged documents. 2) The DefaultIconRenderer executed Velocity code from icon themes using the current document's context rather than the icon theme's context, enabling rights escalation. The patches introduced context-aware rendering (via DisplayIconMacro) and enforced execution within the icon theme's security context, confirming these were the vulnerable points.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### Imp**t *y *it**r *r**tin* * n*w or **itin* *n *xistin* *o*um*nt wit* *n i*on s*t, *n *tt**k*r **n inj**t XWiki synt*x *n* V*lo*ity *o** t**t is *x**ut** wit* pro*r*mmin* ri**ts *n* t*us *llows r*mot* *o** *x**ution. T**r* *r* *i***r*nt *tt**k v**

Reasoning

T** vuln*r**ility st*ms *rom two k*y issu*s: *) T** `I*onM*n***rS*riptS*rvi**`'s `r*n**r` m*t*o*s *ir**tly inj**t** us*r-*ontroll** i*on t**m* *ont*nt (*TML/XWiki synt*x) into *o*um*nts wit*out prop*r *s**pin* or *ont*xt isol*tion. T*is *llow** *tt**