
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-118262 is a resource retention vulnerability in the Proxy middleware of Echo, a Go web framework developed by LabStack. When a WebSocket client disconnects, the middleware can retain handlers, copy goroutines, and network connections if the upstream keeps its connection open, because the raw proxy waits for both copy directions to finish without reliably closing the peer connection when one direction ends. This affects Echo versions >= 4.15.0 and < 4.16.1 (v4 branch) and >= 5.0.0 and < 5.4.1 (v5 branch). The vulnerability was published on October 28, 2026, and carries a CVSS v4.0 base score of 8.2 (High) (GitHub Advisory, Feedly).
The root cause is classified as CWE-772 (Missing Release of Resource after Effective Lifetime): the Proxy middleware's raw bidirectional copy loop does not reliably close the upstream connection when the client-side direction terminates, including when a rejected WebSocket upgrade response uses HTTP keep-alive (GitHub Advisory). The regression was introduced by commit e213332 (merged in PR #2852) and affects both the v4 and v5 branches. An unauthenticated attacker can exploit this by repeatedly initiating WebSocket connections — or sending rejected upgrade requests with keep-alive — to a proxy route, causing goroutines and file descriptors to accumulate without being released. The fix replaces the raw proxy with Go's standard HTTP reverse proxy, which properly closes both sides of a WebSocket tunnel when either direction ends, and also handles the case where an upstream reads client EOF but deliberately keeps its side open (Echo v4.16.1 Release, Fix Commit v5).
Successful exploitation causes denial of service through resource exhaustion: handlers, goroutines, and network connections accumulate on the Echo server without being released, degrading or crashing the service over time. There is no confidentiality or integrity impact — the vulnerability is limited to availability (GitHub Advisory). The severity of impact depends on the accessibility of the proxy route, upstream server behavior, and whether connection deadlines are configured; publicly accessible proxy routes with permissive upstreams are most at risk (Feedly).
There is no public proof-of-concept exploit and no evidence of in-the-wild exploitation at the time of disclosure (Feedly). The vulnerability is exploitable by unauthenticated attackers over the network with no user interaction required, but requires the presence of a WebSocket proxy route and a cooperating (or unresponsive) upstream. The EPSS score is 0.0, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities catalog (Feedly). No threat actor attribution has been reported.
GET /ws HTTP/1.1 with Upgrade: websocket and Connection: Upgrade headers).Connection: keep-alive to trigger the half-close bug.gorilla/websocket or websocat) to accumulate unreleased goroutines, handlers, and file descriptors on the server./debug/pprof/goroutine); increasing open file descriptor count for the Echo server process (/proc/<pid>/fd).netstat or ss showing a large number of sockets in CLOSE_WAIT state associated with the Echo process (GitHub Advisory).Upgrade Echo to v4.16.1 (v4 branch) or v5.4.1 (v5 branch), which replace the raw proxy with Go's standard HTTP reverse proxy and ensure both sides of a WebSocket tunnel are closed when either direction ends (Echo v4.16.1 Release, Echo v5.4.1 Release). For systems unable to upgrade immediately, the official advisory recommends disabling WebSocket proxy routes until patching is possible, or applying bounded connection lifetimes and resource limits at the frontend and upstream (GitHub Advisory). Note that server idle timeouts alone may not cover hijacked WebSocket connections; connection limits and monitoring on proxy routes should also be implemented as interim controls.
Fix availability across major Linux distributions and their releases.
bookworm
golang-github-labstack-echo
sid
golang-github-labstack-echo
trixie
golang-github-labstack-echo
devel
golang-github-labstack-echo
focal (esm-apps)
golang-github-labstack-echo.v2
jammy
golang-github-labstack-echo
jammy (esm-apps)
golang-github-labstack-echo
noble
golang-github-labstack-echo
noble (esm-apps)
golang-github-labstack-echo
resolute
golang-github-labstack-echo
resolute (esm-apps)
golang-github-labstack-echo
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."