medium

GHSA-h4mf-4v27-hggj

Go · github.com/rclone/rclone

Summary

rclone: WebDAV Credentials Survive a Same-Host HTTPS-to-HTTP Redirect

Severity
medium
CVSS
5.3
CWE
CWE-319, CWE-522
Published
2026-08-05
Updated
2026-08-05

Advisory details

1. Summary

WebDAV's default redirect handling can replay Basic authorization and configured Cookie headers over plaintext HTTP after a same-host HTTPS-to-HTTP redirect. This was reproduced through the real backend. Unlike the low-impact STS token in rclone's published S3 redirect advisory, Basic passwords and session cookies are complete reusable credentials, supporting a High rating when they grant normal WebDAV read/write access.

The credible threat requires a legitimate endpoint, gateway, or accelerator to emit an unsafe redirect and an adjacent/on-path actor to observe the plaintext hop. A report should not rely on a malicious original WebDAV endpoint because that endpoint already receives the credentials.

2. Affected Assets & Attack Surface

3. Technical Root Cause Analysis

PreserveMethodRedirectFn limits redirect count and restores the original method, but it does not reject a transport downgrade or compare the full origin tuple. The client therefore relies on Go's hostname-oriented sensitive-header forwarding rules. Those rules can preserve Authorization and Cookie on a same-host redirect even when the new scheme is plaintext HTTP.

4. Proof-of-Concept & Evidence

  1. Configure the actual WebDAV backend with Basic credentials and a Cookie.
  2. Have the TLS endpoint return 307 Temporary Redirect to an HTTP listener on the same hostname and a different port.
  3. rclone follows the redirect while preserving the WebDAV method.
  4. The plaintext listener receives both the Basic Authorization value and Cookie.

5. Impact Assessment

An on-path observer can reuse the captured password, bearer token, or session cookie for the account's permitted WebDAV operations. Confidentiality, integrity, and availability impact depend on that account's permissions.

6. Remediation Guidance

References

Related advisories

Is your project exposed to this? Stateward checks every dependency on every pull request and flags it only if your code actually reaches it.

Check my repo

Summarize with AI

ChatGPTClaudePerplexity

Sources: CISA KEV (public domain), OSV.dev & GitHub Advisory Database (CC-BY-4.0), FIRST EPSS, NVD/CWE (public domain). Served live from the Stateward advisory database.