[ CVE-2026-118654 · Published 28 Oct 2026 ]
Echo static file middleware route protection bypass via encoded dot-dot traversal
CVSS 5.9
EPSS <1%Fix available
[ Why it matters ]Priority signals
- Public proof-of-concept exploit exists (CISA SSVC)
[ Description ]Official description
Echo is a Go web framework. Prior to 4.16.0 and 5.4.0, Echo's static file handlers can normalize dot segments after route matching and serve a file through a public static route even though the corresponding direct path is protected by route-level middleware. An unauthenticated attacker can read files that an application intended to protect with route-level middleware, when those files are also reachable through a static filesystem mount after path normalization. This vulnerability is the result of an incomplete fix for CVE-2026-55677. This issue is fixed in 4.16.0 and 5.4.0.
[ Fixes ]Fixes and patches
- github.com/labstack/echo/v5 5.4.0Fixed version · GitHub Advisories · go package github.com/labstack/echo/v5: upgrade to 5.4.0 or later (affected < 5.4.0)
- github.com/labstack/echo/v4 4.16.0Fixed version · GitHub Advisories · go package github.com/labstack/echo/v4: upgrade to 4.16.0 or later (affected < 4.16.0)
[ Packages ]Affected open-source packages
- github.com/labstack/echo/v5 goAffected < 5.4.0 · fixed in 5.4.0 · GHSA-3pmx-cf9f-34xr
- github.com/labstack/echo/v4 goAffected < 4.16.0 · fixed in 4.16.0 · GHSA-3pmx-cf9f-34xr