High severity · published Oct 28, 2026
CVE-2026-118262
Echo: WebSocket proxy can retain connections and handlers after client disconnect
New
8.2
CVSS
–
EPSS
No
On KEV
Description
Echo is a Go web framework. From 4.15.0 until 4.16.1 and 5.4.1, Echo's Proxy middleware can retain a handler, copy goroutines, and network connections after a WebSocket client disconnects when the upstream keeps its connection open. The raw proxy waits for both copy directions without reliably closing the peer connection when one direction ends, including when a rejected upgrade response uses HTTP keep-alive. Repeated connections can accumulate resources and cause denial of service, depending on proxy-route accessibility, upstream behavior, and connection deadlines. This issue is fixed in 4.16.1 and 5.4.1.
Exploitation
Is it being used?
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
EC
echo · labstack
>= 4.15.0, < 4.16.1; >= 5.0.0, < 5.4.1 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-118262
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-118262
x_refsource_CONFIRM
https://github.com/labstack/echo/security/advisories/GHSA-9969-6676-49h5
x_refsource_MISC
https://github.com/labstack/echo/commit/1855061e572ae9dab727c811d8382f266bfbaaec
x_refsource_MISC
https://github.com/labstack/echo/commit/3fb0ba7e17645bb65611e2a08875d0a2f65c421f
x_refsource_MISC
https://github.com/labstack/echo/releases/tag/v4.16.1
x_refsource_MISC
https://github.com/labstack/echo/releases/tag/v5.4.1
More from echo
9.6
CVE-2022-40083
Labstack Echo v4.8.0 was discovered to contain an open redirect vulnerability via the Static Handler component
9.1
CVE-2026-118264
Echo: Rejected WebSocket upgrades can bypass Echo route-level access controls
8.2
CVE-2026-118261
Echo: Decompress permits unbounded gzip expansion in v4
8.2
CVE-2026-118260
Echo: BodyDump captures request and response bodies without size limits in v4
7.5
CVE-2026-118650
Echo: middleware.Static: `%2F`-encoded path bypasses route/group middleware guarding a statically-served path
