Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain access to plugin socket (Docker daemon / tenant workload)
-
DeliverySend VolumeDriver.Create with '../..' volume name
-
Exploitfilepath.Join escapes drv.root base
-
ExecutionPlugin MkdirAll + mounts remote FS at host path
-
ImpactShadow/disrupt system directory
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File name/path control
|
| Exploitation Conditions | Requires an rclone instance running in |
| Impact | This is a genuine but bounded issue, correctly rated MEDIUM. The vendor CVSS 4.0 vector (AV:L/AC:L/PR:H/UI:N, VC:N/VI:L/VA:L, no scope change) scores 4.6, and the signals are internally consistent: the flaw is reachable only via the Docker VolumeDriver.Create request to the plugin's Unix socket, so the attacker must already be the Docker daemon or a workload permitted to request named volumes - hence local vector and high privilege. There is no EPSS score, no CISA KEV listing, and no public exploit code cited, so this is not a widespread-exploitation priority. Impact is limited to integrity/availability (privileged directory creation and remote-FS mount at an arbitrary host path, shadowing/disrupting system directories) with no direct confidentiality loss claimed. Note one defensible point of disagreement: because the mounted directory affects host paths outside the plugin's own tree, a case could be made for a scope change (CVSS 3.1 S:C / higher subsequent-system impact), but the practical risk remains gated behind PR:H, so overall priority stays moderate - patch on a normal cycle, prioritizing multi-tenant orchestration environments. |
| Exploit ScenarioDerived | In a multi-tenant orchestration setup where an rclone Docker volume plugin is running privileged, an attacker who can submit a named-volume creation request supplies a volume name like '../../../../../../etc'. filepath.Join(drv.root, name) resolves outside /var/lib/docker-volumes/rclone, and the privileged plugin calls file.MkdirAll and mounts an attacker-specified remote filesystem over that host path, shadowing or disrupting a system directory. No public exploit code is identified at time of analysis; exploitation requires the ability to reach the plugin socket. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 19, 2026
Path traversal in rclone's Docker volume plugin ('rclone serve docker', versions 1.56.0 through 1.75.0) lets an attacker who can submit a VolumeDriver.Create request to the plugin socket make the privileged rclone process create a directory and mount an attacker-specified remote filesystem at an arbitrary host path. The attacker must already be in a high-privileged, socket-scoped position (PR:H) - normally the Docker daemon itself or, in a multi-tenant orchestration environment, a workload allowed to request named volumes - and no user interaction is required. Impact is bounded to unauthorized directory creation and remote-filesystem mounting over host paths rather than arbitrary code execution, and no public exploit code or confirmed active exploitation was identified at time of analysis; a vendor patch is available in 1.75.1.
RemediationAI
Vendor-released patch: upgrade rclone to 1.75.1 or later, which adds confinement of the computed mountpoint to drv.root in both newVolume() and restoreState(); this is the primary fix and should be applied to any host running 'rclone serve docker'. If immediate upgrade is not possible, the most reliable compensating control is to stop exposing the volume plugin entirely - do not run 'rclone serve docker' on hosts that do not require it - with the trade-off that the intended Docker volume workflow is lost. Where the plugin must stay enabled, tighten the volume-plugin Unix socket (ownership and mode, e.g. root-only access, plus any available socket-level access control) so that only the Docker daemon can connect; this blocks untrusted workloads but does not protect against a compromised or rogue daemon and may break legitimate multi-tenant named-volume requests. In multi-tenant orchestrators, revoke the ability for tenants to request arbitrary named volumes, and audit or monitor VolumeDriver.Create payloads for names containing '..' segments as a detection measure, recognizing that such filtering is fragile and not a substitute for patching. When restoring persisted volume state after upgrading, verify previously recorded volume names for traversal sequences before reloading, since restoreState() could replay an unvalidated name. Note that because the impact is limited to privileged directory creation and remote-filesystem mounts rather than code execution, no additional containment beyond upgrading and socket restriction is generally required.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in 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 rooted in CWE-73 (External Control of File Name or Path) in cmd/serve/docker/volume.go. When a Docker VolumeDriver.Create request arrives, newVolume() builds the volume mountpoint with filepath.Join(drv.root, name) using the attacker-supplied Name field. filepath.Join only cleans the resulting path syntactically; it does not verify that the result remains under drv.root (default /var/lib/docker-volumes/rclone), so a name containing enough '..' components (e.g. '../../../../../../etc') resolves outside the base directory. checkMountpoint() then calls file.MkdirAll on that resolved path before mounting the remote filesystem named in the same request, giving the privileged plugin process a write primitive for directories and mounts anywhere on the host filesystem that rclone can reach. The advisory notes that Volume.restoreState() had the identical missing validation when reloading persisted volume state, so an attacker-influenced persisted name could be replayed on restart. The affected component is the rclone Docker volume-plugin server, which speaks the Docker volume plugin API over a Unix socket; the CPE cpe:2.3:a:rclone:rclone:*:*:*:*:*:*:*:* covers the whole rclone project, but only builds running 'rclone serve docker' are exposed. This is a non-default deployment, which is why the assessed severity (CVSS 3.1 AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:L) is medium rather than high.
Know when Rclone 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:L/AC:L/AT:N/PR:H/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
Reachable only via the local plugin socket by a privileged caller (Docker daemon/orchestration workload), so AV:L and PR:H; limited integrity/availability from arbitrary mkdir+mount, no confidentiality.
AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:L
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
rclone versions 1.56.0 through 1.75.0 contain a path traversal vulnerability in the rclone serve docker volume plugin. newVolume() in cmd/serve/docker/volume.go computes a volume's mountpoint as filepath.Join(drv.root, name) from the attacker-supplied name field of a Docker VolumeDriver.Create request without verifying that the result stays within drv.root (default /var/lib/docker-volumes/rclone), and checkMountpoint() then creates that directory with file.MkdirAll before mounting. A volume name containing enough .. components (e.g. "../../../../../../etc") therefore resolves outside the base directory, allowing anyone able to submit a VolumeDriver.Create request to the plugin socket - normally the Docker daemon, or a workload that can request named volumes in a multi-tenant orchestration setup - to make the privileged rclone plugin process create a directory and mount a remote filesystem specified in the same request at an arbitrary host path, shadowing or disrupting system directories. The advisory notes Volume.restoreState() had the same missing validation when reloading persisted volume state. Fixed in 1.75.1.
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.
Authentication bypass in rclone's S3 server mode (rclone serve s3) allows any unauthenticated network attacker to impers
PowerShell smart-quote filename injection in rclone's SFTP backend allows an attacker who controls remote filenames to e
An issue was discovered in Rclone before 1.53.3. Rated high severity (CVSS 7.5), this vulnerability is remotely exploita
Cross-session credential isolation failure in rclone's FTP auth-proxy driver (versions 1.64.0-1.75.0) allows an authenti
Symlink escape in rclone's local backend (prior to v1.75.1) allows an attacker who controls sync source contents to appl
FTP CRLF injection in rclone before 1.75.0 allows an attacker who can place crafted filenames in a source namespace to i
Path traversal (Zip Slip class) in rclone's archive ZIP backend permits arbitrary file writes outside the intended desti
Denial of service in rclone prior to 1.75.1 allows unauthenticated remote attackers to crash individual HTTP or WebDAV c
Path traversal in rclone prior to 1.75.1 allows an attacker who can populate a source object store with raw `..` key seg
Cleartext disclosure of AWS STS session tokens affects rclone before 1.74.4 when its S3 backend follows a redirect that
Authentication/authorization bypass in rclone's dynamic serve interface (versions 1.70.0 through 1.75.0) lets remote att
Path traversal in the `rclone serve restic --private-repos` REST server (versions prior to 1.74.4) allows an authenticat
EUVD-2026-83592
GHSA-jg5v-4p8w-hwm3
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB