CVE-2026-23372
Description
In the Linux kernel, the following vulnerability has been resolved:
nfc: rawsock: cancel tx_work before socket teardown
In rawsock_release(), cancel any pending tx_work and purge the write queue before orphaning the socket. rawsock_tx_work runs on the system workqueue and calls nfc_data_exchange which dereferences the NCI device. Without synchronization, tx_work can race with socket and device teardown when a process is killed (e.g. by SIGKILL), leading to use-after-free or leaked references.
Set SEND_SHUTDOWN first so that if tx_work is already running it will see the flag and skip transmitting, then use cancel_work_sync to wait for any in-progress execution to finish, and finally purge any remaining queued skbs.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
In the Linux kernel's NFC rawsock, a race condition between tx_work and socket teardown can lead to use-after-free or leaked references when a process is killed.
Vulnerability
In the Linux kernel's NFC subsystem, the rawsock socket implementation lacks proper synchronization between the rawsock_tx_work workqueue task and the socket release path. When a process is killed (e.g., by SIGKILL), rawsock_release() can run concurrently with rawsock_tx_work, which calls nfc_data_exchange and dereferences the NCI device. Without a lock or flag, this race can result in a use-after-free or leaked references [1][2][3][4].
Exploitation
The vulnerability is triggered by terminating a process that holds an NFC rawsock while it has pending transmit work. No special privilege is required beyond the ability to open a raw NFC socket; the attacker must trigger the race condition, but a remote attacker cannot directly exploit it unless they can cause a process to exit abruptly. The attack surface is limited to local users with access to NFC sockets.
Impact
A successful exploit allows an attacker to corrupt kernel memory, leading to a system crash (denial of service) or potentially arbitrary code execution in kernel context. The CVSS v3 base score is 7.8 (High), indicating a locally exploitable vulnerability with high impact on confidentiality, integrity, and availability.
Mitigation
The fix introduces a SEND_SHUTDOWN flag set before any teardown so that if tx_work is already running, it will see the flag and abort transmission. It then uses cancel_work_sync to wait for any in-progress execution and purges the write queue. This patch has been applied to the stable kernel tree [1][2][3][4]; users should update to a corrected version.
AI Insight generated on May 18, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
10cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*+ 8 more
- cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*range: >=3.1.1,<5.10.253
- cpe:2.3:o:linux:linux_kernel:3.1:-:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:*
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
8- git.kernel.org/stable/c/3ae592ed91bb4b6b51df256b51045c13d2656049nvdPatch
- git.kernel.org/stable/c/722a28b635ec281bb08a23885223526d8e7d6526nvdPatch
- git.kernel.org/stable/c/78141b8832e16d80d09cbefb4258612db0777a24nvdPatch
- git.kernel.org/stable/c/9b2d23cd09e1cb56bdf0e4d5614703094159f16cnvdPatch
- git.kernel.org/stable/c/cdeed45ce8c92defd057f7d67ee9a69374d8fa16nvdPatch
- git.kernel.org/stable/c/d793458c45df2aed498d7f74145eab7ee22d25aanvdPatch
- git.kernel.org/stable/c/da4515fc8263c5933ed605e396af91079806dc45nvdPatch
- git.kernel.org/stable/c/edc988613def90c5b558e025b1b423f48007be06nvdPatch
News mentions
0No linked articles in our index yet.