CVE-2026-79778
rclone before v1.75.0 Denial of Service via TUS nil-response panic
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- Passive
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
6.0
rclone before v1.75.0 Denial of Service via TUS nil-response panic
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
CVE-2026-79778- CVSS 4.0
- 6.0 Medium
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-248
- Updated
- 2026-11-02
EUVDEUVD-2026-65536
6.0
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
EUVD-2026-65536- CVSS 4.0
- 6.0 Medium
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-3x6r-wxxg-53vv
5.3
rclone: Infinite Scale TUS Creation Transport Error Causes a Nil-Response Panic
1. Summary
A transport failure during the initial Infinite Scale TUS creation POST can return (nil response, non-nil error). Rclone dereferences the nil response before processing the error and panics. The production CreateUploader path reproduced the crash against a closed endpoint.
The security case is deployment-dependent. A one-shot upload already fails when its endpoint resets, while RC jobs recover panics in fs/rc/jobs/job.go and return a job error. The incremental denial of service is strongest in a long-lived VFS mount or concurrent/multi-remote CLI process where the upload runs in an unrecovered goroutine and the panic terminates unrelated work.
2. Affected Assets & Attack Surface
- Verified rclone revision:
a0c09f1381ae93e2a9a33c529d170186c61ad058(v1.74.0-240-ga0c09f138) - Current-master check:
backend/webdav/tus.gowas unchanged at master commit961266888fe797390c535386f3b3aa46f4853602on 2026-07-18 - Response evaluation:
backend/webdav/tus.go:45-59 - Creation path:
backend/webdav/tus.go:61-107 - Unrecovered VFS caller:
vfs/write.go:71-81 - Contained RC caller:
fs/rc/jobs/job.go:107-115 - Configuration: Infinite Scale WebDAV uploads using TUS
- Code triggers: any pre-response transport failure, including refusal, reset, timeout, DNS/TLS/proxy failure, or cancellation
- Security trigger: a malicious/compromised configured endpoint resets an upload in a long-lived or multi-workload process
3. Technical Root Cause Analysis
getTusLocationOrRetry switches on resp.StatusCode before checking whether resp is nil or handling the accompanying error. A nil response is valid when the HTTP transaction fails before a response is parsed. There is no recovery boundary in the WebDAV operation itself. Whether the panic is process-fatal depends on its caller: the VFS write path starts operations.Rcat in an unrecovered goroutine (vfs/write.go:71-81), whereas RC jobs wrap their function in recover (fs/rc/jobs/job.go:107-115).
4. Proof-of-Concept & Evidence
- Configure the actual Infinite Scale creation path to a closed local endpoint.
- Invoke
Object.CreateUploader. - The POST returns a transport error and no response.
getTusLocationOrRetrydereferencesresp.StatusCodeand panics.
A remote endpoint can produce the same (nil response, non-nil error) state by accepting and resetting the connection before returning an HTTP response. TLS prevents arbitrary response modification but does not prevent the configured endpoint from closing or resetting its own connection. Refusal, DNS, TLS, proxy, and cancellation failures exercise the code defect but do not by themselves identify a remote security actor.
5. Impact Assessment
In an unrecovered CLI or VFS upload goroutine, the panic terminates the rclone process and any unrelated work it hosts. A hostile configured endpoint can repeat the condition whenever the victim initiates a TUS upload. RC jobs are excluded from the process-wide impact because their execution boundary recovers the panic and records an error. In a one-shot process dedicated to the hostile endpoint, the incremental security impact over an ordinary transport error is limited.
6. Remediation Guidance
- Check
resp == nilbefore accessing response fields. - Pass transport errors through the existing retry policy and return a normal error after exhaustion.
- Test refusal, reset, timeout, DNS, TLS, proxy, and cancellation paths.
- Add panic containment to long-lived worker goroutines as defense in depth; keep nil handling as the primary fix.
- Record
GHSA-3x6r-wxxg-53vv- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-248, CWE-476
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-hqc5-cqqv-7gwf
6.0
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation...
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
GHSA-hqc5-cqqv-7gwf- CVSS 4.0
- 6.0 Medium
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/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 - CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-248
- Updated
- 2026-11-02
NVD
6.0
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
CVE-2026-79778- CVSS 4.0
- 6.0 Medium
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/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 - CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-248
- Updated
- 2026-11-02
OSV
6.0
rclone before v1.75.0 Denial of Service via TUS nil-response panic
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
CVE-2026-79778- CVSS 4.0
- 6.0 Medium
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N - Weakness
- CWE-248
- Updated
- 2026-11-02
Show 5 moreShow less
OSVDEBIAN-CVE-2026-79778
6.0
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
DEBIAN-CVE-2026-79778- CVSS 4.0
- 6.0 Medium
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/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 - Updated
- 2026-11-02
OSVGHSA-3x6r-wxxg-53vv
5.3
rclone: Infinite Scale TUS Creation Transport Error Causes a Nil-Response Panic
1. Summary
A transport failure during the initial Infinite Scale TUS creation POST can return (nil response, non-nil error). Rclone dereferences the nil response before processing the error and panics. The production CreateUploader path reproduced the crash against a closed endpoint.
The security case is deployment-dependent. A one-shot upload already fails when its endpoint resets, while RC jobs recover panics in fs/rc/jobs/job.go and return a job error. The incremental denial of service is strongest in a long-lived VFS mount or concurrent/multi-remote CLI process where the upload runs in an unrecovered goroutine and the panic terminates unrelated work.
2. Affected Assets & Attack Surface
- Verified rclone revision:
a0c09f1381ae93e2a9a33c529d170186c61ad058(v1.74.0-240-ga0c09f138) - Current-master check:
backend/webdav/tus.gowas unchanged at master commit961266888fe797390c535386f3b3aa46f4853602on 2026-07-18 - Response evaluation:
backend/webdav/tus.go:45-59 - Creation path:
backend/webdav/tus.go:61-107 - Unrecovered VFS caller:
vfs/write.go:71-81 - Contained RC caller:
fs/rc/jobs/job.go:107-115 - Configuration: Infinite Scale WebDAV uploads using TUS
- Code triggers: any pre-response transport failure, including refusal, reset, timeout, DNS/TLS/proxy failure, or cancellation
- Security trigger: a malicious/compromised configured endpoint resets an upload in a long-lived or multi-workload process
3. Technical Root Cause Analysis
getTusLocationOrRetry switches on resp.StatusCode before checking whether resp is nil or handling the accompanying error. A nil response is valid when the HTTP transaction fails before a response is parsed. There is no recovery boundary in the WebDAV operation itself. Whether the panic is process-fatal depends on its caller: the VFS write path starts operations.Rcat in an unrecovered goroutine (vfs/write.go:71-81), whereas RC jobs wrap their function in recover (fs/rc/jobs/job.go:107-115).
4. Proof-of-Concept & Evidence
- Configure the actual Infinite Scale creation path to a closed local endpoint.
- Invoke
Object.CreateUploader. - The POST returns a transport error and no response.
getTusLocationOrRetrydereferencesresp.StatusCodeand panics.
A remote endpoint can produce the same (nil response, non-nil error) state by accepting and resetting the connection before returning an HTTP response. TLS prevents arbitrary response modification but does not prevent the configured endpoint from closing or resetting its own connection. Refusal, DNS, TLS, proxy, and cancellation failures exercise the code defect but do not by themselves identify a remote security actor.
5. Impact Assessment
In an unrecovered CLI or VFS upload goroutine, the panic terminates the rclone process and any unrelated work it hosts. A hostile configured endpoint can repeat the condition whenever the victim initiates a TUS upload. RC jobs are excluded from the process-wide impact because their execution boundary recovers the panic and records an error. In a one-shot process dedicated to the hostile endpoint, the incremental security impact over an ordinary transport error is limited.
6. Remediation Guidance
- Check
resp == nilbefore accessing response fields. - Pass transport errors through the existing retry policy and return a normal error after exhaustion.
- Test refusal, reset, timeout, DNS, TLS, proxy, and cancellation paths.
- Add panic containment to long-lived worker goroutines as defense in depth; keep nil handling as the primary fix.
- Record
GHSA-3x6r-wxxg-53vv- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-248, CWE-476
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-79778
6.0
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
UBUNTU-CVE-2026-79778- CVSS 4.0
- 6.0 Medium
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVBIT-rclone-2026-79778 No score
rclone before v1.75.0 Denial of Service via TUS nil-response panic
rclone before v1.75.0 contains a denial of service vulnerability in the WebDAV TUS creation handler that dereferences a nil response before checking for transport errors. A malicious or compromised configured endpoint can reset connections during TUS uploads to trigger a panic that terminates unrecovered goroutines and halts unrelated work in long-lived processes.
- Record
BIT-rclone-2026-79778- Updated
- 2026-11-02
OSVGO-2026-6183 No score
Nil pointer dereference in Infinite Scale TUS uploads in github.com/rclone/rclone
During WebDAV Infinite Scale TUS upload creation, a transport failure can return a nil HTTP response along with an error. When handling the failure, rclone dereferences the nil response before checking the error, causing a panic that can crash the process in unrecovered contexts such as VFS mounts.
- Record
GO-2026-6183- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
github.com/rclone/rcloneGo |
through 1.74.0 | 1.75.0 |
rcloneBitnami |
before 1.75.0 | 1.75.0 |
rcloneDebian:12 |
All versions, plus listed versions 1.60.1+dfsg-21.60.1+dfsg-31.60.1+dfsg-41.65.0+dfsg-11.65.0+dfsg-21.69.3+dfsg-11.69.3+dfsg-21.69.3+dfsg-3 |
None known |
rcloneDebian:13 |
All versions, plus listed versions 1.60.1+dfsg-41.65.0+dfsg-11.65.0+dfsg-21.69.3+dfsg-11.69.3+dfsg-21.69.3+dfsg-3 |
None known |
github.com/rclone/rcloneGo |
before 1.75.0 | 1.75.0 |
rcloneUbuntu:18.04:LTS |
All versions, plus listed versions 1.36-31.36-3ubuntu0.11.36-3ubuntu0.2 |
None known |
rcloneUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 1.47.0+ex1-61.47.0+ex1-71.49.5-21.49.5-31.50.2-21.50.2-2ubuntu0.11.50.2-2ubuntu0.21.50.2-2ubuntu0.2+esm1 |
None known |
rcloneUbuntu:Pro:22.04:LTS |
All versions, plus listed versions 1.53.3-11.53.3-21.53.3-41.53.3-4ubuntu11.53.3-4ubuntu1.22.04.1 Show 7 moreShow less1.53.3-4ubuntu1.22.04.21.53.3-4ubuntu1.22.04.31.53.3-4ubuntu1.22.04.3+esm11.53.3-4ubuntu1.22.04.41.53.3-4ubuntu1.22.04.4+esm11.53.3-4ubuntu1.22.04.51.53.3-4ubuntu1.22.04.5+esm1 |
None known |
rcloneUbuntu:Pro:24.04:LTS |
All versions, plus listed versions 1.60.1+dfsg-2build11.60.1+dfsg-31.60.1+dfsg-3ubuntu0.24.04.11.60.1+dfsg-3ubuntu0.24.04.21.60.1+dfsg-3ubuntu0.24.04.3 Show 6 moreShow less1.60.1+dfsg-3ubuntu0.24.04.41.60.1+dfsg-3ubuntu0.24.04.4+esm11.60.1+dfsg-3ubuntu0.24.04.51.60.1+dfsg-3ubuntu0.24.04.5+esm11.60.1+dfsg-3ubuntu0.24.04.61.60.1+dfsg-3ubuntu0.24.04.6+esm1 |
None known |
rcloneUbuntu:26.10 |
All versions, plus listed versions 1.60.1+dfsg-4ubuntu31.69.3+dfsg-31.69.3+dfsg-3ubuntu1 |
None known |
rcloneUbuntu:Pro:26.04:LTS |
All versions, plus listed versions 1.60.1+dfsg-4ubuntu21.60.1+dfsg-4ubuntu31.60.1+dfsg-4ubuntu3.11.60.1+dfsg-4ubuntu3.1+esm11.60.1+dfsg-4ubuntu3.21.60.1+dfsg-4ubuntu3.2+esm1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-79778 is a medium vulnerability (CVSS 6.0) in Rclone, published August 5, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.29%, the 21st percentile. Fixed in github.com/rclone/rclone 1.75.0.
References
github.com/rclone/rclone/security/advisories/GHSA-3x6r-wxxg-53vv
vulncheck.com/advisories/rclone-before-denial-of-service-via-tus-nil-response-panic
github.com/rclone/rclone/commit/5871d98c368751a6d992ed64f8cd22cb78c44cee
github.com/rclone/rclone/releases/tag/v1.75.0
github.com/advisories/GHSA-3x6r-wxxg-53vv
nvd.nist.gov/vuln/detail/CVE-2026-79778