CVE-2026-53520: Nezha Monitoring improper access control in NAT dashboard routing

CVE-2026-53520 · Severity: medium · CVSS 6.5 · Published 2026-06-12

Nezha Monitoring, a server monitoring dashboard, contains a vulnerability where a standard user can hijack the dashboard's own web address. By creating a malicious network configuration (NAT profile) that matches the dashboard's URL, an attacker can block all other users from accessing the management interface or potentially intercept their traffic. This can lead to a complete service outage for the monitoring platform and unauthorized access to data sent to the dashboard.

Technologies: github.com/nezhahq/nezha (Go), NezhaHQ Nezha Monitoring. Vendors: Go, NezhaHQ.

Quick answers

Is CVE-2026-53520 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-53520 being exploited in the wild.
How severe is CVE-2026-53520?
Medium severity, with a CVSS score of 6.5, published 12 June 2026.
Which products and versions are affected?
github.com/nezhahq/nezha (Go) >= 2.0.14, < 2.1.0, SEMVER:introduced=0, SEMVER:introduced=2.0.14,fixed=2.1.0; NezhaHQ Nezha Monitoring >= 2.0.14, < 2.1.0.
Is there a fix for CVE-2026-53520?
Yes. github.com/nezhahq/nezha (Go): upgrade to 2.1.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-53520 attacked?
It is attacked over the network, in a network appliance.
Am I affected by CVE-2026-53520?
Check whether you run github.com/nezhahq/nezha (Go) or NezhaHQ Nezha Monitoring at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • github.com/nezhahq/nezha (Go): upgrade to 2.1.0 or later
    go get github.com/nezhahq/nezha@v2.1.0

Technical details

A vulnerability in Nezha Monitoring's NAT management API allows authenticated users to create or update NAT profiles with a 'domain' field that matches the dashboard's own HTTP Host. The dashboard's top-level HTTP/gRPC multiplexer prioritizes NAT configuration lookups via `NATShared.GetNATConfigByDomain(r.Host)` before dispatching to standard dashboard handlers. If an attacker claims the dashboard's Host, they can cause a Denial of Service (if the NAT profile is disabled) or hijack the IO stream via `ServeNAT` (if enabled), forwarding serialized HTTP requests and headers to an attacker-controlled agent. The issue stems from a lack of reserved-host validation in `cmd/dashboard/controller/nat.go`. A fix is available in version 2.1.0.

Affected products

  • nezhahq Nezha Monitoring >= 2.0.14, < 2.1.0

Identifiers

  • CVE-2026-53520
  • GHSA-x6fg-52vr-hj4w
  • GO-2026-5824

Timeline

  • 2026-05-31: advisory: GitHub Advisory published
  • 2026-06-26: disclosed: CVE-2026-53520 assigned
  • 2026-05-31: patched: Fixed in version 2.1.0

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.