Miggo Logo

CVE-2020-7647: path traversal in Jooby

5.3

CVSS Score
3.1

Basic Information

EPSS Score
0.49757%
Published
5/13/2020
Updated
1/9/2023
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
io.jooby:joobymaven< 2.8.22.8.2
org.jooby:joobymaven< 2.8.22.8.2

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from two key issues: 1) The loader function's fallback to classloader.getResource() without path validation allowed accessing arbitrary classpath resources when files weren't found in the filesystem directory. 2) Missing prefix validation in asset configuration patterns enabled path traversal via URL encoding (e.g., %252f for ../). The patches added classpath prefix checks in classpathLoader and enforced security restrictions in setRoute(), confirming these were the vulnerable areas.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### Imp**t ****ss to s*nsitiv* in*orm*tion *v*il**l* *rom *l*ssp*t*. ### P*t***s P*t**** v*rsion: *.*.* *n* *.*.* *ommit *.x: *ttps://*it*u*.*om/joo*y-proj**t/joo*y/*ommit/**************************************** *ommit *.x: *ttps://*it*u*.*om/jo

Reasoning

T** vuln*r**ility st*ms *rom two k*y issu*s: *) T** lo***r `*un*tion`'s **ll***k to `*l*sslo***r.**tR*sour**()` wit*out p*t* v*li**tion *llow** ****ssin* *r*itr*ry *l*ssp*t* r*sour**s w**n *il*s w*r*n't *oun* in t** `*il*syst*m` *ir**tory. *) Missin*