← CVE Intelligence

CVE-2025-40275

ALSA: usb-audio: Fix NULL pointer dereference in snd_usb_mixer_controls_badd PUBLISHED

Description (CNA)

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.

Affected (CNA)

Vendor / productVersions
Linux / Linuxaffected 17156f23e93c0f59e06dd2aaffd06221341caaee before 23aea9c74aeea2625aaf4fbcc6beb9d09e30f9e4; affected 17156f23e93c0f59e06dd2aaffd06221341caaee before c5c08965ab96b16361e69a1e2a0e89dbcb99b5a6; affected 17156f23e93c0f59e06dd2aaffd06221341caaee before 9f282104627be5fbded3102ff9004f753c55a063; affected 17156f23e93c0f59e06dd2aaffd06221341caaee before 2762d3ea9c929ca4094541ca517c317ffa94625b; affected 17156f23e93c0f59e06dd2aaffd06221341caaee before 57f607c112966c21240c424b33e2cb71e121dcf0; affected 17156f23e93c0f59e06dd2aaffd06221341caaee before cbdbfc756f2990942138ed0138da9303b4dbf9ff; affected 17156f23e93c0f59e06dd2aaffd06221341caaee before 85568535893600024d7d8794f4f8b6428b521e0c; affected 17156f23e93c0f59e06dd2aaffd06221341caaee before 632108ec072ad64c8c83db6e16a7efee29ebfb74
Linux / Linuxaffected 4.18; unaffected 0 before 4.18; unaffected 5.4.302 through 5.4.*; unaffected 5.10.247 through 5.10.*; unaffected 5.15.197 through 5.15.*; unaffected 6.1.159 through 6.1.*; unaffected 6.6.117 through 6.6.*; unaffected 6.12.59 through 6.12.*; unaffected 6.17.9 through 6.17.*; unaffected 6.18 through *

CWE

No CWE identifiers supplied.

References