Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable low-complexity delete needing only single-bucket write credentials (PR:L); no confidentiality impact (C:N), but arbitrary cross-bucket deletion yields high integrity and availability impact (I:H/A:H).
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
5DescriptionCVE.org
SeaweedFS before 4.34 contains a path traversal vulnerability in the S3 gateway DeleteMultipleObjectsHandler that allows authenticated S3 principals with write access to a single bucket to delete arbitrary objects in other tenants' buckets by supplying object keys containing ../ sequences in the DeleteObjects XML request body. Attackers can bypass authorization controls through a confused deputy condition, as the validateRequestPath middleware only inspects URL-captured path variables and never examines request-body keys, allowing the filer path to collapse directory traversal sequences and resolve deletions outside the authorized bucket.
AnalysisAI
Cross-tenant object deletion in SeaweedFS before 4.34 lets an authenticated S3 principal holding write access to just one bucket destroy arbitrary objects in other tenants' buckets through the S3 gateway's DeleteMultipleObjectsHandler. By embedding ../ sequences in object keys inside the DeleteObjects XML request body, an attacker exploits a confused-deputy gap where path validation never inspected body keys. Publicly available exploit code exists (reported by VulnCheck) and a vendor patch shipped in release 4.34; the flaw is not listed in CISA KEV.
Technical ContextAI
SeaweedFS is a distributed file and object storage system that exposes an Amazon S3-compatible gateway (weed/s3api). Buckets are realized as directories under a backing filer namespace, so object keys map directly onto filer paths. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory): the validateRequestPath middleware only sanitized path variables captured from the request URL and never examined keys supplied in the DeleteObjects XML body. Because the filer collapses directory-traversal sequences (../, and per the fix also encoded slashes %2F/%5C and backslashes) when resolving a path, a key like ../other-bucket/object escapes the authorized bucket directory. The upstream fix (PR 9931, commit 0345658) adds segment-level validation helpers - IsValidPathSegment and isValidTablePath - that reject empty, '.', '..', and slash/backslash/NUL-containing segments, and extends the same hardening to copy-source version IDs and the Iceberg table-creation path.
RemediationAI
Vendor-released patch: upgrade to SeaweedFS 4.34, which adds body-key and path-segment validation (PR https://github.com/seaweedfs/seaweedfs/pull/9931, patch commit https://github.com/seaweedfs/seaweedfs/commit/0345658ea8e7c6a3948ad190634b00866ec244c9) and is the primary fix; review GHSA-w62w-66v9-vvgv and the VulnCheck advisory before upgrading. If you cannot patch immediately, reduce exposure by restricting S3 write credentials so that low-trust or untrusted tenants do not share a filer namespace with sensitive buckets, and front the S3 gateway with a reverse proxy or WAF that rejects DeleteObjects request bodies whose <Key> elements contain ../, ..\, encoded traversal (%2F/%5C/%2e%2e), or NUL bytes - note this body-inspection control adds latency and can break legitimate keys that contain dot segments. Where multi-tenant deletion is not required, disabling or tightly scoping DeleteObjects/write permissions for shared principals limits the primitive at the cost of reduced functionality. Audit filer object history for unexpected cross-bucket deletions, since the impact is data loss.
Server-side request forgery with response read-back in SeaweedFS distributed storage (versions prior to 4.24) lets anyon
Cross-tenant authorization bypass in SeaweedFS filer JWT path authorization allows any authenticated tenant to read and
Cross-bucket read/write in SeaweedFS before 4.30 lets remote attackers escape a bucket's namespace because the S3 API ga
Authentication bypass in SeaweedFS filer before 4.24 exposes the SeaweedIdentityAccessManagement gRPC service without an
Authorization bypass in SeaweedFS versions 4.39 and earlier allows authenticated federated users to assume IAM roles the
Incorrect path authorization in SeaweedFS SFTP server (versions 3.88-4.39) allows an authenticated low-privilege user to
SeaweedFS 4.39's TUS resumable-upload handler fails to re-validate JWT prefix scoping on HEAD, PATCH, and DELETE operati
Incorrect authorization in SeaweedFS S3 API's PutObjectAcl handler allows an authenticated low-privilege S3 principal to
Unvalidated JSONP callback reflection in SeaweedFS before 4.30 enables cross-origin reads of cluster topology, volume se
seaweedfs v3.68 was discovered to contain a SQL injection vulnerability via the component /abstract_sql/abstract_sql_sto
Same weakness CWE-22 – Path Traversal
View allSame technique Path Traversal
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-40360
GHSA-9cq9-w9qm-wc9p