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.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
23b7869c0fd08d73c9f83a2db88a13312d6198bb to < 9b2d23cd09e1cb56bdf0e4d5614703094159f16caffected23b7869c0fd08d73c9f83a2db88a13312d6198bb to < cdeed45ce8c92defd057f7d67ee9a69374d8fa16affected23b7869c0fd08d73c9f83a2db88a13312d6198bb to < 3ae592ed91bb4b6b51df256b51045c13d2656049affected23b7869c0fd08d73c9f83a2db88a13312d6198bb to < 722a28b635ec281bb08a23885223526d8e7d6526affected23b7869c0fd08d73c9f83a2db88a13312d6198bb to < 78141b8832e16d80d09cbefb4258612db0777a24affected23b7869c0fd08d73c9f83a2db88a13312d6198bb to < edc988613def90c5b558e025b1b423f48007be06affected23b7869c0fd08d73c9f83a2db88a13312d6198bb to < da4515fc8263c5933ed605e396af91079806dc45affected23b7869c0fd08d73c9f83a2db88a13312d6198bb to < d793458c45df2aed498d7f74145eab7ee22d25aaaffected
Linux Linux
Default version status: affected
3.1affected0 to < 3.1unaffected5.10.253 to ≤ 5.10.*unaffected5.15.203 to ≤ 5.15.*unaffected6.1.167 to ≤ 6.1.*unaffected6.6.130 to ≤ 6.6.*unaffected6.12.77 to ≤ 6.12.*unaffected6.18.17 to ≤ 6.18.*unaffected6.19.7 to ≤ 6.19.*unaffected7.0 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/9b2d23cd09e1cb56bdf0e4d5614703094159f16c ↗
- https://git.kernel.org/stable/c/cdeed45ce8c92defd057f7d67ee9a69374d8fa16 ↗
- https://git.kernel.org/stable/c/3ae592ed91bb4b6b51df256b51045c13d2656049 ↗
- https://git.kernel.org/stable/c/722a28b635ec281bb08a23885223526d8e7d6526 ↗
- https://git.kernel.org/stable/c/78141b8832e16d80d09cbefb4258612db0777a24 ↗
- https://git.kernel.org/stable/c/edc988613def90c5b558e025b1b423f48007be06 ↗
- https://git.kernel.org/stable/c/da4515fc8263c5933ed605e396af91079806dc45 ↗
- https://git.kernel.org/stable/c/d793458c45df2aed498d7f74145eab7ee22d25aa ↗
- https://cert-portal.siemens.com/productcert/html/ssa-784472.html ↗