Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Nezha dashboard (PR:L)
-
DeliveryConfigure webhook with 6to4/NAT64 IPv6 URL
-
ExploitBypass denylist via IsGlobalUnicast gap
-
ExecutionDashboard issues request to restricted IPv6 endpoint
-
ImpactLimited internal reach only under non-standard routing
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated Nezha user (PR:L) with access to configure a notification or DDNS webhook URL. The attacker must supply an IPv6 literal in the 6to4 prefix 2002::/16 or the local-use NAT64 prefix 64:ff9b:1::/48, which the pre-2.3.3 denylist failed to block. Critically, meaningful exploitation is limited to deployments whose network provides unusual or non-standards-compliant routing for these IPv6 transition ranges; on standards-compliant networks these addresses do not resolve to internal targets, and the advisory confirms no path to IPv4 metadata, loopback, or private-network requests was demonstrated. Affects Nezha 2.0.10 through 2.3.2; fixed in 2.3.3 (commit d1fcde8e). |
| Impact | This is a genuinely low-priority, high-caveat SSRF. The vendor CVSS 4.0 score is 5.3 (medium) with vector AV:N/AC:L/PR:L/UI:N/VC:N/VI:L/SC:L, and CWE-918 (SSRF) is the correct classification. However, the description itself is unusually candid about the weakness of the finding: the bypass only reaches otherwise-restricted IPv6 endpoints 'where the dashboard's network provides unusual or non-standards-compliant routing for these transition ranges,' and explicitly states 'no direct path to an IPv4 metadata, loopback, or private-network HTTP request has been demonstrated.' That materially undercuts the classic SSRF-to-cloud-metadata impact that makes such bugs dangerous. There is no EPSS score, no CISA KEV listing, and no public exploit code provided - exploitation status is 'no public exploit identified at time of analysis.' Exploitation is authenticated (PR:L requires a valid dashboard user able to configure a webhook), and effective attacks require attacker-favorable, non-standard routing of 6to4/NAT64 prefixes on the victim's network, so the real-world AC is higher than the vendor's AC:L implies. Net: a real, patch-worthy SSRF denylist-completeness gap, but closer to a hardening fix than an urgent exploitable threat - treat as low priority absent evidence of exploitable routing in the specific deployment. |
| Exploit ScenarioDerived | An authenticated Nezha dashboard user with permission to configure a notification or DDNS webhook sets the target URL to an IPv6 literal in the 6to4 (2002::/16) or local-use NAT64 (64:ff9b:1::/48) range, e.g. http://[64:ff9b:1::a9fe:a9fe]/metadata, which the flawed denylist accepts because Go's netip.Addr.IsGlobalUnicast returns true. The dashboard then issues an HTTP request to that address; only if the surrounding network non-standardly routes these transition prefixes toward an internal or link-local destination does the attacker gain any restricted reach. No public exploit code exists, and no path to IPv4 metadata/loopback/private ranges has been demonstrated. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 27, 2026
Authenticated users of the Nezha monitoring dashboard (versions 2.0.10 through 2.3.2) who can configure notification or DDNS webhook URLs can bypass the dashboard's SSRF denylist by supplying an IPv6 literal in the 6to4 prefix 2002::/16 or the local-use NAT64 prefix 64:ff9b:1::/48, causing the server to issue outbound HTTP requests to those endpoints. Exploitation is heavily constrained: the CVSS vector is PR:L, meaning an attacker must already hold a webhook-configuring account, and meaningful impact depends on the deployment's network providing unusual or non-standards-compliant routing for these transition ranges; the advisory confirms no path to IPv4 metadata, loopback, or private-network requests was demonstrated. No public exploit code has been identified at time of analysis and the issue is not known to be exploited, but the vendor has shipped a fix in version 2.3.3 (commit d1fcde8e) that explicitly blocks both prefixes. The independent assessment rates this as a low-priority, high-caveat SSRF with AC:H and only low confidentiality impact.
RemediationAI
Upgrade Nezha to version 2.3.3 or later, which implements the upstream fix commit d1fcde8e adding the 6to4 prefix 2002::/16 and the local-use NAT64 prefix 64:ff9b:1::/48 to the blockedHTTPClientCIDRs denylist (see https://github.com/nezhahq/nezha/security/advisories/GHSA-jr2j-7hvh-h4q9). Where upgrading is not immediately possible, restrict webhook and DDNS URL configuration to fully trusted administrators, since the vulnerability requires an authenticated account with that capability; this reduces exposure to insiders or compromised low-privilege users but does not eliminate risk from trusted accounts. Network-layer compensating controls are also effective: block outbound traffic from the Nezha dashboard host to 2002::/16 and 64:ff9b:1::/48 (and ideally to all non-routable and special-purpose ranges) at the host firewall or egress gateway, at the cost of breaking any legitimate webhook endpoints that genuinely use those prefixes, which is rare. Enforce that egress traffic only reaches explicitly allow-listed webhook destinations; this tightly constrains SSRF but adds ongoing maintenance overhead as destinations change. Note that because the advisory did not demonstrate a path to IPv4 metadata, loopback, or private-network services, deployments on standards-compliant networks are at low practical risk even before patching.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Nezha is a Go-based server monitoring and alerting platform whose dashboard lets authenticated users define outbound webhook URLs for notifications and DDNS updates. To prevent server-side request forgery CnCWE-918), the code path in pkg/utils/http.go resolves the target URL and validates the resolved IP against a denylist of CIDRs assembled with mustParseHTTPClientCIDRs, relying on Go's netip.Addr.IsGlobalUnicast to reject non-routable addresses. That check returns true for IPv6 transition ranges such as the 6to4 prefix 2002::/16 (which embeds an IPv4 address in bits 16-47) and the local-use IPv4/IPv6 translation prefix 64:ff9b:1::/48, because these are formally global-unicast space even though they may be routed internally on misconfigured or non-standards-compliant networks. The affected releases therefore accepted webhook URLs pointing at those ranges, and the fix (commit d1fcde8e) simply adds "2002::/16" and "64:ff9b:1::/48" to blockedHTTPClientCIDRs and introduces regression tests (TestHTTPURLTargetIPAllowed, TestResolveAllowedHTTPURLRejectsSpecialIPv6Literals) asserting that well-known NAT64 64:ff9b::, local-use NAT64 64:ff9b:1::, and 6to4 addresses embedding both public (2002:0101:0101::1) and link-local (2002:a9fe:a9fe::1) IPv4 values are rejected. The root cause class is insufficient denylist coverage of special-purpose address ranges in an SSRF filter, not a flaw in the HTTP client itself.
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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:L/SI:L/SA:L
Authenticated webhook config gives PR:L; AC:H because exploitation depends on non-standard network routing of transition prefixes; only limited outbound request reach (C:L), no demonstrated integrity/availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Nezha versions 2.0.10 through 2.3.2 use a restricted HTTP client to validate user-configurable notification and DDNS webhook URLs, but the denylist did not cover IPv6 transition ranges - specifically the 6to4 prefix 2002::/16 and the local-use IPv4/IPv6 translation prefix 64:ff9b:1::/48. Because such addresses satisfy Go's netip.Addr.IsGlobalUnicast check, the URL validator accepted them. An authenticated user able to configure a webhook may be able to cause the dashboard to issue requests to an otherwise restricted IPv6 endpoint, but only where the dashboard's network provides unusual or non-standards-compliant routing for these transition ranges; no direct path to an IPv4 metadata, loopback, or private-network HTTP request has been demonstrated. The issue is fixed in version 2.3.3 (commit d1fcde8e), which blocks both prefixes.
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
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
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
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
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
Nezha monitoring dashboards running versions 1.0.0 through 2.3.14 can be knocked offline by an authenticated user who ho
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
Nezha Monitoring versions prior to 2.2.5 expose stored third-party API credentials in plaintext through two listing API
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
EUVD-2026-88022
GHSA-qvpf-fj3j-7cw6
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB