Live Exposure Defense: From CVE to Confirmed Exposure in 12 Hours – See more

New CVE Detected

CVE-2026-53519 – Unauthenticated Path Traversal / Secret Exposure Leading to Admin Takeover – Nez…

Be the first to know when new zero-days emerge:

Summary

CVE-2026-53519 is a critical path traversal vulnerability (CWE-22) in Nezha Monitoring (nezhahq/nezha), a self-hostable, lightweight server and website monitoring tool, affecting all versions prior to 2.0.13. The flaw allows an unauthenticated remote attacker to read arbitrary files from the server filesystem — including the application’s config.yaml — without any credentials or user interaction. Disclosure of the secrets contained in that file enables a full administrative account takeover. The vulnerability carries a CVSS v3.1 base score of 9.1 (Critical).

Technical details

  • Root cause: The fallbackToFrontend function in the dashboard’s NoRoute handler validates URL paths using Go’s strings.HasPrefix, checking only that the raw URL string begins with /dashboard. This is a substring match, not a proper path-segment boundary check.
  • Trigger conditions: An attacker sends a single unauthenticated HTTP GET request with a crafted URL such as GET /dashboard../data/config.yaml. The HasPrefix check passes because the string does start with /dashboard. strings.TrimPrefix then strips the /dashboard prefix, leaving ../data/config.yaml. path.Join("admin-dist", "../data/config.yaml") normalizes this to data/config.yaml, which os.Stat resolves and http.ServeFile returns to the caller. Because Go’s http.ServeFile guard only rejects URLs containing a standalone .. path segment, and none exists in the original URL after normalization, the guard does not trigger.
  • Variant payloads: The bypass also works with percent-encoded variants (e.g., /dashboard%2e%2e/data/config.yaml, /dashboard..%2fdata/config.yaml).
  • Attack vector: Network, no authentication required, no user interaction required (AV:N/AC:L/PR:N/UI:N).
  • Impact: The exposed config.yaml contains the jwt_secret_key (HS256 signing key), agent_secret_key, OAuth2 client credentials, and API tokens. An attacker can retrieve the SQLite database via a second unauthenticated request (GET /dashboard../data/sqlite.db), identify admin user IDs, and forge a valid HS256 JWT to authenticate as an administrator — achieving full administrative account takeover in two unauthenticated HTTP requests.

Affected software

  • Nezha Monitoring (nezhahq/nezha) — all versions prior to 2.0.13

Severity

  • CVSS v3.1 Base Score: 9.1 (Critical)
  • Vector String: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N

Mitigation and recommended actions

  • Immediate action — patch: Upgrade Nezha Monitoring to version 2.0.13 or later, which contains the vendor-provided fix replacing the substring-based prefix check with proper path-segment-aware validation and post-normalization boundary enforcement.
  • If immediate patching is not possible: Restrict network-level access to the Nezha dashboard to trusted IP ranges only. Do not expose the dashboard port directly to the internet. Rotate all secrets in config.yaml — including jwt_secret_key, agent_secret_key, and any OAuth2 credentials — even after patching, as prior exposure cannot be ruled out.

IONIX Status

The IONIX research team is tracking ongoing exploitation attempts and recommends immediate patching. Potentially affected assets are outlined in this post.

References

Are you exposed?

Get a free report of your organization’s exposure to this CVE and threat

How IONIX’s External Exposure Management Platform Detects and Validates
Zero-Days to Shrink MTTR

1

Map your entire attack surface (continously)

IONIX uses multi-factor discovery methods, including DNS analysis, certificate mapping, metadata inspection, and more, to automatically map every internet-facing asset across your environment. This includes cloud instances, third-party platforms, shadow IT, and even forgotten infrastructure that traditional tools miss.

2

Monitor for new CVEs

Dozens of threat intel feeds using agentic technology are continuously analyzed to detect the appearance of proof-of-concept code, exploit kits, and indicators of active targeting. IONIX goes further by applying AI to proactively evaluate whether emerging vulnerabilities are likely to be exploited, even before PoCs go public.

3

Identify Potential External Exposures

Not all CVEs matter. IONIX filters vulnerabilities by asking attacker-centric questions: Can it be reached from the internet? Does it require authentication? Is it being exploited in the wild? This dramatically reduces noise and focuses teams on threats that can actually be weaponized.

4

Create Safe, Scalable Exploit Validations

IONIX transforms real-world PoCs into safe, non-intrusive test payloads that can be run in production environments without disruption. These simulations are precisely targeted to the systems that are vulnerable, ensuring rapid validation without unnecessary load.

5

Execute Exploit Validations

By combining context about software stack, versioning, exposure status, and reachability, IONIX ensures that only the right payloads are executed against the right assets, maximizing efficiency and minimizing risk.

6

Drive Fast and Actionable Remediation

Results are routed through integrations with ticketing, SOAR, and SIEM tools. Issues are written in plain language, bundled into remediation clusters, and prioritized based on asset criticality, exploitability, and blast radius. This shortens mean time to remediation (MTTR) and empowers teams to act with confidence.

Are you exposed?

Get a free report of your organization’s exposure to this CVE and threat

Subscribe to Threat Center RSS

Copy/paste the link below into your preferred RSS reader or follow these instructions to subscribe to Slack alerts.

Get Real-Time CVE Alerts to Your Email

Be the first to know when new zero-days emerge