CVE Catalog

CVE-2024-41005

MediumCVSS 4.7
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.19%

8th percentile - higher than 8% of all known CVEs

Summary

In the Linux kernel, netpoll_owner_active() has a race condition due to a non-atomic read of the napi->poll_owner field. This can lead to data inconsistency when checking if the current CPU is the lock owner.

Risk Assessment

The race condition can cause unpredictable system behavior, including kernel errors and, in rare cases, hangs or data corruption. This mainly affects environments using netpoll (e.g., remote console, debugging).

Recommendation

Update the Linux kernel to a version containing the fix that replaces the non-atomic read with an atomic one. If you use netpoll in critical systems, prioritize the update.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: netpoll: Fix race condition in netpoll_owner_active KCSAN detected a race condition in netpoll: BUG: KCSAN: data-race in net_rx_action / netpoll_send_skb write (marked) to 0xffff8881164168b0 of 4 bytes by interrupt on cpu 10: net_rx_action (./include/linux/netpoll.h:90 net/core/dev.c:6712 net/core/dev.c:6822) <snip> read to 0xffff8881164168b0 of 4 bytes by task 1 on cpu 2: netpoll_send_skb (net/core/netpoll.c:319 net/core/netpoll.c:345 net/core/netpoll.c:393) netpoll_send_udp (net/core/netpoll.c:?) <snip> value changed: 0x0000000a -> 0xffffffff This happens because netpoll_owner_active() needs to check if the current CPU is the owner of the lock, touching napi->poll_owner non atomically. The ->poll_owner field contains the current CPU holding the lock. Use an atomic read to check if the poll owner is the current CPU.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS