{"schemaVersion":3,"id":"CVE-2026-100394","aliases":["GHSA-qjpp-gffx-2wm9","GO-2026-6794"],"status":"published","duplicateOf":null,"title":"Nezha Monitoring: Whole-instance DoS in Nezha dashboard: a member can crash the process for every tenant","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.","dates":{"published":"2026-10-14T15:38:47.079Z","modified":"2026-10-14T15:38:47.079Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":6.5,"severity":"medium","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":6.5,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":6.5,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Go","score":6.5,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","exploitability":7.2,"impact":6,"computed":true}]},"epss":{"probability":0.00423,"percentile":0.3557,"severity":"low","asOf":"2026-10-22T00:00:00.000Z","change":{"pp":null,"baselineDate":null,"baselineScore":null},"history":[{"date":"2026-10-15T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.00423,"percentile":0.3557}],"last30":[{"date":"2026-10-15T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00423,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.00423,"percentile":0.3557}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-362","name":"Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')","description":"The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently.","type":"weakness","status":"Draft","abstraction":"Class","likelihoodOfExploit":"Medium","url":"https://cwe.mitre.org/data/definitions/362.html"},{"id":"CWE-476","name":"NULL Pointer Dereference","description":"The product dereferences a pointer that it expects to be valid but is NULL.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"Medium","url":"https://cwe.mitre.org/data/definitions/476.html"}],"affected":[{"vendor":"github.com/nezhahq","product":"nezha","name":"github.com/nezhahq/nezha","label":"nezha","ecosystem":"Go","cpePart":null,"purl":"pkg:golang/github.com/nezhahq/nezha","purlType":"golang","versions":[{"text":"≥ 0.0.0-20260628010923-fd31e5f1b0f8, < 0.0.0-20260721131105-c893aa57867d","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 0.0.0-20260628010923-fd31e5f1b0f8, < 0.0.0-20260721131105-c893aa57867d","eol":null,"hubHref":null},{"vendor":"nezhahq","product":"nezha","name":"nezha","label":"nezha","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 2.2.7, < 2.2.11","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 2.2.7, < 2.2.11","eol":null,"hubHref":"/vendor/nezhahq/nezha"}],"affectedCount":2,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/nezhahq/nezha/security/advisories/GHSA-qjpp-gffx-2wm9","label":"github.com/nezhahq/nezha/security/advisories/GHSA-qjpp-gffx-2wm9","hostname":"github.com","tags":["X Refsource CONFIRM","WEB","Advisory"]},{"url":"https://github.com/nezhahq/nezha/commit/c893aa57867d8a3d608e2f2f16d1594c9766cdf3","label":"github.com/nezhahq/nezha/commit/c893aa57867d8a3d608e2f2f16d1594c9766cdf3","hostname":"github.com","tags":["X Refsource MISC","WEB","FIX"]},{"url":"https://github.com/nezhahq/nezha/releases/tag/v2.2.11","label":"github.com/nezhahq/nezha/releases/tag/v2.2.11","hostname":"github.com","tags":["X Refsource MISC","WEB"]},{"url":"https://github.com/nezhahq/nezha/releases/tag/v2.3.0","label":"github.com/nezhahq/nezha/releases/tag/v2.3.0","hostname":"github.com","tags":["X Refsource MISC","WEB"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-100394","label":"nvd.nist.gov/vuln/detail/CVE-2026-100394","hostname":"nvd.nist.gov","tags":["Advisory"]},{"url":"https://github.com/nezhahq/nezha","label":"github.com/nezhahq/nezha","hostname":"github.com","tags":["PACKAGE"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-10-14T15:38:47.079Z","label":"Published","detail":"Vulnerability first disclosed.","source":null}],"risk":{"score":26,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-22T18:01:44.804Z","stale":false,"partial":false}}