Miggo Logo

CVE-2024-47821:
pyLoad vulnerable to remote code execution by download to /.pyload/scripts using /flashgot API

9.1

CVSS Score
3.1

Basic Information

EPSS Score
0.31861%
Published
10/28/2024
Updated
10/28/2024
KEV Status
No
Technology
TechnologyPython

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
pyload-ngpip< 0.5.0b3.dev870.5.0b3.dev87

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability chain has three critical components:

  1. flashgot's Referer check is trivially bypassable (client-controlled header)
  2. local_check's Host header validation is similarly spoofable
  3. set_config_value allowed unsafe storage_folder configurations Together, these enable: (1) unauthorized API access, (2) malicious file placement in scripts directories, and (3) automatic execution via pyLoad's script-triggering mechanism. The commit diff explicitly patches these functions' validation logic, confirming their role in the vulnerability.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### Summ*ry T** *ol**r `/.pylo**/s*ripts` **s s*ripts w*i** *r* run w**n **rt*in **tions *r* *ompl*t**, *or *.*. * *ownlo** is *inis***. *y *ownlo**in* * *x**ut**l* *il* to * *ol**r in /s*ripts *n* p*r*ormin* t** r*sp**tiv* **tion, r*mot* *o** *x**ut

Reasoning

T** vuln*r**ility ***in **s t*r** *riti**l *ompon*nts: *. *l*s**ot's R***r*r ****k is trivi*lly *yp*ss**l* (*li*nt-*ontroll** *****r) *. lo**l_****k's *ost *****r v*li**tion is simil*rly spoo***l* *. s*t_*on*i*_v*lu* *llow** uns*** stor***_*ol**r *on