Linux Kernel up to 6.18.6/6.19-rc5 DAMON Sysfs Interface damon_call use after free

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.7 | $0-$5k | 0.00 |
Summary
A vulnerability, which was classified as critical, has been found in Linux Kernel up to 6.18.6/6.19-rc5. The impacted element is the function damon_call of the component DAMON Sysfs Interface. The manipulation leads to use after free.
This vulnerability is listed as CVE-2026-23012. There is no available exploit.
It is advisable to upgrade the affected component.
Details
A vulnerability was found in Linux Kernel up to 6.18.6/6.19-rc5 and classified as critical. This issue affects the function damon_call of the component DAMON Sysfs Interface. The manipulation with an unknown input leads to a use after free vulnerability. Using CWE to declare the problem leads to CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. Impacted is confidentiality, integrity, and availability. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: mm/damon/core: remove call_control in inactive contexts If damon_call() is executed against a DAMON context that is not running, the function returns error while keeping the damon_call_control object linked to the context's call_controls list. Let's suppose the object is deallocated after the damon_call(), and yet another damon_call() is executed against the same context. The function tries to add the new damon_call_control object to the call_controls list, which still has the pointer to the previous damon_call_control object, which is deallocated. As a result, use-after-free happens. This can actually be triggered using the DAMON sysfs interface. It is not easily exploitable since it requires the sysfs write permission and making a definitely weird file writes, though. Please refer to the report for more details about the issue reproduction steps. Fix the issue by making two changes. Firstly, move the final kdamond_call() for cancelling all existing damon_call() requests from terminating DAMON context to be done before the ctx->kdamond reset. This makes any code that sees NULL ctx->kdamond can safely assume the context may not access damon_call() requests anymore. Secondly, let damon_call() to cleanup the damon_call_control objects that were added to the already-terminated DAMON context, before returning the error.
The advisory is shared at git.kernel.org. The identification of this vulnerability is CVE-2026-23012 since 01/13/2026. The exploitation is known to be easy. Technical details are known, but no exploit is available. The price for an exploit might be around USD $0-$5k at the moment (estimation calculated on 03/27/2026).
The vulnerability scanner Nessus provides a plugin with the ID 296533 (Linux Distros Unpatched Vulnerability : CVE-2026-23012), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 6.18.7 or 6.19-rc6 eliminates this vulnerability. Applying the patch 23b061f421eef03647b512f3df48861706c87db3/f9132fbc2e83baf2c45a77043672a63a675c9394 is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (296533), EUVD (EUVD-2026-4617) and CERT Bund (WID-SEC-2026-0215). Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Affected
- Debian Linux
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- SUSE openSUSE
- RESF Rocky Linux
- Open Source Linux Kernel
Product
Type
Vendor
Name
Version
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.9VulDB Meta Temp Score: 7.7
VulDB Base Score: 8.0
VulDB Temp Score: 7.6
VulDB Vector: 🔒
VulDB Reliability: 🔍
NVD Base Score: 7.8
NVD Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Use after freeCWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: Partially
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 296533
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2026-23012
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 6.18.7/6.19-rc6
Patch: 23b061f421eef03647b512f3df48861706c87db3/f9132fbc2e83baf2c45a77043672a63a675c9394
Timeline
01/13/2026 CVE reserved01/25/2026 Advisory disclosed
01/25/2026 VulDB entry created
03/27/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2026-23012 (🔒)
GCVE (CVE): GCVE-0-2026-23012
GCVE (VulDB): GCVE-100-342833
EUVD: 🔒
CERT Bund: WID-SEC-2026-0215 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 01/25/2026 16:05Updated: 03/27/2026 22:22
Changes: 01/25/2026 16:05 (59), 01/26/2026 02:07 (1), 01/26/2026 12:12 (2), 03/26/2026 01:17 (12), 03/27/2026 22:22 (7)
Complete: 🔍
Cache ID: 216::103
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
No comments yet. Languages: en.
Please log in to comment.