CVE-2026-23192
Use-After-Free in Linux Kernel linkwatch Component Causes Crash
Publication date: 2026-02-14
Last updated on: 2026-04-03
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | 6.15 |
| linux | linux_kernel | 6.15 |
| linux | linux_kernel | 6.15 |
| linux | linux_kernel | 6.15 |
| linux | linux_kernel | 6.15 |
| linux | linux_kernel | 6.15 |
| linux | linux_kernel | 6.15 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | 6.19 |
| linux | linux_kernel | From 6.15.1 (inc) to 6.18.10 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-416 | The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability is a use-after-free (UAF) issue in the Linux kernel's linkwatch component. It occurs because the device reference count is improperly managed when releasing a device reference with __dev_put(). After linkwatch_do_dev() calls __dev_put(), the device reference count may drop to 1, allowing netdev_run_todo() to proceed and eventually free the device. However, __linkwatch_run_queue() later tries to access the already-freed device, causing a use-after-free error.
The root cause is that __dev_put() is called too early in linkwatch_do_dev(), before all device accesses are complete. The fix involves moving __dev_put() calls to the callers of linkwatch_do_dev(), ensuring the device reference is released only after all accesses finish, preventing the use-after-free condition.
How can this vulnerability impact me? :
This use-after-free vulnerability can lead to undefined behavior in the Linux kernel, including potential system crashes, kernel panics, or memory corruption. Since it involves accessing freed memory, it could be exploited by attackers to execute arbitrary code with kernel privileges or cause denial of service by crashing the system.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be reproduced and thus detected by running a specific sequence of commands that trigger the use-after-free condition in the Linux kernel's linkwatch subsystem.
- ip tuntap add mode tun name tun_test
- ip link set tun_test up
- ip link set tun_test carrier off
- ip link set tun_test carrier on
- sleep 0.5
- ip tuntap del mode tun name tun_test
Additionally, enabling Kernel Address Sanitizer (KASAN) can help detect the use-after-free bug by reporting errors related to netdev_need_ops_lock and netdev_unlock_ops in the kernel logs.
What immediate steps should I take to mitigate this vulnerability?
I don't know