Description
Echo is a Go web framework. Prior to 4.16.0 and 5.4.0, a globally mounted middleware.Static instance can interpret an encoded request path differently from Echo's router because the router matches the still-encoded path while the static handler uses the decoded URL.Path. The advisory demonstrates an encoded slash resolving to a file under the static root through the global static middleware, but the source is internally inconsistent about whether a route or group guard protects the corresponding literal path in that global-mount configuration. This issue is fixed in 4.16.0 and 5.4.0.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| labstack | echo | >= 5.0.0, < 5.4.0, < 4.16.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | golang-github-labstack-echo | No fix yet | — |
| Ubuntu 26.04 LTS | golang-github-labstack-echo | No fix yet | — |
| Ubuntu 24.04 LTS | golang-github-labstack-echo | No fix yet | — |
| Ubuntu 22.04 LTS | golang-github-labstack-echo +2 | No fix yet | — |
| Ubuntu 20.04 LTS | golang-github-labstack-echo.v2 +1 | No fix yet | — |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
GitHub 1 repository
-
federiconbaez/cortex9-echo-static-encoded-segment-bypass-model ★ 0 · Nov 9, 2026
Offline educational model of CVE-2026-118650 (Echo Static encoded-segment middleware bypass)
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Go | github.com/labstack/echo/v4 | < 4.16.0 | 4.16.0 | GHSA-375p-5qhx-8wq4 |
| Go | github.com/labstack/echo/v5 | < 5.4.0 | 5.4.0 | GHSA-375p-5qhx-8wq4 |
| Go | github.com/labstack/echo/v5 | >= 5.0.0, < 5.4.0 | 5.4.0 | GO-2026-6873 |
References
- https://github.com/labstack/echo/security/advisories/GHSA-375p-5qhx-8wq4
- https://github.com/labstack/echo/commit/b838391e2eade87ae7e5a09d7bb5087bec271ec1
- https://github.com/labstack/echo/commit/fc410094b2f3415cf2bf5204082137b205bfd5af
- https://github.com/labstack/echo/releases/tag/v4.16.0
- https://github.com/labstack/echo/releases/tag/v5.4.0