CVE-2026-54414: CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in error311 FileRise
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.
AI Analysis
Technical Summary
FileRise before version 3.16.0 is vulnerable to a path traversal attack in the /api/folder/uploadToSharedFolder.php endpoint. The vulnerability stems from improper validation of the upload filename: the validation uses basename() and a regex that blocks '/' and '\' but not URL-encoded equivalents like '%2f'. The filename is URL-decoded after validation, reintroducing path traversal sequences such as '../'. The policy check for allowed filenames only inspects the final component, allowing traversal sequences to pass. The destination path is used directly in move_uploaded_file() without realpath containment checks, enabling arbitrary file writes outside the intended upload directory. An attacker with a valid, non-expired, upload-enabled shared-folder token can exploit this to overwrite files such as users/users.txt, creating an administrator account and potentially achieving remote code execution depending on configuration. The vulnerability is addressed in version 3.16.0 by URL-decoding before validation and rejecting filenames containing path separators.
Potential Impact
Successful exploitation allows an unauthenticated attacker possessing a valid upload-enabled shared-folder token to write arbitrary files outside the designated upload directory. This can lead to administrator account takeover and, depending on the system configuration, remote code execution. The vulnerability compromises confidentiality, integrity, and availability of the affected system.
Mitigation Recommendations
A fix is available in FileRise version 3.16.0, which properly URL-decodes filenames before validation and rejects any path separators in upload filenames. Users should upgrade to version 3.16.0 or later to remediate this vulnerability. Until upgraded, restrict access to shared-folder upload links and monitor for suspicious activity. Patch status is confirmed fixed in 3.16.0.
CVE-2026-54414: CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in error311 FileRise
Description
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.
CVSS v3.1
Score 9.8critical
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
FileRise before version 3.16.0 is vulnerable to a path traversal attack in the /api/folder/uploadToSharedFolder.php endpoint. The vulnerability stems from improper validation of the upload filename: the validation uses basename() and a regex that blocks '/' and '\' but not URL-encoded equivalents like '%2f'. The filename is URL-decoded after validation, reintroducing path traversal sequences such as '../'. The policy check for allowed filenames only inspects the final component, allowing traversal sequences to pass. The destination path is used directly in move_uploaded_file() without realpath containment checks, enabling arbitrary file writes outside the intended upload directory. An attacker with a valid, non-expired, upload-enabled shared-folder token can exploit this to overwrite files such as users/users.txt, creating an administrator account and potentially achieving remote code execution depending on configuration. The vulnerability is addressed in version 3.16.0 by URL-decoding before validation and rejecting filenames containing path separators.
Potential Impact
Successful exploitation allows an unauthenticated attacker possessing a valid upload-enabled shared-folder token to write arbitrary files outside the designated upload directory. This can lead to administrator account takeover and, depending on the system configuration, remote code execution. The vulnerability compromises confidentiality, integrity, and availability of the affected system.
Mitigation Recommendations
A fix is available in FileRise version 3.16.0, which properly URL-decodes filenames before validation and rejects any path separators in upload filenames. Users should upgrade to version 3.16.0 or later to remediate this vulnerability. Until upgraded, restrict access to shared-folder upload links and monitor for suspicious activity. Patch status is confirmed fixed in 3.16.0.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- TuranSec
- Date Reserved
- 2026-06-13T16:39:46.122Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a34df99f198dc38c19de735
Added to database: 06/19/2026, 06:20:09 UTC
Last enriched: 06/26/2026, 13:12:09 UTC
Last updated: 08/01/2026, 19:18:01 UTC
Views: 141
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.