Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as streaming child agent
-
DeliverySend oversized DIMENSION SLOT value
-
Exploitstr2ull_encoded passes value unbounded
-
Executionprd_array_create wraps size_t allocation
-
PersistInit loop writes past heap buffer
-
ImpactCrash parent agent (DoS)
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
MITRE ATT&CK
1 technique across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a Netdata parent-child streaming deployment where the attacker controls or has compromised an authenticated child agent that streams to a parent (PR:L). The malicious child sends an oversized DIMENSION SLOT value exceeding the parser's cap, exploiting the pluginsd slot handling in versions prior to 2.10.4. Exploitation is limited to availability (crash of the parent agent) with no confidentiality or integrity impact, requires no user interaction, and is closed by upgrading to 2.10.4 or nightly 2.10.0-782 where the value is capped at PLUGINSD_DIMENSION_SLOT_MAX/PLUGINSD_CHART_SLOT_MAX. |
| Impact | Signals are consistent and point to a moderate, not urgent, DoS issue. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H, base 6.5) is availability-only with no confidentiality or integrity impact - the description and patch confirm this is a heap out-of-bounds write that crashes the parent agent, not code execution. PR:L is accurate: the attacker must be an authenticated child agent in a Netdata parent-child streaming topology, which meaningfully constrains reach versus a fully unauthenticated flaw. No EPSS score, no CISA KEV listing, and no public exploit are present in the provided data - so no public exploit identified at time of analysis, and no evidence of active exploitation. No SSVC decision data was supplied. The signals do not conflict; the main gating factor is the trust/authentication prerequisite (a compromised or malicious streaming child). This is a real, verifiable bug (source diff and fix commit confirm the integer-overflow root cause), but it is a targeted availability risk against streaming deployments rather than a broadly weaponizable, high-priority issue. |
| Exploit ScenarioDerived | An attacker who controls or has compromised a Netdata child agent that streams metrics to a central parent connects and emits a crafted DIMENSION line carrying an oversized SLOT value (e.g. the reported 0x40000000). The unbounded value wraps the parent's size_t allocation math in prd_array_create, and the initialization loop writes past the undersized heap buffer, crashing the parent agent and halting monitoring for everything aggregated there. No public exploit code is identified, but the fix commit and unit tests reveal the exact triggering values. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 22, 2026
An authenticated Netdata child agent can crash its parent agent by streaming an oversized DIMENSION SLOT value in the plugins.d protocol, triggering an integer overflow that leads to a heap out-of-bounds write and termination of the parent process. Affected deployments are Netdata parent-child streaming setups running versions prior to 2.10.4 (including nightly builds earlier than 2.10.0-782-nightly); the attacker must already control or have compromised a child agent that is authenticated to the parent, so exploitation is limited to denial of service with no confidentiality or integrity impact (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H, 6.5). No public exploit code was identified at time of analysis and the issue is not listed in CISA KEV; risk is moderate rather than urgent, and it is fully closed by upgrading to the fixed release.
RemediationAI
Upgrade Netdata to version 2.10.4 or the nightly build 2.10.0-782-nightly, where the SLOT parser enforces PLUGINSD_DIMENSION_SLOT_MAX and PLUGINSD_CHART_SLOT_MAX, rejects over-cap values, and adds an allocation-overflow guard - this is the vendor-released patch (commit 034a774f689ac01488fc261ca729ce0875819b1b, merged via pull request 22598; see the advisory at https://github.com/netdata/netdata/security/advisories/GHSA-3qh4-842w-fvrm and the release at https://github.com/netdata/netdata/releases/tag/v2.10.4). Because exploitation requires an authenticated child agent, compensating controls center on reducing the trust extended to children: rotate or revoke streaming API keys and restrict which hosts may register as children so a single compromised agent cannot reach the parent (trade-off: operational overhead and risk of disrupting legitimate dynamic child enrollment); segment parent agents so untrusted child networks cannot reach the streaming port (trade-off: blocks legitimate remote children, may require relay/aggregator hosts); and, if a parent must temporarily accept semi-trusted children, monitor logs for the upstream warning 'PLUGINSD: ignoring invalid SLOT value ... above the supported maximum' as an exploitation indicator and enable automatic restart of the parent service under a supervisor so a crash is recovered quickly (trade-off: does not prevent the crash, only shortens downtime, and repeated restarts can cause metric gaps). Note that the upstream fix's overflow check is compiled in as an internal_fatal in debug builds only, so relying on it in production is not a substitute for the version upgrade.
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
Netdata uses the plugins.d streaming protocol for child agents to push chart and dimension metadata to a parent agent. In the affected parser (src/plugins.d/pluginsd_internals.h), the SLOT token of a DIMENSION line is decoded by str2ull_encoded and handed to pluginsd_rrddim_put_to_slot without any upper-bound validation, so an attacker-supplied value flows unchecked into prd_array_create in src/database/rrdset-pluginsd-array.h. There, the multiplication used to compute the allocation size (element count times element size, plus header) can wrap size_t while the original, large array length is retained as the logical size, so the array is under-allocated and the subsequent initialization loop walks past the end of the heap buffer. The root cause is CWE-190 (Integer Overflow or Wraparound) in an allocation-size computation driven by unvalidated input. The upstream fix caps the parsed value with PLUGINSD_DIMENSION_SLOT_MAX and PLUGINSD_CHART_SLOT_MAX, logs and rejects over-cap values (falling back to the uncached, by-position path), adds an internal_fatal guard on the multiplication invariant, and includes unit tests covering boundary cases such as 0x40000000 and 0xFFFFFFFFFFFFFFFF. The CPE entry cpe:2.3:a:netdata:netdata:*:*:*:*:*:*:*:* with no version qualifier reflects that the vulnerability applies across all pre-2.10.4 builds rather than a single named release.
Know when Netdata 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:U/C:N/I:N/A:H
Remote over the streaming channel with a low-effort crafted value (AV:N/AC:L); the attacker must be an authenticated child agent (PR:L); heap corruption crashes the parent, availability-only (A:H, C:N/I:N).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Netdata is an open source observability tool. Prior to 2.10.4, an authenticated child agent can send an oversized DIMENSION SLOT value that str2ull_encoded passes to pluginsd_rrddim_put_to_slot in src/plugins.d/pluginsd_internals.h without an upper bound. prd_array_create in src/database/rrdset-pluginsd-array.h can then wrap the size_t allocation calculation while retaining the original large array size, causing the subsequent initialization loop to write beyond the undersized heap allocation and crash the parent agent. This issue is fixed in version 2.10.4 and nightly build 2.10.0-782-nightly.
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
Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Netdata is an open source option for real-time infrastructure monitoring and troubleshooting. Rated critical severity (C
Netdata is an open source option for real-time infrastructure monitoring and troubleshooting. Rated critical severity (C
The Netdata web application through 1.13.0 allows remote attackers to inject their own malicious HTML code into an impor
Local privilege escalation to root in Netdata versions prior to 2.10.4: the setuid-root ndsudo helper command fail2ban-c
Local privilege escalation in the Netdata Windows Agent (versions 2.0.0 through 2.10.3) allows an authenticated low-priv
Memory exhaustion in Netdata versions prior to 2.11.0 allows a remote, unauthenticated attacker to inflate small, highly
Local privilege escalation in the Netdata Windows Agent (versions 2.0.0 through 2.10.3) lets an authenticated low-privil
A denial of service in Netdata Agent versions prior to 2.10.4 lets an authenticated streaming child agent crash the pare
Unauthenticated writes to the Netdata settings store are possible in versions 2.0.0 through 2.10.x because the /api/v3/s
Reflected XSS in Netdata before 2.3.1 allows unauthenticated network attackers to inject and execute arbitrary JavaScrip
EUVD-2026-84563
NVD
CVE.org
EPSS
GitHub
Exploit-DB