Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as Nezha member
-
DeliveryPATCH /server/{id} with speculated future DDNS profile IDs
-
ExploitAwait victim creating DDNS profile with colliding auto-assigned ID
-
ExecutionDDNS worker resolves stored ID to victim's profile
-
ImpactVictim's provider credentials used to dispatch attacker's DNS update
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The attacker must hold a valid Nezha member account with write access to at least one registered server (PR:L per CVSS vector). The deployment must be multi-tenant - at minimum one other user must later create a DDNS profile whose auto-assigned database ID matches an ID the attacker pre-stored via the PATCH endpoint. The DDNS worker service must be active and running for the cross-profile dispatch to trigger. Exploitation probability scales with DDNS profile ID predictability: if IDs are sequential auto-increments (common ORM default, not independently confirmed by the advisory), the attacker can pre-store a contiguous range of future IDs to maximize collision probability. Exploitation is limited by: (1) authenticated member account required - unauthenticated attackers cannot exploit this; (2) the collision depends on a victim independently creating a profile with a matching ID, making exploitation probabilistic unless ID generation is predictable; (3) no direct credential disclosure - the attacker triggers DNS dispatches but cannot extract the victim's DDNS provider API keys from Nezha's HTTP responses; (4) single-user instances are entirely unexposed. |
| Impact | The CVSS 6.4 Medium score with S:C accurately captures the cross-tenant nature of this flaw: the attacker does not gain direct access to victim credentials but causes the DDNS worker to act on the victim's behalf, constituting a meaningful authorization boundary violation. AC:L reflects that no special exploitation complexity is required beyond account registration and ID speculation. PR:L bounds the attack surface to registered Nezha member accounts, ruling out unauthenticated exploitation. No EPSS score was provided in the available intelligence, so exploitation probability cannot be quantified. This CVE is not listed in the CISA KEV catalog, and no public exploit code has been identified at time of analysis. Real-world risk is most significant in multi-tenant Nezha deployments - shared family instances, team deployments, or hosting providers - where multiple users independently create DDNS profiles. ID predictability is the key probabilistic factor: if IDs are sequential auto-increments (typical of ORM defaults), the attacker can stage a near-deterministic collision by occupying a range of future IDs. Single-user instances are not exposed. The I:L and A:L impacts are correctly modest: the attacker cannot exfiltrate victim DDNS API keys from responses, but can cause erroneous DNS record updates and disrupt the victim's intended DDNS operation. |
| Exploit ScenarioDerived | An attacker with a Nezha member account sends a PATCH /server/{id} request for their own registered server, supplying a ddns_profiles field referencing IDs such as 150, 151, and 152 - values not yet assigned to any profile in the database. A victim user subsequently creates a DDNS profile pointing to their Cloudflare account's API token and domain; the database auto-assigns this profile ID 150. The Nezha DDNS worker next execution cycle resolves ID 150 from the attacker's server record, constructs a DNS update request using the victim's Cloudflare API credentials and zone configuration, and issues it - potentially altering or disrupting DNS records the victim controls. No public exploit code has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 12, 2026
Incorrect authorization in Nezha Monitoring's DDNS profile subsystem allows an authenticated low-privilege member to pre-populate their server record with nonexistent DDNS profile IDs, then hijack any future victim-owned DDNS profile whose auto-assigned ID collides with a pre-stored value. Affected versions span 2.0.14 through pre-2.1.0 of the self-hosted nezhahq/nezha platform. When the collision occurs, the DDNS worker dispatches DNS updates on behalf of the attacker's server using the victim's DDNS provider credentials and configuration, achieving cross-tenant DNS manipulation and disrupting the victim's legitimate DDNS service. No public exploit identified at time of analysis; vendor-released patch available in version 2.1.0.
RemediationAI
Vendor-released patch: version 2.1.0. Operators should upgrade Nezha Monitoring to 2.1.0 or later; the vendor advisory at https://github.com/nezhahq/nezha/security/advisories/GHSA-39g2-8x68-pmx8 confirms this release resolves the authorization defect. If immediate upgrade is not feasible, restrict the PATCH /server/{id} endpoint at the reverse proxy layer to prevent member-role users from submitting arbitrary ddns_profiles IDs - note this will block legitimate server configuration updates for those users. Alternatively, temporarily disabling the DDNS worker process prevents cross-profile dispatch, at the cost of losing all DDNS update functionality for all users. Operators may also audit existing server records for ddns_profiles values that reference nonexistent profile IDs, which would indicate pre-staging by an attacker. Single-user Nezha deployments with no additional member accounts are not exposed and require only a planned upgrade.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Nezha Monitoring (CPE: cpe:2.3:a:nezhahq:nezha:*:*:*:*:*:*:*:*) is a self-hostable Go-based server monitoring and operations tool featuring a DDNS subsystem that periodically resolves stored profile IDs and dispatches DNS update requests to external providers such as Cloudflare or DNSPod. The PATCH /server/{id} REST endpoint accepts a ddns_profiles array without validating that supplied IDs refer to existing, user-accessible profiles before persisting them - a CWE-863 (Incorrect Authorization) failure where the authorization check is absent at the data-binding stage rather than enforced at resolution time. Because profile IDs are likely sequential integers assigned by the ORM at creation, an attacker can stake out future IDs speculatively. When a legitimate user later creates a DDNS profile that receives one of those pre-stored IDs, the DDNS worker's ID-based lookup resolves to the victim's profile object, crossing user trust boundaries - a cross-tenant scope change reflected in the CVSS S:C metric.
Know when Nezha gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:L
Network API exploitable by authenticated members (PR:L); no complexity; scope change reflects cross-tenant DDNS dispatch; no direct confidentiality impact since victim credentials are not returned to the attacker.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Nezha Monitoring is a self-hostable, lightweight, servers and websites monitoring and O&M tool. From version 2.0.14 to before version 2.1.0, PATCH /server/{id} accepts and persists nonexistent ddns_profiles IDs for a member-owned server. If another user later creates a DDNS profile with one of those IDs, the DDNS worker resolves the stored ID and dispatches an update using the other user's DDNS profile configuration in the context of the attacker's server. This issue has been patched in version 2.1.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Host header injection in Nezha 2.2.3's OAuth2 redirect endpoint (/api/v1/oauth2/{provider}) allows an unauthenticated re
Unauthenticated path traversal in Nezha Monitoring (nezhahq/nezha) before 2.0.13 allows remote attackers to read arbitra
Host header injection in Nezha Monitoring versions 1.0.0 through 2.2.0 allows unauthenticated remote attackers to redire
Unbounded WebSocket stream allocation in Nezha Monitoring versions 1.0.0 through 2.1.x allows any authenticated dashboar
Nezha Monitoring versions 2.0.14 through 2.1.0 (exclusive) allows any authenticated user to exploit the NAT-based Host c
Cross-tenant session hijacking in Nezha Monitoring (v1.14.13-1.14.14 and v2.0.0-2.0.9) lets any authenticated low-privil
Nezha monitoring dashboards running versions 1.0.0 through 2.3.14 can be knocked offline by an authenticated user who ho
Resource exhaustion in Nezha 2.0.13 through 2.3.14 allows an authenticated user to open unbounded concurrent connections
Cleartext third-party credentials are exposed to any authenticated principal holding DDNS read access in Nezha versions
Permanent deadlock of the alerting subsystem in Nezha Dashboard 1.8.0 through 2.3.12 allows any authenticated non-admin
Authenticated privilege escalation in Nezha Dashboard before 2.3.5 lets any account holding the nezha:service:write scop
Denial of service in the Nezha monitoring dashboard before 2.3.8 lets any authenticated non-administrator account crash
Same weakness CWE-863 – Incorrect Authorization
View allSame technique Authentication Bypass
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP5 | Affected |
| SUSE Linux Enterprise Module for Package Hub 15 SP6 | Affected |
| openSUSE Leap 15.5 | Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-36600
GHSA-39g2-8x68-pmx8
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB