Skip to main content

SeaweedFS CVE-2026-77317

| EUVDEUVD-2026-66767 HIGH
Incorrect Authorization (CWE-863)
2026-08-26 GitHub_M
8.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 to SFTP with valid low-privilege credentials
  2. Delivery
    Identify sibling tenant path sharing attacker's permitted string prefix
  3. Exploit
    Issue SFTP read or write request targeting sibling path
  4. Execution
    Bare strings.HasPrefix check grants access across ACL boundary
  5. Impact
    Read or overwrite peer-tenant files

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

Three conditions must all hold: (1) the SeaweedFS SFTP service must be running and network-accessible - this requires explicit operator configuration; (2) the attacker must possess a valid SFTP account with a path-scoped permission entry (e.g., /tenants/alice with read, write, or list permissions); (3) a sibling path must exist in the same parent directory whose name begins with the same characters as the attacker's permitted root (e.g., /tenants/alice-archive must exist as a real directory containing another tenant's data). Exploitation is strictly limited to authenticated users - unauthenticated access to the SFTP endpoint is not implied. The naming collision between tenant paths is the key structural prerequisite: if no sibling path shares the string prefix, the vulnerability has no practical effect in that environment. The home directory check shares the same flaw, but the primary exploitation path is through the explicit per-path permission entries, which are the documented multi-tenancy mechanism.

Impact

The CVSS 3.1 score of 8.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N) accurately reflects the core risk: the attack is network-reachable, requires no elevated privileges beyond a valid SFTP account, involves no interaction from another party, and yields both full read and write access to peer-tenant data. Real-world risk is strongly deployment-dependent - it is high in multi-tenant SeaweedFS environments where SFTP is the access layer and multiple tenants share a parent directory, and near-zero in single-tenant or fully trusted deployments. EPSS data is absent from available intelligence sources, so exploitation probability cannot be quantified. The CVE is not in CISA KEV at time of analysis, and no standalone weaponized POC has been identified. However, the public security advisory and fix commit together provide a complete description of the vulnerable code path, meaning any authenticated user who reads the advisory can construct an exploit with minimal effort. The naming-collision precondition (a sibling path must exist) is a genuine limiting factor, but in real multi-tenant deployments this condition is routinely met by operational naming conventions.

Exploit ScenarioDerived

An attacker with a valid SFTP account scoped to /tenants/alice connects using a standard SFTP client and requests /tenants/alice-archive/secret.txt - because the ACL check evaluates strings.HasPrefix('/tenants/alice-archive/secret.txt', '/tenants/alice') as true, access is granted and the peer tenant's file contents are returned. If the attacker's account carries write permission, they can issue a file-create or overwrite operation against the sibling path through the same mechanism, corrupting or replacing another tenant's data without any credential theft or privilege escalation beyond their own valid account.

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 path authorization in SeaweedFS SFTP server (versions 3.88-4.39) allows an authenticated low-privilege user to cross configured ACL boundaries and access or overwrite sibling tenants' files. The SFTP permission check used a bare string-prefix comparison, so a user scoped to /tenants/alice was also permitted access to any path beginning with those same characters - such as /tenants/alice-archive or /tenants/alice2 - without requiring a directory-component boundary. No public exploit code has been identified at time of analysis, though the public fix commit and advisory together fully document the vulnerable pattern, materially lowering exploitation difficulty for authenticated users.

RemediationAI

Upgrade to SeaweedFS 4.40, which resolves the flaw by replacing the bare strings.HasPrefix call with a boundary-aware pathWithin() function; the fix is available at https://github.com/seaweedfs/seaweedfs/commit/29981f8d24a62e9571962c4534fb23c48c00bae2 and is detailed in advisory GHSA-fvpg-g364-j8vh. If an immediate upgrade is not feasible, operators can reduce exposure by redesigning tenant path assignments to avoid any case where one permitted path is a string prefix of a sibling path - for example, ensuring /tenants/alice-backend and /tenants/alice never coexist as separate scoped roots, which eliminates the naming-collision precondition. A more aggressive workaround is to disable the SFTP service entirely and route client access through a different interface, accepting the loss of SFTP-based access as a trade-off. Restricting each scoped SFTP user to a unique top-level directory (e.g., /alice/ instead of /tenants/alice/) also reduces but does not eliminate risk on vulnerable versions, as the underlying check remains flawed.

Affected VersionsENISA

seaweedfs 3.88, < 4.40

Affected Packages

euvd seaweedfs_3_88 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 is a distributed object and file storage system that ships a built-in SFTP server for client access, configurable with per-user home directories and explicit path-scoped permissions. The authorization logic in weed/sftpd/sftp_permissions.go used strings.HasPrefix(filepath, p) to determine whether a requested path fell within a user's granted scope. This string-prefix test does not enforce path-component boundaries: /tenants/alice is a legitimate string prefix of /tenants/alice-archive, so the check incorrectly returned a match and granted access. The same flaw affected the HomeDir boundary check. CWE-863 (Incorrect Authorization) precisely describes this failure - the system performed authorization but used the wrong predicate. The fix in 4.40 introduces a pathWithin() helper that requires the candidate to either exactly equal the base path or begin with base + '/', correctly establishing containment on directory boundaries. CPE: cpe:2.3:a:seaweedfs:seaweedfs:*:*:*:*:*:*:*:* (versions 3.88 through 4.39).

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

SFTP is network-accessible (AV:N), valid credentials required (PR:L), naming-collision condition is environmental not complex (AC:L), and no availability impact is described.

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

Lifecycle Timeline

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

DescriptionCVE.org

SeaweedFS is a distributed storage system for files and blobs. In versions from 3.88 through 4.39, the SFTP server evaluates configured path permissions with a literal string-prefix comparison, so a user scoped to a path is also granted the same access to any sibling path whose name merely begins with the same characters. A user granted access to /tenants/alice therefore also matches /tenants/alice-archive, /tenants/alice2, and similar siblings, because the check does not require a path-component boundary. An authenticated low-privilege SFTP user with a root home directory and narrow path permissions can thereby cross the configured ACL boundary to read another tenant's files, and to overwrite them if granted write, all through the documented SFTP service with its own valid credentials. This issue is fixed in version 4.40.

Executive ViewAI

Why It Matters

SeaweedFS SFTP server versions 3.88-4.39 contain a path authorization flaw allowing authenticated users to access files outside their assigned tenant scope, potentially exposing or modifying sensitive data across tenant boundaries in multi-tenant deployments. Organizations using affected versions require immediate action to prevent unauthorized cross-tenant data access. No vendor patch is currently available, making compensating controls critical for security.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict SFTP access to trusted administrative users and operators only; implement network segmentation with firewall enforcement to isolate tenant directories; enable detailed audit logging of SFTP operations to detect unauthorized cross-tenant access; enforce application-level file-access controls independent of SeaweedFS directory permissions; consider disabling SFTP functionality entirely if not operationally critical. Maintain close monitoring of vendor security advisories for patch release.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
niche self-hosted distributed storage, limited enterprise 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· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
Very High

Priority Score

40
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +40
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-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-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