Description
In the Linux kernel, the following vulnerability has been resolved: smb: client: fix races in cifsd thread creation The cifsd demultiplex thread can run and access tcp_ses before the parent thread has finished populating tcp_ses, which the worker thread accesses locklessly. Also, the kthread_run macro may start the thread before returning the thread pointer. Because the pointer is part of the structure that the thread can access, if the kernel is preempted after the thread is spawned, but before the thread pointer is populated and the thread attempts to exit, it will sleep, waiting for a SIGKILL signal. Fix this by moving creation of the thread to after all of tcp_ses'es fields are populated, and spawning the thread last, using a split kthread_create/wake_up_process logic.
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
aaf737adb6937339494d5a7111f0433cd9676db8 to < 2376fb3348b4fa72a5158c8a63ff2489e1956541affectedaaf737adb6937339494d5a7111f0433cd9676db8 to < cfa09f63e75cf440c9be97d1e73d509bfbb2c2c5affectedaaf737adb6937339494d5a7111f0433cd9676db8 to < ee8f811cbac56ffb738b3a73671a9e75b0f56e99affectedaaf737adb6937339494d5a7111f0433cd9676db8 to < 0eee1e6cddd1d9ce14da06e0238ca8d3362dec90affectedaaf737adb6937339494d5a7111f0433cd9676db8 to < e8a5cf2ff5a13fefb228f2069e29dd7d8e37185daffected
Linux Linux
Default version status: affected
2.6.22affected0 to < 2.6.22unaffected6.1.191 to ≤ 6.1.*unaffected6.6.158 to ≤ 6.6.*unaffected6.12.111 to ≤ 6.12.*unaffected6.18.53 to ≤ 6.18.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/2376fb3348b4fa72a5158c8a63ff2489e1956541 ↗
- https://git.kernel.org/stable/c/cfa09f63e75cf440c9be97d1e73d509bfbb2c2c5 ↗
- https://git.kernel.org/stable/c/ee8f811cbac56ffb738b3a73671a9e75b0f56e99 ↗
- https://git.kernel.org/stable/c/0eee1e6cddd1d9ce14da06e0238ca8d3362dec90 ↗
- https://git.kernel.org/stable/c/e8a5cf2ff5a13fefb228f2069e29dd7d8e37185d ↗