[ CVE-2026-118657 · Published 28 Oct 2026 ]
Echo: HTTPS Redirect and HSTS Bypass via Unconditional Trust of Forwarded Scheme Headers
[ 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, Context.Scheme unconditionally trusts forwarded scheme headers from any client. A client that reaches Echo directly over plaintext HTTP can claim an HTTPS scheme and bypass HTTPSRedirect because the request is treated as already secure. Separately, behind a TLS-terminating proxy that passes an attacker-controlled header, a claimed HTTP scheme can suppress the Strict-Transport-Security header even though the browser receives the response over HTTPS. The practical risk is reduced when a trusted proxy overwrites the headers and direct backend access is prevented, but the framework previously had no trusted-source configuration for this decision. 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-2ffq-g2xg-c22p
- github.com/labstack/echo/v4 goAffected < 4.16.0 · fixed in 4.16.0 · GHSA-2ffq-g2xg-c22p