---
id: CVE-2025-40275
title: |-
  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 Descript…
summary: |-
  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 Descript…
severity: none
published: '2025-12-06'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T19:10:00.173'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-40275'
references:
  - url: 'https://git.kernel.org/stable/c/23aea9c74aeea2625aaf4fbcc6beb9d09e30f9e4'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/2762d3ea9c929ca4094541ca517c317ffa94625b'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/57f607c112966c21240c424b33e2cb71e121dcf0'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/632108ec072ad64c8c83db6e16a7efee29ebfb74'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/85568535893600024d7d8794f4f8b6428b521e0c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/9f282104627be5fbded3102ff9004f753c55a063'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/c5c08965ab96b16361e69a1e2a0e89dbcb99b5a6'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/cbdbfc756f2990942138ed0138da9303b4dbf9ff'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
epss: 0.00195
epssPercentile: 0.08603
ingestedAt: '2026-10-15T19:25:46.332Z'
---

## Overview

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
