Skip to main content
← All vulnerabilities
CVE-2026-54917GHSA-W62W-66V9-VVGVBIT-SEAWEEDFS-2026-54917BIT-SEAWEEDFS-2026-58372GO-2026-6221

SeaweedFS: Path traversal in the S3 and Iceberg REST gateways allows cross-bucket access

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.30, 0.0.0-20260526080459-dd1b4287899e
1 proof of concept on GitHub, 1 Nuclei template
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • seaweedfs seaweedfs

    fixed in 4.30

  • github.com/seaweedfs/seaweedfsGo

    fixed in 0.0.0-20260526080459-dd1b4287899e

References 4

GitHub · seaweedfs/seaweedfs

GitHub · projectdiscovery/nuclei-templates

GitHub · BiiTts/CVE-2026-54917-SeaweedFS-Cross-Bucket-Traversal