SeaweedFS: Path traversal in the S3 and Iceberg REST gateways allows cross-bucket access
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| seaweedfs | seaweedfs | affected |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Seaweedfs | Seaweedfs |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-w62w-66v9-vvgv | SeaweedFS: Path traversal in the S3 and Iceberg REST gateways allows cross-bucket access |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: 1.6% (1.641% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Seaweedfs
Seaweedfs seaweedfs |
|
| Vendors & Products |
Seaweedfs
Seaweedfs seaweedfs |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | SeaweedFS is a distributed storage system for object storage (S3), file systems, and Iceberg tables. Prior to 4.30, the S3 API gateway and the Iceberg REST catalog gateway construct their routers with mux.NewRouter().SkipClean(true). With path cleaning disabled, a .. segment inside the URL survives routing, so a request such as `GET /bucket-A/../evil-bucket/key`, is matched as bucket=bucket-A, object=../evil-bucket/key. The captured object key is then joined into a filer path with util.JoinPath (S3) / path.Join (Iceberg), which collapse the .. server-side, so the actual read or write lands in evil-bucket. This vulnerability is fixed in 4.30. | |
| Title | SeaweedFS: Path traversal in the S3 and Iceberg REST gateways allows cross-bucket access | |
| Weaknesses | CWE-22 | |
| References |
| |
| Metrics |
cvssV4_0
|