IT SBIT Services
Schneeberger
DEEN
CVE tracker

Echo: WebSocket proxy retains connections and handlers after client disconnect

CVE-2026-118262High 8.2

← All vulnerabilities

Summary

Echo is a Go web framework. Its Proxy middleware can keep handlers, goroutines and network connections open after a WebSocket client disconnects, if the upstream server keeps its connection open. Repeated connections can accumulate these resources and exhaust the server, which leads to a denial of service. The impact depends on how reachable the proxy route is, the upstream behaviour and the configured connection deadlines.

Affected

  • Echo v4 from 4.15.0 before 4.16.1
  • Echo v5 from 5.0.0 before 5.4.1

Fixed in

  • Echo v4: 4.16.1 or later
  • Echo v5: 5.4.1 or later

Workaround

  • Disable WebSocket proxy routes until the upgrade is done.
  • Alternatively, apply bounded connection lifetimes and resource limits at the frontend and upstream.
  • Server idle timeouts alone may not cover hijacked WebSocket connections.

Exploitation

  • Not known to be exploited in the wild.
  • Not listed in CISA KEV.
  • Public proof of concept: Unknown.

Our recommendation

  • Check whether Go services import github.com/labstack/echo/v4 or /v5 and use the Proxy middleware with WebSocket routes.
  • Upgrade to Echo 4.16.1 or 5.4.1 or later and verify that the module graph resolves to a fixed version.
  • If you cannot upgrade now, disable WebSocket proxy routes or apply the workarounds.
  • Prioritise internet-facing applications that proxy WebSockets; internal-only or non-WebSocket use is lower risk.

Public exploits

PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 14:45.

Original description (NVD)

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.

NVD references (5)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.