CVE-2026-54917: SeaweedFS · Path traversal in the S3 and Iceberg REST gateways allows cross-bucket access
Affects seaweedfsSource GCVE Database
Not known to be exploited · public detection template (Nuclei) : upgrade to 4.30.0 as a priority.
Data as of 10 Nov 2026, 23:24 UTC
Rated by Threat Radar · No CVSS score from NVD or the CNA
- EPSS
- 1.6% chance of exploitation in 30 days – higher than 76% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 0.0.0-20260526080459-dd1b4287899e, 4.30.0
Exploitation evidence
Disclosed: evidence found.
CVE published 30 Jun 2026
Detectable: evidence found.
nuclei template: SeaweedFS <= 4.29 - Path Traversal File Write
Weaponized: evidence found.
Public exploit code: GitHub proofs of concept
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), GitHub proofs of concept, the Metasploit, Exploit-DB and nuclei-templates index as of 10 Nov 2026.
What to do
Upgrade seaweedfs to 4.30.0; github.com/seaweedfs/seaweedfs to 0.0.0-20260526080459-dd1b4287899e.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| Gogithub.com/seaweedfs/seaweedfs | Affected
| Fixed in
|
Bitnamiseaweedfspkg:bitnami/seaweedfsOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
Upgrade SeaweedFS to version 4.30 or later, where this path traversal vulnerability is fixed. No other mitigation is necessary as the fix is official and available.
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.
References
- github.com/seaweedfs/seaweedfs/security/advisories/GHSA-w62w-66v9-vvgv (opens in a new tab)
- nvd.nist.gov/vuln/detail/CVE-2026-54917 (opens in a new tab)
- github.com/seaweedfs/seaweedfs/pull/9687 (opens in a new tab)
- github.com/seaweedfs/seaweedfs/commit/dd1b4287899eed3dfd73c2f3b1de001996fda229 (opens in a new tab)
- github.com/seaweedfs/seaweedfs (opens in a new tab)