CVE-2026-22782: RustFS RPC signature verification logs shared secret
Summary Invalid RPC signatures cause the server to log the shared HMAC secret (and expected signature), which exposes the secret to log readers and enables forged RPC calls.
Details In crates/ecstore/src/rpc/httpauth.rs:115-122 , the invalid signature branch logs sensitive data: rs if signature != expectedsignature { error!( "verifyrpcsignature: Invalid signature: secret {}, url {}, method {}, timestamp {}, signature {}, expectedsignature {}", secret, url, method, timestamp, signature, expectedsignature );
return Err(std::io::Error::other("Invalid signature")); }
This log line includes secret and expectedsignature, both derived from the shared HMAC key. Any invalidly signed request triggers this path. The function is reachable from RPC and admin request handlers.
PoC 1. Run RustFS with error logging enabled. 1. Send a request with an invalid signature: ts=$(date +%s) curl -v \ -H "x-rustfs-timestamp: $ts" \ -H "x-rustfs-signature: invalid-signature" \ "http://localhost:9000/rustfs/rpc/readfilestream?disk=foo&volume=bar&path=baz&offset=0&length=1" 1. Observed output: HTTP 403 AccessDenied: Invalid signature verifyrpcsignature: Invalid signature: secret rustfsadmin, url /rustfs/rpc/readfilestream?disk=foo&volume=bar&path=baz&offset=0&length=1, method GET, timestamp 1767852115, signature invalid-signature, expectedsignature oisNxNRTb80GXf97s/PGdScJzu8QB9Oxs+uOwf8RiK8= Impact
- Exposes the shared RPC HMAC secret to log readers. - Enables attackers with log access to forge valid RPC signatures and make unauthorized RPC calls.
Other sources
RustFS is a distributed object storage system built in Rust. From >= 1.0.0-alpha.1 to 1.0.0-alpha.79, invalid RPC signatures cause the server to log the shared HMAC secret (and expected signature), which exposes the secret to log readers and enables forged RPC calls. In crates/ecstore/src/rpc/httpauth.rs, the invalid signature branch logs sensitive data. This log line includes secret and expectedsignature, both derived from the shared HMAC key. Any invalidly signed request triggers this path. The function is reachable from RPC and admin request handlers. This vulnerability is fixed in 1.0.0-alpha.80.
— MITRE
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2026-22782?
CVE-2026-22782 has a critical severity due to the potential exposure of the shared HMAC secret and the risk of forged RPC calls.
How do I fix CVE-2026-22782?
To fix CVE-2026-22782, update rustfs to version 1.0.0-alpha.80 or later.
What does CVE-2026-22782 affect?
CVE-2026-22782 affects versions of the rustfs package from 1.0.0-alpha.1 to 1.0.0-alpha.79.
What are the risks associated with CVE-2026-22782?
The risks associated with CVE-2026-22782 include unauthorized access and actions due to the exposure of the RPC signature verification secret.
Where can I find more details about CVE-2026-22782?
Details about CVE-2026-22782 can be found in the RustFS repository, particularly in the affected source code section.