CVE-2026-118650 Echo: middleware.Static: `%2F`-encoded path bypasses route/group middleware guarding a statically-served path

High 7.5 Published Updated
Exploited in the wild
Not known
Fix
Available

What is CVE-2026-118650?

CVE-2026-118650 is a high-severity vulnerability in labstack echo, published on 28 Oct 2026.

Official 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.

Weakness: CWE-863, CWE-177

Which versions are affected by CVE-2026-118650?

4 open source packages ship an affected version, including github.com/labstack/echo/v4 and github.com/labstack/echo/v5.

PackageAffectedFixed in
github.com/labstack/echo/v4 GoAll versions4.16.0
github.com/labstack/echo/v4 GoAll versions4.16.0
github.com/labstack/echo/v5 GoAll versions5.4.0
github.com/labstack/echo/v5 GoAll versions5.4.0

How do I fix CVE-2026-118650?

Upgrade github.com/labstack/echo/v4 to 4.16.0 or later.

Is CVE-2026-118650 being exploited?

There is no known exploitation of CVE-2026-118650 in the wild and no public exploit code.

Sources

Also known as ECHO-11f4-8fd8-558e, GHSA-375p-5qhx-8wq4, UBUNTU-CVE-2026-118650.

Is CVE-2026-118650 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free