CVE-2026-46020: mm/damon/core: validate damos_quota_goal->nid for node_mem_{used,free}_bp
In the Linux kernel, the following vulnerability has been resolved:
mm/damon/core: validate damos_quota_goal->nid for node_mem_{used,free}_bp
Patch series "mm/damon/core: validate damos_quota_goal->nid".
node_mem[cg]_{used,free}_bp DAMOS quota goals receive the node id. The
node id is used for si_meminfo_node() and NODE_DATA() without proper
validation. As a result, privileged users can trigger an out of bounds
memory access using DAMON_SYSFS. Fix the issues.
The issue was originally reported [1] with a fix by another author. The
original author announced [2] that they will stop working including the
fix that was still in the review stage. Hence I'm restarting this.
This patch (of 2):
Users can set damos_quota_goal->nid with arbitrary value for
node_mem_{used,free}_bp. But DAMON core is using those for
si_meminfo_node() without the validation of the value. This can result in
out of bounds memory access. The issue can actually triggered using DAMON
user-space tool (damo), like below.
$ sudo ./damo start --damos_action stat \
--damos_quota_goal node_mem_used_bp 50% -1 \
--damos_quota_interval 1s
$ sudo dmesg
[...]
[ 65.565986] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000098
Fix this issue by adding the validation of the given node. If an invalid
node id is given, it returns 0% for used memory ratio, and 100% for free
memory ratio.
Security readout for executives and security teams
Plain-English summary
CVE-2026-46020 is a Linux kernel DAMON bug where a privileged user can provide an invalid memory node ID and trigger out-of-bounds kernel memory access. The published example shows a kernel NULL pointer dereference. This is mainly a local privileged stability risk unless other exposure details emerge.
Executive priority
Treat as a controlled kernel maintenance item, not an emergency internet-facing issue. Prioritize patching multi-user, shared, or delegated-administration systems first because a privileged local user could destabilize the host.
Technical view
DAMOS quota goals for node_mem_used_bp and node_mem_free_bp accept a node ID through DAMON_SYSFS. The kernel used that ID in si_meminfo_node() and NODE_DATA() without validation, allowing invalid values to reach kernel memory paths. Stable fixes validate the node ID and return safe ratio defaults for invalid nodes.
Likely exposure
Exposure appears limited to Linux systems with affected kernel versions where privileged users can use DAMON_SYSFS. The source bundle lists affected Linux kernel ranges, but version mapping is incomplete and should be verified against vendor kernel builds.
Exploitation context
No KEV listing or cited source indicates active exploitation. The source states privileged users can trigger the issue with the DAMON user-space tool, causing a kernel fault. No remote or unprivileged attack path is described.
Researcher notes
Evidence supports a privileged local trigger and kernel memory safety fault, but not full impact beyond out-of-bounds access and NULL pointer dereference. The affected-version data in the bundle is unusual, so validate against exact upstream or distribution commit history.
Mitigation direction
Update to a kernel containing the referenced stable fixes.
Check distribution vendor advisories for backported kernel packages.
Restrict privileged access to DAMON_SYSFS where operationally possible.
Prioritize shared systems where local privileged users are not fully trusted.
Validation and detection
Inventory Linux kernel versions across servers and appliances.
Confirm whether DAMON_SYSFS is enabled and usable by privileged users.
Verify kernel packages include the referenced stable commits or vendor backports.
Review kernel logs for crashes involving DAMON quota goal handling.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2026-46020 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
4Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
May 27, 2026, 12:56 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.