Miggo Logo

CVE-2024-29196:
phpMyFAQ Path Traversal in Attachments

3.8

CVSS Score
3.1

Basic Information

EPSS Score
0.63341%
Published
3/25/2024
Updated
3/26/2024
KEV Status
No
Technology
TechnologyPHP

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
phpmyfaq/phpmyfaqcomposer= 3.2.53.2.6

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper path sanitization in the configuration update handler. The original code (pre-patch) used a simple string replacement to remove '../' sequences, which is insufficient to prevent path traversal attacks. This logic was located in phpmyfaq/admin/configuration.php where user-supplied attachment path values were processed. The commit diff shows the vulnerable pattern replacement was replaced with realpath() validation and document root comparison, confirming this was the vulnerable code path. While no named function is explicitly shown, the procedural code handling configuration updates for 'records.attachmentsPath' directly enabled the traversal vulnerability through inadequate sanitization.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

### Summ*ry T**r* is * P*t* Tr*v*rs*l vuln*r**ility in *tt***m*nts t**t *llows *tt**k*rs wit* **min ri**ts to uplo** m*li*ious *il*s to ot**r lo**tions o* t** w** root. ### Po* *. In s*ttin*s, t** *tt***m*nt lo**tion is vuln*r**l* to p*t* tr*v*rs*l

Reasoning

T** vuln*r**ility st*ms *rom improp*r p*t* s*nitiz*tion in t** *on*i*ur*tion up**t* **n*l*r. T** ori*in*l *o** (pr*-p*t**) us** * simpl* strin* r*pl***m*nt to r*mov* '../' s*qu*n**s, w*i** is insu**i*i*nt to pr*v*nt p*t* tr*v*rs*l *tt**ks. T*is lo*i*