Skip to main content

SeaweedFS EUVDEUVD-2026-66770

| CVE-2026-77611 HIGH
Incorrect Authorization (CWE-863)
2026-08-26 GitHub_M
7.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as low-privilege S3 principal
  2. Delivery
    Identify scoped nested key permission (e.g., allowed/protected.txt)
  3. Exploit
    Craft PutObjectAcl request for authorized nested key
  4. Execution
    Handler resolves write directory to bucket root
  5. Impact
    Overwrite root-level object sharing same basename outside authorized scope

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

Exploitation requires: (1) a valid SeaweedFS S3 API credential with at least PutObjectAcl permission on a nested object key (e.g., prefix/filename.ext); (2) the deployment must use the static S3 identity file to configure object-level action scoping that grants access to a nested path; (3) a target object must exist at the bucket root sharing the same basename as the attacker's scoped nested key (e.g., root-level filename.ext). Exploitation is limited to overwriting objects at the bucket root whose basename matches the attacker's allowed nested key - it cannot overwrite arbitrary keys. Attackers cannot read unauthorized data. Unauthenticated principals cannot exploit this flaw. Deployments where all principals have full bucket access, or where no root-level objects share basenames with nested keys, are not exposed.

Impact

CVSS 7.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L) reflects a network-exploitable, low-complexity flaw requiring only a valid low-privilege S3 credential. The high integrity score is well-founded: successful exploitation completely replaces the target object's content, metadata, and ACL, which in a multi-tenant or namespace-isolated deployment constitutes a serious authorization boundary violation. The availability impact is rated Low because the overwrite destroys the target object's data as a side effect. There is no confidentiality impact - the attacker cannot read data they are not authorized to read. EPSS data was not provided in source intelligence; without it, probabilistic exploitation likelihood cannot be quantified. The absence from CISA KEV and the lack of any reported POC code suggest opportunistic exploitation is currently low, but the vulnerability is mechanically straightforward once an attacker understands the path confusion. The fix commit and advisory are public, which lowers the barrier to reverse-engineering an exploit. Deployments using SeaweedFS with fine-grained S3 identity file scoping across nested key hierarchies are at material risk.

Exploit ScenarioDerived

An attacker operating as a low-privilege S3 tenant scoped only to tenant-uploads/report.csv calls PutObjectAcl on that key with a crafted ACL body. The handler authorizes the request correctly, but resolves the write-back directory to the bucket root and overwrites report.csv at the root level - replacing a different user's or administrator's object with the attacker's own content, metadata, and ACL grants. No exploit code is publicly known, but the exact path resolution error is exposed in the public fix commit, making the attack trivially reconstructable.

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

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

Alert me

AnalysisAIv1 – Aug 26, 2026

Incorrect authorization in SeaweedFS S3 API's PutObjectAcl handler allows an authenticated low-privilege S3 principal to overwrite objects outside their permission scope. Versions prior to 4.40 compute the write-back directory from the bucket root rather than the actual parent directory of the nested key, meaning a principal scoped to allowed/protected.txt silently overwrites protected.txt at the bucket root - clobbering its content, metadata, owner, and ACL. No public exploit code identified at time of analysis, and this CVE is not listed in CISA KEV.

RemediationAI

Upgrade to SeaweedFS version 4.40, which contains the fix in commit 311bc3a6dfbd042751692bc3de8accc516fcf8c1. The fix is confirmed in the GitHub Security Advisory GHSA-9x53-cjpr-m682 and the linked commit at https://github.com/seaweedfs/seaweedfs/commit/311bc3a6dfbd042751692bc3de8accc516fcf8c1. If immediate upgrade is not feasible, restrict S3 identity file scoping so that no principal has write permissions to any nested key path that shares a basename with a root-level object requiring protection; this eliminates the specific cross-scope overwrite condition at the cost of reduced permission granularity. Alternatively, disable PutObjectAcl access for all non-administrator S3 principals until patched, accepting that ACL self-management by tenants will be unavailable.

Affected VersionsENISA

seaweedfs < 4.40

Affected Packages

euvd seaweedfs fix: 4.40

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

SeaweedFS (cpe:2.3:a:seaweedfs:seaweedfs:*:*:*:*:*:*:*:*) implements an S3-compatible API layer in Go. The vulnerable code path is PutObjectAclHandler in weed/s3api/s3api_object_handlers_acl.go. The root cause (CWE-863: Incorrect Authorization) is a directory resolution bug: the handler correctly authorizes the request against the requested nested object key but then calls UpdateEntry with updateDirectory hard-coded to s3a.bucketDir(bucket) - always the bucket root - rather than computing the parent directory from the full object key path. Because the filer write carries the full entry (not just ACL metadata), the entire object stored at the bucket root sharing the same basename is replaced. The fix in commit 311bc3a6 introduces objectAclUpdateDirectory, which uses util.NewFullPath(s3a.bucketDir(bucket), object).DirAndName() to derive the correct parent directory for non-versioned objects, and correctly handles versioned and null-version cases separately.

Know when Seaweedfs 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

Vendor (GitHub_M) PRIMARY 7.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
vuln.today AI 7.1 HIGH

Network-exposed S3 API; requires low-privilege auth credential; no confidentiality impact; integrity is high as full object overwrite occurs; availability is low due to incidental data destruction.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
Low

Lifecycle Timeline

2
Patch available
Aug 26, 2026 - 23:03 EUVD
CVE Published
Aug 26, 2026 - 21:31 cve.org
HIGH 7.1

DescriptionCVE.org

SeaweedFS is a distributed storage system for files and blobs. In versions prior to 4.40, an authenticated S3 principal with permissions scoped to a nested object key can overwrite a different object outside that scope by calling PutObjectAcl on the key it is allowed to access. The handler authorizes the request against the requested nested key but then writes the updated entry back to the bucket root rather than the key's actual parent directory, so an ACL change on allowed/protected.txt is instead applied to protected.txt at the bucket root. Because the update carries the full entry rather than only ACL metadata, an existing target object is overwritten with the content, metadata, owner information, and ACL of the scoped object, bypassing the object-level action scoping configured through the static S3 identity file. This issue is fixed in version 4.40.

Executive ViewAI

Why It Matters

SeaweedFS S3 API versions prior to 4.40 contain an authorization flaw allowing authenticated low-privilege users to modify objects outside their assigned scope, potentially compromising data integrity for organizations using this storage platform. The vulnerability requires valid S3 credentials but affects any deployment with multiple users or shared access.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include: restricting S3 API network access to trusted networks, enforcing principle-of-least-privilege for S3 credentials with per-object policies, enabling comprehensive audit logging for all S3 PutObjectAcl operations with alerting for unauthorized modifications, and temporarily disabling S3 API access for non-critical use cases until a patched version is available.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
open-source niche distributed storage, not enterprise-standard
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.2%
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.

CVE-2026-73080 CRITICAL POC
9.3 Aug 11

Server-side request forgery with response read-back in SeaweedFS distributed storage (versions prior to 4.24) lets anyon

CVE-2026-72921 HIGH POC
8.1 Aug 11

Cross-tenant authorization bypass in SeaweedFS filer JWT path authorization allows any authenticated tenant to read and

CVE-2026-54917 HIGH POC
7.8 Jun 25

Cross-bucket read/write in SeaweedFS before 4.30 lets remote attackers escape a bucket's namespace because the S3 API ga

CVE-2026-58372 HIGH POC
7.2 Jun 30

Cross-tenant object deletion in SeaweedFS before 4.34 lets an authenticated S3 principal holding write access to just on

CVE-2026-72920 CRITICAL
9.8 Aug 11

Authentication bypass in SeaweedFS filer before 4.24 exposes the SeaweedIdentityAccessManagement gRPC service without an

CVE-2026-77298 HIGH
8.7 Aug 26

Authorization bypass in SeaweedFS versions 4.39 and earlier allows authenticated federated users to assume IAM roles the

CVE-2026-77317 HIGH
8.1 Aug 26

Incorrect path authorization in SeaweedFS SFTP server (versions 3.88-4.39) allows an authenticated low-privilege user to

CVE-2026-77368 HIGH
7.6 Aug 26

SeaweedFS 4.39's TUS resumable-upload handler fails to re-validate JWT prefix scoping on HEAD, PATCH, and DELETE operati

CVE-2026-58371 LOW POC
2.3 Jun 30

Unvalidated JSONP callback reflection in SeaweedFS before 4.30 enables cross-origin reads of cluster topology, volume se

CVE-2024-40120 MEDIUM POC
6.5 May 16

seaweedfs v3.68 was discovered to contain a SQL injection vulnerability via the component /abstract_sql/abstract_sql_sto

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