Skip to main content

RustFS CVE-2026-45042

| EUVDEUVD-2026-32995 HIGH
Incorrect Authorization (CWE-863)
2026-05-28 GitHub_M
7.1
CVSS 4.0 · GitHub Advisory
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Authenticate to RustFS with low-privileged credentials
  2. Delivery
    Identify target objects in restricted source bucket
  3. Exploit
    Initiate multipart upload to attacker-controlled destination bucket
  4. Install
    Issue UploadPartCopy referencing restricted source
  5. C2
    Bypass destination copy-source policy via independent ACL checks
  6. Execute
    Complete multipart upload to assemble copied objects
  7. Impact
    Exfiltrate replicated data from attacker bucket

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Attacker must (1) hold valid RustFS credentials with s3:GetObject permission on at least one source object and s3:PutObject permission on a destination bucket - consistent with PR:L in the CVSS vector - and (2) issue the S3 UploadPartCopy multipart operation specifying an x-amz-copy-source that the destination bucket's policy was meant to disallow; no user interaction, no special platform, and no non-default configuration is required, and the RustFS instance must be running any version prior to 1.0.0-beta.2. Exploitation is limited by the requirement for pre-existing authenticated access and is only security-relevant in deployments that rely on per-bucket copy-source policy constraints (typical of multi-tenant or policy-segmented object stores); single-tenant deployments where one principal already has cross-bucket access derive no additional capability from the bug.

Impact

The CVSS 4.0 vector AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N (base 7.1) indicates a network-reachable, low-complexity attack requiring low privileges, no user interaction, with high confidentiality impact but no integrity or availability impact - consistent with a data-exfiltration / unauthorized-copy primitive rather than RCE or destruction. The PR:L requirement is significant: the attacker must already hold valid credentials with GetObject on some source and PutObject on some destination, so this is a privilege-escalation / lateral-movement issue inside a multi-tenant or policy-segmented deployment rather than an unauthenticated internet-facing flaw. EPSS, KEV status, SSVC decision values, and POC availability were not provided in the input; no public exploit was identified at time of analysis and the CVE is not present in CISA KEV. Real-world priority is moderate-to-high for operators running RustFS as a shared/multi-tenant object store where bucket-level policy isolation is part of the security model, and lower for single-tenant deployments where any authenticated principal would already have broad object access.

Exploit ScenarioDerived

An authenticated tenant in a shared RustFS deployment initiates a multipart upload to a destination bucket they control, then issues UploadPartCopy requests referencing objects in a second bucket whose policy was intended to forbid being used as a copy source to that destination; RustFS approves each request because GetObject and PutObject are evaluated independently, and the attacker assembles a complete copy of the restricted objects inside their own bucket. No public proof-of-concept was identified at time of analysis, but the attack is straightforward to script against any S3 SDK given valid credentials.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – May 28, 2026

Improper authorization in RustFS prior to 1.0.0-beta.2 allows authenticated users to perform unauthorized cross-bucket object copies via the S3-compatible UploadPartCopy operation, bypassing destination-bucket policy constraints on permitted copy sources. The Rust-based distributed object storage system validates GetObject on the source and PutObject on the destination independently but never checks whether the destination bucket actually permits the specified source, enabling lateral data movement between buckets. No public exploit identified at time of analysis and the issue is not listed in CISA KEV.

RemediationAI

Upgrade to the vendor-released patched version RustFS 1.0.0-beta.2 or later, which corrects the UploadPartCopy authorization logic per the project advisory at https://github.com/rustfs/rustfs/security/advisories/GHSA-wfxj-ph3v-7mjf. If immediate upgrade is not possible, compensating controls include denying the s3:PutObject action when the request includes an x-amz-copy-source header via a gateway/reverse-proxy rule (which blocks all server-side copies and breaks legitimate multipart-copy workflows), tightening IAM so that no principal simultaneously holds GetObject on cross-tenant source buckets and PutObject on policy-restricted destinations, and auditing existing buckets for objects that may already have been copied in via UploadPartCopy. Each workaround sacrifices native S3 copy functionality, so apply only until the upgrade is rolled out.

Affected VersionsENISA

rustfs < 1.0.0-beta.2

Affected Packages

euvd rustfs fix: 1.0.0-beta.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

RustFS is a distributed, S3-compatible object storage system implemented in Rust and identified by CPE cpe:2.3:a:rustfs:rustfs. The flaw is a CWE-863 (Incorrect Authorization) defect in the multipart-upload UploadPartCopy handler, which is the S3 API used to copy byte ranges from an existing object into a part of an in-progress multipart upload. In a correct S3 implementation, bucket policies on the destination can constrain the allowed x-amz-copy-source values (for example, restricting copies to objects from a specific source bucket or prefix). RustFS instead evaluates only two independent ACL checks - GetObject on the caller's source reference and PutObject on the destination - and never reconciles the destination bucket's source-copy policy, collapsing what should be a joint authorization decision into two disjoint ones.

Know when Rustfs gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

GitHub Advisory PRIMARY 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from GitHub Advisory · only source for this CVE.

CVSS VectorGitHub Advisory

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
May 28, 2026 - 20:02 EUVD
CVSS changed
May 28, 2026 - 19:22 NVD
7.1 (HIGH)

DescriptionGitHub Advisory

RustFS is a distributed object storage system built in Rust. Prior to 1.0.0-beta.2, improper authorization in the UploadPartCopy operation allows copying objects across buckets without enforcing destination bucket restrictions on allowed copy sources. The implementation validates GetObject permission on the source bucket and PutObject on the destination bucket independently, but does not enforce any policy constraints on whether the destination bucket permits the specified copy source. This enables unauthorized cross-bucket data movement. This vulnerability is fixed in 1.0.0-beta.2.

Executive ViewAI

Why It Matters

RustFS versions prior to 1.0.0-beta.2 contain an authorization bypass in the UploadPartCopy operation that allows authenticated users to circumvent bucket policies and perform unauthorized cross-bucket data copies, creating lateral data movement risk for organizations relying on bucket isolation as a security boundary. Multi-tenant deployments and environments with sensitive data segregation face elevated risk of unauthorized data access between isolated buckets. Immediate assessment and interim controls are required to prevent lateral movement within RustFS object storage infrastructure.

Business Impact: High
Compensating Controls

Disable or restrict UploadPartCopy at API gateway or application middleware layer; enforce supplementary destination-bucket authorization checks in application code; implement real-time monitoring and alerting for cross-bucket copy operations; apply network-level isolation for sensitive buckets pending patch availability.

Threat Intelligence Overview

EPSS Score
0.0%
Top 88% exploitable
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in Rustfs

View all
CVE-2026-22043 CRITICAL POC
9.8 Jan 08

RustFS (alpha.13 to alpha.78) has a privilege escalation where restricted service accounts can self-issue unrestricted c

CVE-2026-27822 CRITICAL POC
9.0 Feb 25

Stored XSS in RustFS distributed object storage system before 1.0.0-alpha.83. Malicious JavaScript persists in stored ob

CVE-2026-22042 HIGH POC
8.8 Jan 08

Incorrect IAM permission validation in RustFS prior to version 1.0.0-alpha.79 permits principals with export-only permis

CVE-2025-68705 HIGH POC
8.8 Jan 07

Path traversal in the RustFS /rustfs/rpc/read_file_stream endpoint allows an attacker to read arbitrary files from the h

CVE-2026-22782 HIGH POC
7.5 Jan 16

RustFS versions 1.0.0-alpha.1 through 1.0.0-alpha.79 expose the shared HMAC secret in server logs when processing invali

CVE-2026-45039 CRITICAL
9.8 May 28

Authentication bypass in RustFS distributed object storage (versions prior to 1.0.0-beta.2) allows unauthenticated remot

CVE-2025-69255 MEDIUM POC
5.5 Jan 07

RustFS is a distributed object storage system built in Rust. [CVSS 4.0 MEDIUM]

CVE-2026-45043 CRITICAL
9.3 May 29

Privilege escalation in RustFS distributed object storage before 1.0.0-beta.2 lets a low-privileged user holding ImportI

CVE-2026-62378 CRITICAL
9.0 Jul 15

Stored cross-site scripting in RustFS Console (0.1.7 through 0.1.9) lets an attacker upload an HTML payload disguised as

CVE-2026-73284 HIGH
8.8 Aug 12

Privilege escalation in RustFS prior to version 1.0.0-beta.11 allows any authenticated user holding CreateServiceAccount

CVE-2026-45044 HIGH
8.8 May 28

Unauthenticated denial of service and information disclosure in RustFS distributed object storage prior to version 1.0.0

CVE-2026-45041 HIGH
8.7 May 28

License-enforcement bypass in RustFS distributed object storage (versions prior to 1.0.0-beta.2) stems from a hardcoded

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy