Skip to main content

SeaweedFS CVE-2026-77368

| EUVDEUVD-2026-66758 HIGH
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-08-26 GitHub_M
7.6
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate with low-privilege JWT token
  2. Delivery
    Acquire victim tenant's TUS session ID
  3. Exploit
    Send PATCH to victim session with attacker token
  4. Execution
    Inject arbitrary content into victim upload
  5. Persist
    TUS upload completes
  6. Impact
    File written to victim's restricted filer path

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

Exploitation requires all three of the following conditions to be simultaneously true: (1) the SeaweedFS filer must have JWT signing configured and active (filerGuard enabled); (2) TUS resumable uploads must be enabled on the filer (the /.tus route must be accessible); and (3) the deployment must use prefix-restricted JWT tokens - specifically tokens with non-empty AllowedPrefixes fields - for multi-tenancy isolation. Attackers must already hold a valid JWT token scoped to at least one allowed prefix; completely unauthenticated exploitation is not possible given PR:L in the CVSS vector. The practical limiting factor is obtaining a foreign tenant's TUS session ID, which is not cryptographically secret but also not trivially guessable without network visibility or shared infrastructure access. Deployments without JWT prefix scoping, without TUS enabled, or operating in single-tenant mode are completely unaffected regardless of SeaweedFS version.

Impact

The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L, score 7.6) accurately reflects the attack profile: network-accessible, low complexity, requiring only a low-privilege JWT token. The High integrity impact is well-justified - an attacker can write arbitrary content to filesystem paths that their token explicitly denies, completely defeating the multi-tenancy isolation model. The Low confidentiality impact reflects the ability to HEAD foreign sessions to read upload progress and size metadata. The Low availability impact captures the ability to DELETE other tenants' upload sessions mid-transfer. No EPSS score was provided in the input data and the vulnerability does not appear in CISA KEV, so no confirmed active exploitation exists at time of analysis. Real-world risk is significant specifically for multi-tenant SeaweedFS deployments that have both JWT prefix scoping and TUS uploads configured simultaneously - deployments missing either feature are entirely unaffected, which substantially narrows the exposed population. The AC:L rating is appropriate because no race condition or special timing is required; the only practical barrier is acquiring a foreign session ID, which is not cryptographically protected by the TUS protocol. The overall risk profile is moderate-to-high for affected configurations but the narrow prerequisites limit blast radius across the broader SeaweedFS install base.

Exploit ScenarioDerived

An attacker authenticated with a JWT token scoped to /buckets/attacker/ observes a co-tenant's in-progress TUS upload session ID - obtainable via shared infrastructure logs, network interception, or insider knowledge - targeting /buckets/secret/sensitive.bin. The attacker sends PATCH requests to the victim's session ID using their own valid restricted token, injecting malicious content; upon TUS upload completion, the tampered file lands at /buckets/secret/sensitive.bin, a path the attacker's token forbids, fully bypassing the AllowedPrefixes isolation. No public exploit code has been identified at time of analysis, but the commit diff and test case in GHSA-99q7-x53r-6j4g provide a clear reproduction path.

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

SeaweedFS 4.39's TUS resumable-upload handler fails to re-validate JWT prefix scoping on HEAD, PATCH, and DELETE operations against existing sessions, enabling a low-privilege authenticated tenant to hijack cross-tenant upload sessions. An attacker holding a valid but restricted JWT token can PATCH arbitrary content into another tenant's in-progress upload by reusing the victim's session ID, causing the completed file to land at a filesystem path the attacker's token explicitly forbids. No public exploit has been identified at time of analysis; a vendor-released patch is available in version 4.40.

RemediationAI

Upgrade to SeaweedFS version 4.40, which contains the complete fix across commits ce82e3a057080162a9fba11889157d2255815f71 and fa549e9c83b7799d512157d728f52052912831af available in the project repository. If immediate upgrade is not feasible, the most effective compensating control is to disable TUS resumable uploads at the filer configuration level, which eliminates the vulnerable handler entirely at the cost of resumable-upload functionality - standard non-TUS upload paths are unaffected. Alternatively, if TUS is operationally required, collapsing to a single-tenant JWT configuration (removing AllowedPrefixes scoping from tokens) eliminates the exploitable isolation boundary, though it removes multi-tenancy access control entirely. There is no known partial mitigation that preserves both TUS and JWT prefix multi-tenancy while avoiding the vulnerability in version 4.39. The vendor advisory is at https://github.com/seaweedfs/seaweedfs/security/advisories/GHSA-99q7-x53r-6j4g.

Affected VersionsENISA

seaweedfs 4.39, < 4.40

Affected Packages

euvd seaweedfs_4_39 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: cpe:2.3:a:seaweedfs:seaweedfs:4.39:*:*:*:*:*:*:*) implements the TUS resumable-upload protocol in its filer component and enforces multi-tenancy through JWT tokens carrying AllowedPrefixes scope constraints. The root cause is CWE-639 (Authorization Through User-Controlled Key / IDOR): the original code treated a TUS session ID as an implicit authorization boundary, performing JWT prefix scoping only at session creation (HTTP POST) and assuming subsequent HEAD, PATCH, and DELETE operations on an existing session by ID were implicitly authorized. Since TUS session IDs are not guaranteed to be secret, any tenant holding a valid token can reference a foreign session ID and manipulate it without the authorization layer consulting the session's stored TargetPath. The fix in commits ce82e3a and fa549e9 refactors checkJwtAuthorization to accept a lazy path-resolver function, and adds tusScopedPaths() which reads the session's stored TargetPath from filer storage for HEAD/PATCH/DELETE verbs, failing closed on lookup errors - ensuring prefix validation is applied on every operation, not only at creation.

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.6 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L
vuln.today AI 7.6 HIGH

PR:L confirmed by requirement for a valid JWT token; I:H reflects arbitrary cross-tenant file writes; C:L for session metadata exposure via HEAD.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/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
Low
Integrity
High
Availability
Low

Lifecycle Timeline

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

DescriptionCVE.org

SeaweedFS is a distributed storage system for files and blobs. In version 4.39, the filer's TUS resumable-upload handler checks JWT allowed_prefixes scoping only when a session is created, letting a low-privilege tenant hijack another tenant's upload session to write content to filer paths their own token forbids. The HEAD, PATCH, and DELETE verbs that act on an existing session by its id never verify that the session's stored target path falls within the caller's allowed prefixes, so a tenant who obtains another upload's session identifier can PATCH attacker bytes into it and, on completion, have the file land at the victim's out-of-scope path. The same token can also DELETE other tenants' sessions and HEAD them to read upload progress and size, defeating the JWT prefix isolation. This vulnerability only affects deployments that configure filer JWT signing and have TUS uploads enabled. This issue is fixed in version 4.40.

Executive ViewAI

Why It Matters

SeaweedFS 4.39 contains a cross-tenant data access vulnerability where authenticated users can hijack upload sessions belonging to other tenants, enabling unauthorized writes to files in restricted locations. This breaks tenant isolation in multi-tenant deployments and creates significant risk of data breach, corruption, and regulatory non-compliance. Organizations using this version must prioritize immediate remediation.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
niche distributed object storage, limited enterprise production footprint
Social Media
2
Sightings
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
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
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-77611 HIGH
7.1 Aug 26

Incorrect authorization in SeaweedFS S3 API's PutObjectAcl handler allows an authenticated low-privilege S3 principal to

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