Description
RustFS is a distributed object storage system built in Rust. Prior to 1.0.0-beta.2, the internode RPC layer authenticates every request with an HMAC-SHA256 signature using a shared secret. The function that produces this secret, get_shared_secret() in crates/ecstore/src/rpc/http_auth.rs, falls back to the public, source-tree-embedded DEFAULT_SECRET_KEY = "rustfsadmin" when neither the RUSTFS_RPC_SECRET environment variable nor the global S3 secret key has been configured. This vulnerability is fixed in 1.0.0-beta.2.
Published: 2026-05-28
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The get_shared_secret function in RustFS falls back to a hard‑coded public secret when no custom secret is set, so internode RPC calls are authenticated with a predictable key. This flaw allows any node or attacker who gains access to the internal RPC channel to impersonate a legitimate peer, potentially performing unauthorized data operations or disrupting the cluster. The weakness is a credential‑in‑source‑code error (CWE‑798), leading to authentication bypass.

Affected Systems

The vulnerability affects the RustFS distributed object storage system for all releases prior to 1.0.0‑beta.2. Any deployment using the default embedded key “rustfsadmin” without setting RUSTFS_RPC_SECRET or a global S3 secret key is susceptible.

Risk and Exploitability

With a CVSS score of 9.8, this flaw is considered critical. While no EPSS score is currently available, the high severity and the absence from the CISA KEV catalog do not diminish its threat. An attacker would need to join the internode RPC network or compromise an existing node; the default key then enables impersonation and bypasses authentication. The attack surface is constrained to nodes that have not configured a custom secret, so internal or compromised environments are the most likely vectors.

Generated by OpenCVE AI on May 28, 2026 at 20:36 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to RustFS 1.0.0‑beta.2 or later where the default secret is removed.
  • Configure a unique RUSTFS_RPC_SECRET on every node to replace the hard‑coded key if an upgrade cannot be performed immediately.
  • Set a global S3 secret key so that the shared secret is derived from that instead of the public value.

Generated by OpenCVE AI on May 28, 2026 at 20:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 30 May 2026 04:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Thu, 28 May 2026 21:00:00 +0000

Type Values Removed Values Added
First Time appeared Rustfs
Rustfs rustfs
Vendors & Products Rustfs
Rustfs rustfs

Thu, 28 May 2026 19:00:00 +0000

Type Values Removed Values Added
Description RustFS is a distributed object storage system built in Rust. Prior to 1.0.0-beta.2, the internode RPC layer authenticates every request with an HMAC-SHA256 signature using a shared secret. The function that produces this secret, get_shared_secret() in crates/ecstore/src/rpc/http_auth.rs, falls back to the public, source-tree-embedded DEFAULT_SECRET_KEY = "rustfsadmin" when neither the RUSTFS_RPC_SECRET environment variable nor the global S3 secret key has been configured. This vulnerability is fixed in 1.0.0-beta.2.
Title RustFS: Internode RPC HMAC secret falls back to public default credential, enabling peer impersonation
Weaknesses CWE-1392
CWE-798
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-05-30T02:11:41.994Z

Reserved: 2026-05-08T18:07:27.341Z

Link: CVE-2026-45039

cve-icon Vulnrichment

Updated: 2026-05-30T02:11:36.352Z

cve-icon NVD

Status : Deferred

Published: 2026-05-28T19:16:38.390

Modified: 2026-05-29T15:11:03.853

Link: CVE-2026-45039

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-05-28T20:45:26Z

Weaknesses
  • CWE-1392

    Use of Default Credentials

  • CWE-798

    Use of Hard-coded Credentials