Description
Nezha Monitoring is a self-hostable, lightweight, servers and websites monitoring and O&M tool. From 2.2.7 until 2.2.11, ServiceSentinel.worker in service/singleton/servicesentinel.go checked an owned service under servicesLock and later dereferenced pointer-valued serviceStatusToday and serviceCurrentStatusData entries under serviceResponseDataStoreLock without revalidating that ServiceSentinel.Delete had not removed them. A RoleMember could concurrently report TCP or ICMP results through the member's own agent and delete the same owned service, causing a nil pointer dereference. Because the gRPC server had no recovery interceptor, the worker panic terminated the whole dashboard process and disrupted every tenant's web interface, REST API, and agent connections. The issue affects availability only and does not disclose or modify data. This issue is fixed in versions 2.2.11 and 2.3.0.
Published: 2026-10-14
Score: 6.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service
Action: Apply Patch
AI Analysis

Impact

ServiceSentinel.worker improperly referenced internal data after a service was deleted by an authorized RoleMember, producing a nil pointer dereference that caused a panic. The gRPC server lacked a recovery interceptor, so the panic terminated the dashboard process and disrupted all tenants’ web interfaces, REST API, and agent connections. The vulnerability does not leak or modify data; it affects availability only. The weakness corresponds to race condition (CWE-362) and null pointer dereference (CWE-476).

Affected Systems

Nezha Monitoring, a self‑hostable servers and websites monitoring tool released by nezhahq, is affected by this flaw. Vulnerable releases include versions 2.2.7 through 2.2.10 and any earlier releases; the issue is fixed in version 2.2.11 and in the subsequent release 2.3.0. All instances running those affected versions are susceptible.

Risk and Exploitability

The CVSS score of 6.5 marks the flaw as moderate in severity. An attacker with RoleMember rights can trigger the denial of service by concurrently reporting results and deleting a service. The threat does not rely on remote exploitation beyond the gRPC endpoint; it requires access to the internal dashboard but would be feasible for anyone with the appropriate role or compromised credentials. The EPSS score is < 1%, and the flaw is not listed in the CISA KEV catalog. The impact is a complete interruption of service for all tenants, but the attack does not disclose or alter data.

Generated by OpenCVE AI on October 15, 2026 at 18:15 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Nezha to version 2.2.11 or later (including 2.3.0) to apply the fix for the nil pointer dereference.
  • Restrict RoleMember permissions so that only authorized service owners can delete services and prevent concurrent deletion during result reporting.
  • Configure a process supervisor or add a recovery interceptor to restart the dashboard automatically if it crashes, to limit downtime.

Generated by OpenCVE AI on October 15, 2026 at 18:15 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-qjpp-gffx-2wm9 Nezha Monitoring: Whole-instance DoS in Nezha dashboard: a member can crash the process for every tenant
History

Thu, 29 Oct 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 23 Oct 2026 00:45:00 +0000

Type Values Removed Values Added
First Time appeared Nezhahq
Nezhahq nezha
Vendors & Products Nezhahq
Nezhahq nezha

Wed, 14 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Description Nezha Monitoring is a self-hostable, lightweight, servers and websites monitoring and O&M tool. From 2.2.7 until 2.2.11, ServiceSentinel.worker in service/singleton/servicesentinel.go checked an owned service under servicesLock and later dereferenced pointer-valued serviceStatusToday and serviceCurrentStatusData entries under serviceResponseDataStoreLock without revalidating that ServiceSentinel.Delete had not removed them. A RoleMember could concurrently report TCP or ICMP results through the member's own agent and delete the same owned service, causing a nil pointer dereference. Because the gRPC server had no recovery interceptor, the worker panic terminated the whole dashboard process and disrupted every tenant's web interface, REST API, and agent connections. The issue affects availability only and does not disclose or modify data. This issue is fixed in versions 2.2.11 and 2.3.0.
Title Nezha Monitoring: Whole-instance DoS in Nezha dashboard: a member can crash the process for every tenant
Weaknesses CWE-362
CWE-476
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-29T14:39:43.451Z

Reserved: 2026-09-25T20:08:33.083Z

Link: CVE-2026-100394

cve-icon Vulnrichment

Updated: 2026-10-29T14:39:22.732Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T16:17:28.693

Modified: 2026-10-29T15:17:14.443

Link: CVE-2026-100394

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T22:15:12Z

Weaknesses
  • CWE-362

    Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')

  • CWE-476

    NULL Pointer Dereference