Skip to content
OpenAdvisories
Medium · 6.5 CVE-2026-53522 EUVD-2026-36601GHSA-jg62-j5h6-8mpqGO-2026-5831

Nezha Monitoring: Unbounded WebSocket Streams — Resource Exhaustion DoS

Published Jun 12, 2026 · Updated Jun 15, 2026 · Assigned by GitHub_M

Description

Nezha Monitoring is a self-hostable, lightweight, servers and websites monitoring and O&M tool. From version 1.0.0 to before version 2.2.0, the Nezha dashboard exposes two endpoints that create long-lived WebSocket streams to monitored agents: POST /api/v1/terminal → createTerminal() (terminal.go:27-67) and POST /api/v1/file → createFM() (fm.go:28-67). Both call rpc.NezhaHandlerSingleton.CreateStream(streamId, ...) which inserts a new ioStreamContext into an unbounded map[string]*ioStreamContext (s.ioStreams in io_stream.go:59-67). There is no per-user rate limit, no global semaphore, and no per-server connection cap. This issue has been patched in version 2.2.0.

Affected products

VendorProductAffectedFixed
nezhahq nezha >= 1.0.0, < 2.2.0 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
openSUSE Leap 16.0 govulncheck-vulndb 0.0.20260723T184607-160000.1.1 openSUSE-SU-2026:21483-1

Affected packages

EcosystemPackageAffectedFixedRecord
Go github.com/nezhahq/nezha >= 1.0.0, < 2.2.0 2.2.0 GHSA-jg62-j5h6-8mpq
Go github.com/nezhahq/nezha >= 1.0.0 — GO-2026-5831

Advisories 1

References