Overview
About vulnerability
In the Linux kernel, the following vulnerability has been resolved:
ALSA: usb-audio: Fix NULL pointer dereference in snd_usb_mixer_controls_badd
In snd_usb_create_streams(), for UAC version 3 devices, the Interface Association Descriptor (IAD) is retrieved via usb_ifnum_to_if(). If this call fails, a fallback routine attempts to obtain the IAD from the next interface and sets a BADD profile. However, snd_usb_mixer_controls_badd() assumes that the IAD retrieved from usb_ifnum_to_if() is always valid, without performing a NULL check. This can lead to a NULL pointer dereference when usb_ifnum_to_if() fails to find the interface descriptor.
This patch adds a NULL pointer check after calling usb_ifnum_to_if() in snd_usb_mixer_controls_badd() to prevent the dereference.
This issue was discovered by syzkaller, which triggered the bug by sending a crafted USB device descriptor.
Details
- Affected product:
- Oracle Linux 7 ELS , Ubuntu 20.04 ELS
- Affected packages:
- kernel-uek @ 5.4.17 (+2 more)
Fixes
KernelCare state
Live-patch status from KernelCare for each operating system.
| Operating system | Status | Covered kernels |
|---|---|---|
| Debian 11 | Released |
36 kernels
|
| Debian 11 cloud | Released |
16 kernels
|
| Debian 12 | Released |
32 kernels
|
| Debian 13 | Will Not Fix | — |
| Oracle Linux 7 UEK 6 | Released |
112 kernels
|
| Oracle Linux 8 UEK 6 | Released |
143 kernels
|
| Oracle Linux 8 UEK 7 | Released |
83 kernels
|
| Oracle Linux 9 UEK 7 | Released |
83 kernels
|
| Proxmox VE 7 5.15 | Released |
47 kernels
|
| Ubuntu 20.04 HWE AWS | Released |
57 kernels
|
| Ubuntu 20.04 HWE Azure | Released |
40 kernels
|
| Ubuntu 22.04 | Released |
90 kernels
|
| Ubuntu 22.04 AWS | Released |
81 kernels
|
| Ubuntu 22.04 Azure | Released |
73 kernels
|
| Ubuntu 24.04 | Released |
39 kernels
|
| Ubuntu 24.04 AWS | Planned | — |