Miggo Logo

CVE-2018-20094: XXL-CONF Path Traversal vulnerability

7.5

CVSS Score
3.0

Basic Information

EPSS Score
0.59299%
Published
12/19/2018
Updated
9/11/2023
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
com.xuxueli:xxl-conf-adminmaven<= 1.6.0

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from two key points: 1) ConfController.java's find() method accepts user-controlled 'keys' parameter via HTTP request and passes it to downstream processing without path normalization. 2) PropUtil.java's loadFileProp() method uses these keys directly in file path construction (new File()) without validation. The combination allows attackers to inject '../' sequences to escape the intended configuration directory. Both functions are explicitly referenced in vulnerability reports and the code structure matches the described exploit flow.

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 XXL-*ON* *.*.*. T**r* is * p*t* tr*v*rs*l vuln*r**ility vi* `../` in t** k*ys p*r*m*t*r t**t **n *ownlo** *ny *on*i*ur*tion *il*, r*l*t** to `*on**ontroll*r.j*v*` *n* `PropUtil.j*v*`.

Reasoning

T** vuln*r**ility st*ms *rom two k*y points: *) `*on**ontroll*r.j*v*`'s `*in*()` m*t*o* ****pts us*r-*ontroll** 'k*ys' p*r*m*t*r vi* *TTP r*qu*st *n* p*ss*s it to *ownstr**m pro**ssin* wit*out p*t* norm*liz*tion. *) `PropUtil.j*v*`'s `lo***il*Prop()`