Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable upload endpoint, no auth (token is public by design = PR:N), no user interaction, low complexity, and users.txt overwrite yields full admin compromise across C/I/A.
Primary rating from Vendor (TuranSec).
CVSS VectorVendor: TuranSec
Lifecycle Timeline
3DescriptionCVE.org
FileRise before 3.16.0 is vulnerable to path traversal in the shared-folder upload endpoint (/api/folder/uploadToSharedFolder.php), leading to arbitrary file write and administrator account takeover. The upload filename is validated by FolderController with basename() and REGEX_FILE_NAME, which permit URL-encoded sequences (the regex blocks / and \ but not %). The raw filename is then passed to UploadModel::handleUpload, where it is reconstructed as trim(urldecode(basename($fileName))), re-introducing path separators after validation (e.g. ..%2fusers%2fusers.txt becomes ../users/users.txt). UploadNamePolicy::isAllowedForWrite() applies basename() internally and therefore only evaluates the final component (users.txt), allowing the traversal sequence to pass the extension policy. The destination path is then used directly in move_uploaded_file() with no realpath containment check, allowing a write outside the intended upload directory. An attacker who possesses a valid, non-expired, upload-enabled shared-folder link/token (which are designed to be shared publicly) can overwrite users/users.txt to create an administrator account, resulting in unauthenticated admin takeover and, depending on configuration, remote code execution. Exploitation requires possession of a valid, non-expired, upload-enabled shared-folder link/token. This issue is fixed in 3.16.0, which URL-decodes before validation and rejects any path separators in the upload filename.
Articles & Coverage 1
AnalysisAI
Unauthenticated administrator account takeover in FileRise before 3.16.0 is possible via a path traversal flaw in the shared-folder upload endpoint (/api/folder/uploadToSharedFolder.php), where URL-encoded path separators bypass filename validation and allow arbitrary file write outside the upload directory. Any actor holding a valid, non-expired, upload-enabled shared-folder token - tokens explicitly designed to be shared publicly - can overwrite users/users.txt to plant an admin account and, depending on configuration, achieve remote code execution. No public exploit identified at time of analysis, but the upstream fix in v3.16.0 documents the exact bypass, lowering the bar for weaponization.
Technical ContextAI
FileRise is a PHP-based self-hosted web file manager (CPE cpe:2.3:a:error311:filerise). The flaw is a classic CWE-22 Path Traversal caused by an order-of-operations defect between validation and decoding: FolderController applies basename() and the REGEX_FILE_NAME allowlist (which rejects literal '/' and '\' but permits '%') against the raw filename, after which UploadModel::handleUpload reconstructs the name via trim(urldecode(basename($fileName))). Decoding after validation re-introduces separators (e.g. '..%2fusers%2fusers.txt' becomes '../users/users.txt'), and the secondary UploadNamePolicy::isAllowedForWrite() check itself calls basename() so the policy only inspects the final component. The destination is passed directly to move_uploaded_file() with no realpath() containment, so the writer escapes the upload directory entirely.
RemediationAI
Vendor-released patch: upgrade to FileRise v3.16.0 or later (https://github.com/error311/FileRise/releases/tag/v3.16.0), which URL-decodes before validation and rejects any path separators in the upload filename. If immediate upgrade is not feasible, revoke or expire all existing upload-enabled shared-folder tokens and disable creation of new upload-enabled share links (read-only shares are unaffected by this specific endpoint flaw); this breaks the public-upload feature but removes the attack precondition. As an additional containment step, place /api/folder/uploadToSharedFolder.php behind an authenticating reverse proxy or block it at the web server, accepting that legitimate public uploads will stop working. After patching, audit users/users.txt and the upload directory tree for unexpected admin entries or files written outside the intended upload root, and rotate all admin credentials and remember-me tokens, since the v3.16.0 notes show other auth-related hardening was bundled in the same release.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
Same weakness CWE-22 – Path Traversal
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-37993
GHSA-jg2q-3m38-6xc2