rclone archive extract allows S3 destination prefix escape via crafted archive paths
Exploitation and risk
Source statusCISA KEV lists vulnerabilities known to be exploited. FIRST EPSS estimates the likelihood of exploitation in the next 30 days. An unavailable score does not mean zero risk.
Which CVEs have scores here?
This view includes predictions for CVE identifiers explicitly listed in public NuGet advisories. Microsoft release pages have their own prediction coverage. Check source status for the scope and latest checks.
No exploitation or prediction data is available here for these CVEs. This does not mean they are safe or unlikely to be exploited.
cve-program · CVE-2026-59732
PublishedRclone is a command-line program to sync files and directories to and from different cloud storage providers. Prior to 1.74.4, rclone archive extract can write extracted files outside the user-selected destination prefix when extracting a crafted archive containing parent path components such as ../, allowing creation or overwrite of sibling objects in the same bucket or path scope. This issue is fixed in version 1.74.4.
- Source published
- 14 Jul 2026 21:36:21 UTC
- Source modified
- 21 Jul 2026 14:43:46 UTC
- Saved here
- 23 Oct 2026 15:48:27 UTC
- Source terms
- CVE Program Terms of Use
Original source record · Cite this exact observation · Complete original publisher JSON
Source: cve-program · CVE Program Terms of Use. The publisher's wording is preserved. ChangeIntel groups the information and labels changes. The JSON record includes additional source fields.
CVSS 3.1 · 5.0 CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:L
euvd · EUVD-2026-44530
PublishedRclone is a command-line program to sync files and directories to and from different cloud storage providers. Prior to 1.74.4, rclone archive extract can write extracted files outside the user-selected destination prefix when extracting a crafted archive containing parent path components such as ../, allowing creation or overwrite of sibling objects in the same bucket or path scope. This issue is fixed in version 1.74.4.
Additional publisher context
EUVD source date text has no stated timezone and is retained without inventing a UTC instant. Related bulletin membership is not an alias, common cause or applicability claim. A missing vector with a zero score is treated as unrated. Complete vendor/product and underlying source evidence remains in the original JSON.
Original publisher date fields
datePublished: Jul 14, 2026, 9:36:21 PM
dateUpdated: Jul 21, 2026, 2:43:46 PM
2 related source bulletins · separate from aliases
openSUSE-SU-2026:11241-1: rclone-1.74.4-1.1 on GA media
CVE-2026-54572 · CVE-2026-59732 · CVE-2026-59733
openSUSE-SU-2026:21436-1: Security update for rclone
CVE-2025-68121 · CVE-2026-25680 · CVE-2026-25681 · CVE-2026-27136 · CVE-2026-27141 · CVE-2026-27145 · CVE-2026-32952 · CVE-2026-33809 · CVE-2026-33813 · CVE-2026-33814 · CVE-2026-39821 · CVE-2026-39824 · CVE-2026-39827 · CVE-2026-39828 · CVE-2026-39829 · CVE-2026-39830 · CVE-2026-39831 · CVE-2026-39832 · CVE-2026-39833 · CVE-2026-39834 · CVE-2026-39835 · CVE-2026-41176 · CVE-2026-41179 · CVE-2026-42500 · CVE-2026-42502 · CVE-2026-42504 · CVE-2026-42506 · CVE-2026-42507 · CVE-2026-42508 · CVE-2026-44740 · CVE-2026-46595 · CVE-2026-46597 · CVE-2026-46598 · CVE-2026-49980 · CVE-2026-54572 · CVE-2026-59732 · CVE-2026-59733
- Source published
- Jul 14, 2026, 9:36:21 PM (timezone not stated)
- Source modified
- Jul 21, 2026, 2:43:46 PM (timezone not stated)
- Saved here
- 13 Nov 2026 16:02:38 UTC
- Source terms
- ENISA EUVD · source terms and attribution apply
Original source record · Cite this exact observation · Complete original publisher JSON
Source: euvd · ENISA EUVD · source terms and attribution apply. The publisher's wording is preserved. ChangeIntel groups the information and labels changes. The JSON record includes additional source fields.
EUVD CVSS 3.1 · 5.0 CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:L
nvd · CVE-2026-59732
PublishedRclone is a command-line program to sync files and directories to and from different cloud storage providers. Prior to 1.74.4, rclone archive extract can write extracted files outside the user-selected destination prefix when extracting a crafted archive containing parent path components such as ../, allowing creation or overwrite of sibling objects in the same bucket or path scope. This issue is fixed in version 1.74.4.
Additional publisher context
NVD analysis and CPE criteria are source context, not proof that a package or your environment is affected. Complete affected data, logical configurations and SSVC are retained in the original JSON.
Source analysis status: Modified
Weakness classifications: CWE-22
Original publisher date fields
published: 2026-07-14T22:17:29.920
lastModified: 2026-07-21T16:17:18.697
1 source CPE criteria · context only
- cpe:2.3:a:rclone:rclone:*:*:*:*:*:*:*:*
The original JSON retains the logical configuration operators, exclusions and version bounds.
- Source published
- 14 Jul 2026 22:17:29 UTC
- Source modified
- 21 Jul 2026 16:17:18 UTC
- Saved here
- 25 Oct 2026 14:19:22 UTC
- Source terms
- NIST NVD usage terms; underlying source attribution retained
Original source record · Cite this exact observation · Complete original publisher JSON
Source: nvd · NIST NVD usage terms; underlying source attribution retained. The publisher's wording is preserved. ChangeIntel groups the information and labels changes. The JSON record includes additional source fields.
CVSS 3.1 · [email protected] · Secondary · 5.0 CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:L
osv · GHSA-4vr5-p2gc-h23p
Published### Summary `rclone archive extract` can write extracted files outside the user-selected destination prefix when extracting a crafted archive. A malicious archive entry containing parent path components such as `../` can escape the requested extraction prefix and create or overwrite sibling objects in the same bucket/path scope. ### Details The affected code path is in `cmd/archive/extract/extract.go`. In `ArchiveExtract()`, the archive entry path is taken from `f.NameInArchive`. The code strips only a leading `./` prefix and then joins the archive entry path with the destination directory: ```go remote := f.NameInArchive remote = strings.TrimPrefix(remote, "./") if dstDir != "" { remote = path.Join(dstDir, remote) } _, err = operations.Rcat(ctx, dst, remote, fin, f.ModTime(), nil) ``` Parent path components such as `../` are not rejected before `path.Join()` is used. When the destination is an S3-style remote such as: ```text :s3:bucket/safe/prefix ``` rclone creates the destination filesystem rooted at `bucket/safe` and treats `prefix` as the destination directory. If the archive contains an entry named: ```text ../escaped-from-prefix.txt ``` then `path.Join("prefix", "../escaped-from-prefix.txt")` resolves to: ```text escaped-from-prefix.txt ``` As a result, the S3 backend uploads the object to: ```text bucket/safe/escaped-from-prefix.txt ``` instead of the expected destination: ```text bucket/safe/prefix/escaped-from-prefix.txt ``` This allows an attacker-controlled archive to escape the selected extraction prefix on object-storage remotes. ### PoC Test environment: - Windows 11 - rclone v1.74.3 official Windows amd64 binary - Local fake S3 HTTP endpoint - Crafted ZIP archive containing `../escaped-from-prefix.txt` Steps to reproduce:https://drive.google.com/file/d/1P_cLKFgiWSVSATB8500yP28jdzwt9FAt/view?usp=sharing 1. Extract the attached PoC ZIP. 2. Run the PoC script: ```powershell powershell -ExecutionPolicy Bypass -File .\run-poc.ps1 -RcloneExe "C:\path\to\rclone.exe" ``` 3. The PoC creates a ZIP archive containing this entry: ```text ../escaped-from-prefix.txt ``` 4. The PoC starts a local fake S3 endpoint and runs rclone with an S3-style destination prefix: ```powershell rclone archive extract malicious.zip :s3:bucket/safe/prefix ``` 5. Observe the fake S3 request log. Expected safe behavior: ```text PUT /bucket/safe/prefix/escaped-from-prefix.txt ``` Observed behavior: ```text PUT /bucket/safe/escaped-from-prefix.txt?x-id=PutObject ``` This shows that the archive entry escaped the requested `safe/prefix` destination and was written under `safe/` instead. The PoC package includes: - `run-poc.ps1` - `fake-s3-server.py` - `README.md` - `report-draft.md` - captured proof logs ### Impact An attacker who supplies an archive that a victim extracts with `rclone archive extract` can cause extracted files to be written outside the destination prefix selected by the victim when the destination is an S3-style object storage remote. Depending on the victim's configured remote credentials and bucket permissions, this may allow creation or overwrite of sibling objects outside the intended extraction directory/prefix. This does not require compromising the S3 service itself. The attack relies on the victim extracting an attacker-controlled archive with rclone into an object-storage prefix.
- Source published
- 5 Aug 2026 20:43:47 UTC
- Source modified
- 10 Sep 2026 03:50:53 UTC
- Saved here
- 24 Oct 2026 13:19:41 UTC
- Source terms
- GitHub Advisory Database · CC-BY-4.0
Original source record · Cite this exact observation · Complete original publisher JSON
Source: osv · GitHub Advisory Database · CC-BY-4.0. The publisher's wording is preserved. ChangeIntel groups the information and labels changes. The JSON record includes additional source fields.
CVSS_V3 · CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:L
Publisher rating · MODERATE
osv · GO-2026-6185
PublishedPath traversal via crafted archive paths in github.com/rclone/rclone
- Source published
- 18 Aug 2026 16:38:10 UTC
- Source modified
- 18 Aug 2026 17:23:53 UTC
- Saved here
- 24 Oct 2026 13:19:41 UTC
- Source terms
- OSV · upstream source license applies
Original source record · Cite this exact observation · Complete original publisher JSON
Source: osv · OSV · upstream source license applies. The publisher's wording is preserved. ChangeIntel groups the information and labels changes. The JSON record includes additional source fields.