Executive brief
A vulnerability in the Linux kernel's audio subsystem could allow a local user to cause a system crash. The issue occurs when the system attempts to remove certain audio components that were previously ignored due to missing hardware. This results in a 'null pointer dereference,' leading to a kernel panic and a total loss of system availability.
Technical details
A NULL pointer dereference exists in the snd_soc_remove_pcm_runtime() function within the Linux kernel's ASoC core. The vulnerability is triggered when soc_tplg_remove_link() calls snd_soc_remove_pcm_runtime() with a NULL runtime (rtd) pointer, which occurs if a link was previously marked as ignored during topology loading (e.g., due to missing hardware). An attacker with local access could potentially trigger this condition during module removal, resulting in a kernel oops or panic (Denial of Service). The fix introduces a NULL check for the rtd pointer at the beginning of the affected function.
Affected products
- Linux Linux Kernel 5.6 to 5.10.241, 5.11 to 5.15.190, 5.16 to 6.1.149, 6.2 to 6.6.103, 6.7 to 6.12.43, 6.13 to 6.15.11, 6.16 to 6.16.2
Timeline
- 2025-06-19: patched: Initial patch submitted to the Linux kernel tree.
- 2025-09-04: disclosed: CVE-2025-38706 published.
References
- https://git.kernel.org/stable/c/2d91cb261cac6d885954b8f5da28b5c176c18131
- https://git.kernel.org/stable/c/2fce20decc6a83f16dd73744150c4e7ea6c97c21
- https://git.kernel.org/stable/c/41f53afe53a57a7c50323f99424b598190acf192
- https://git.kernel.org/stable/c/7ce0a7255ce97ed7c54afae83fdbce712a1f0c9e
- https://git.kernel.org/stable/c/7f8fc03712194fd4e2df28af7f7f7a38205934ef
- https://git.kernel.org/stable/c/82ba7b8cf9f6e3bf392a9f08ba3d1c0b200ccb94
- https://git.kernel.org/stable/c/8b465bedc2b417fd27c1d1ab7122882b4b60b1a0