Skip to main content
VulnerabilityPublished Updated

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

Affects seaweedfsSource GCVE Database

0
Compare

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

Severity
Critical

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

  1. Disclosed: evidence found.

    CVE published 30 Jun 2026

  2. Weaponized: evidence found.

    Public exploit code: GitHub proofs of concept

  3. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  4. Observed by OffSeq 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

ProductAffectedFixed in
Gogithub.com/seaweedfs/seaweedfsAffected
  • <0.0.0-20260526080459-dd1b4287899e
Fixed in
  • 0.0.0-20260526080459-dd1b4287899e
Bitnamiseaweedfspkg:bitnami/seaweedfsOther threatsAffected
  • <4.30.0
Fixed in
  • 4.30.0

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

Community reviews

Loading reviews…