Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Cloudreve (PR:L)
-
DeliveryControl downloader-reported path metadata
-
ExploitSubmit remote download with '../../escaped.txt' filename
-
ExecutionUnsanitized path joined via JoinRaw()
-
ImpactFile written outside destination within namespace
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated Cloudreve user (PR:L) on a version before 4.16.1 with a remote downloader (e.g., aria2) configured. The attacker must be able to control the file paths reported by that downloader's metadata API (aria2.tellStatus().files[].path) - controlling the HTTP body of the downloaded URL is NOT sufficient, which is the AT:P attack requirement. Exploitation is further LIMITED because written files remain subject to Cloudreve's normal permission and upload checks and traversal cannot escape beyond the user's already-accessible namespace, so impact is confined to misplacing/overwriting files the user could already reach. |
| Impact | This is a genuinely low-priority issue whose signals are internally consistent. The vendor CVSS 4.0 score of 2.3 (AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N) correctly reflects an authenticated (PR:L) integrity-only (VI:L) flaw with no confidentiality or availability impact and an attack requirement (AT:P). No EPSS score, no CISA KEV listing, and no evidence of active exploitation are present in the input, so this should be treated as no public exploit weaponized in the wild. A proof-of-concept IS included in the GHSA advisory (a fake aria2 JSON-RPC service returning a traversal path), so exploit mechanics are public, but POC availability is distinct from active exploitation. The AT:P requirement is meaningful: the attacker must control the file paths reported by the configured remote downloader (e.g., aria2 tellStatus output), not merely the HTTP body of a downloaded URL - a non-trivial precondition. The advisory also confirms writes remain 'subject to Cloudreve's normal permission and upload checks' and are confined to the user's already-accessible namespace, which caps blast radius. No signals conflict; this is a low-severity, low-real-risk hardening fix rather than an urgent threat. |
| Exploit ScenarioDerived | An authenticated Cloudreve user who can influence or operate the configured remote downloader (aria2) triggers a remote download whose downloader-reported filename contains '../../' sequences. Because Cloudreve joins the user-selected destination URI with the unsanitized downloader path via JoinRaw(), the file is written to a parent directory within the user's accessible namespace instead of the chosen folder. A working PoC using a fake aria2 JSON-RPC service is published in the GHSA advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 27, 2026
Path traversal in Cloudreve before 4.16.1 lets an authenticated user write downloaded files outside the destination directory they selected, by supplying '..' segments in the file names reported by a configured remote downloader such as aria2. The vulnerability is graded very low (CVSS 4.0 2.3 with attack requirements AT:P; the independent assessment scores CVSS 3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N), because the attacker must control downloader-reported metadata rather than the downloaded HTTP body, and the misplaced writes remain confined to namespaces the user can already reach and are still subject to Cloudreve's normal permission and upload checks. No public exploit code was flagged by the available threat-intelligence feeds, and this CVE is not in CISA KEV; the upstream advisory does document a proof-of-concept harness that emulates an aria2 JSON-RPC service returning a traversal path.
RemediationAI
Vendor-released patch: upgrade to Cloudreve 4.16.1 or later, which contains the fix for the remote-download path traversal described in https://github.com/cloudreve/cloudreve/security/advisories/GHSA-w8j7-39hp-8x59. If immediate upgrade is not possible, restrict who can configure and trigger remote downloads, since the attack requires an authenticated account with a downloader backend configured; deploy only trusted downloader services and ensure the downloader's metadata API (e.g., the aria2 JSON-RPC endpoint) cannot be reached or influenced by untrusted parties, protecting it with an RPC secret and network ACLs or loopback-only binding. Disabling the remote-download feature outright removes the vulnerable code path but also removes the functionality; limiting the destination namespaces a user may select reduces, but does not eliminate, the reach of a traversal. After upgrading, review destination directories and user namespaces for files written or overwritten outside the intended folder, and monitor downloader metadata paths for '..' or slash segments as a detection signal. Note that the VulnCheck advisory at https://www.vulncheck.com/advisories/cloudreve-before-4.16.1-path-traversal-via-remote-download tracks the same issue if you need a second vendor-independent reference for change management.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 4 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a classic CWE-22 path traversal in Cloudreve's remote-download workflow (pkg/filemanager/workflows/remote_download.go). When a remote downloader reports a file name, Cloudreve runs it through sanitizeFileName(), but that helper only replaces Windows-reserved characters (backslash, colon, asterisk, question mark, quote, angle brackets, pipe) and never strips '/', '.' or '..'. The sanitized name is then passed to URI.JoinRaw(), which splits the string on '/' and joins the segments, so '..' segments actively rewind the resulting Cloudreve URI. The same unsafe pattern appears when constructing slave upload payloads. For aria2 backends, the attacker-controlled value originates from aria2.tellStatus().files[].path, which Cloudreve trims of the configured save path to derive TaskFile.Name (pkg/downloader/aria2/aria2.go). A destination such as cloudreve://my/victim/safe combined with a reported name of ../../escaped.txt resolves to cloudreve://my/escaped.txt. Because the traversal is bounded by Cloudreve's own permission and upload checks, it can relocate a write further up any namespace the user already has rights to, but cannot necessarily escalate to arbitrary paths. The affected CPE is cpe:2.3:a:cloudreve:cloudreve:*:*:*:*:*:*:*:*, and the Go module is go/github.com/cloudreve/Cloudreve/v4 (vulnerable through pseudo-version 4.0.0-20260606032813-26b6b1044b02).
Know when Cloudreve gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Authenticated (PR:L) network flaw; AC:H because the attacker must control downloader-reported path metadata; integrity-only file misplacement within an accessible namespace (I:L), no C/A impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Cloudreve before 4.16.1 fails to properly sanitize file paths returned by remote downloaders, allowing authenticated users to create files outside the selected destination directory. Attackers can exploit path traversal sequences in downloader metadata to write files to unexpected locations within accessible namespaces.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Concurrent upload-session requests in Cloudreve prior to 4.18.0 allow an authenticated user holding Files.Write permissi
Cloudreve versions v1.0.0 through v3.5.3 are vulnerable to Stored Cross-Site Scripting (XSS), via the file upload functi
Privilege escalation via OAuth scope enforcement bypass affects Cloudreve self-hosted file management versions 4.12.0 th
Path traversal via improper authorization in Cloudreve's WebDAV handler lets a scoped WebDAV account escape its configur
Revoked, expired, or download-limit-exhausted Cloudreve shares can still be mined for signed file URLs for up to 300 sec
Server-side request forgery in Cloudreve prior to 4.18.0 allows an authenticated user with remote-download privileges to
Server-Side Request Forgery in Cloudreve's remote download workflow (versions prior to 4.16.1) enables authenticated use
Cloudreve before 4.17.0 applies only the Admin.Read OAuth scope to the admin node test endpoints (POST /api/v4/admin/nod
Cloudreve instances running versions prior to 4.18.0 fail to enforce write-scope authorization on two admin tool routes,
EUVD-2026-87980
GHSA-wv98-qffc-cvmj
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB