CVE Catalog

CVE-2026-100394

MediumCVSS 6.5
Published: Updated: Translated: NVD NIST

Summary

Nezha Monitoring from 2.2.7 until 2.2.11 has a race condition in ServiceSentinel.worker where pointer-valued serviceStatusToday and serviceCurrentStatusData entries are dereferenced without revalidating that ServiceSentinel.Delete had not removed them. A RoleMember concurrently reporting TCP or ICMP results and deleting the same service causes a nil pointer dereference, and the lack of a gRPC recovery interceptor lets the panic terminate the whole dashboard process.

Risk Assessment

An attacker with the RoleMember role can crash the entire Nezha dashboard, disrupting the web interface, REST API, and agent connections for every tenant — this is an availability-only issue.

Recommendation

Update Nezha Monitoring to version 2.2.11 or 2.3.0.

Other vulnerabilities in Nezha Monitoring

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS