CVE-2026-46048 json
ALSA: caiaq: fix usb_dev refcount leak on probe failure
published 2026-05-27 5 mo ago modified 2026-06-17 4 mo ago also EUVD-2026-32430
- cvss
- 5.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.1%
- EPSS 0.1% chance of exploitation in 30 days, percentile 2%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
ALSA: caiaq: fix usb_dev refcount leak on probe failure
create_card() takes a reference on the USB device with usb_get_dev() and stores the matching usb_put_dev() in card_free(), which is installed as the snd_card's ->private_free destructor.
However, ->private_free is only assigned near the end of init_card(), after several failure points (usb_set_interface(), EP type checks, usb_submit_urb(), the EP1_CMD_GET_DEVICE_INFO exchange, and its timeout). When any of those fail, init_card() returns an error to snd_probe(), which calls snd_card_free(card). Because ->private_free is still NULL, card_free() never runs, the usb_get_dev() reference is not dropped, and the struct usb_device leaks along with its descriptor allocations and device_private.
syzbot reproduces this with a malformed UAC3 device whose only valid altsetting is 0; init_card()'s usb_set_interface(usb_dev, 0, 1) call fails with -EIO and triggers the leak.
Move the ->private_free assignment into create_card(), immediately after usb_get_dev(), so that every error path reaching snd_card_free() balances the reference. card_free()'s callees (snd_usb_caiaq_input_free, free_urbs, kfree) already tolerate the partially-initialized state because the chip private area is zero-initialized by snd_card_new().
Patch / fix
- Linux Linux 6.6.140, 6.12.86, 6.18.27, 7.0.4
- linux Debian 13 6.12.86-1
- linux Debian 14 7.0.4-1
debian advisories DEBIAN-CVE-2026-46048
- linux-oem-7.0 Ubuntu 26.04 LTS 7.0.0-1008.8
ubuntu advisories UBUNTU-CVE-2026-46048
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-source Linux Micro 6.1, Linux Micro 6.0 6.4.0-51.1
- kernel-default Linux Micro 6.1, Linux Micro 6.0 6.4.0-51.1
- kernel-kvmsmall Linux Micro 6.1, Linux Micro 6.0 6.4.0-51.1
- kernel-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-51.1
- kernel-source-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-51.1
- kernel-default SLES 16.0, SLE High Availability Extension 16.0, Linux Micro 6.2 +1 more 6.12.0-160000.37.1
- kernel-rt Linux Micro 6.2 6.12.0-160000.37.1
- kernel-64kb SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.37.1
suse advisories SUSE-SU-2026:23244-1SUSE-SU-2026:23241-1SUSE-SU-2026:23194-1SUSE-SU-2026:23193-1SUSE-SU-2026:23237-1SUSE-SU-2026:23068-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.37.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.37.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.37.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.37.1
- kernel-azure openSUSE Leap 16.0 6.12.0-160000.37.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.37.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.37.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.37.1
opensuse advisories openSUSE-SU-2026:21555-1openSUSE-SU-2026:10954-1
- git.kernel.org/stable/c/c874db8a1d2f9f08161470d00cfe8db2f5cca2cc commit
- git.kernel.org/stable/c/6fa8dff64fb6c401ced40a05797b327659317498 commit
- git.kernel.org/stable/c/a8d907acc3e5a078c2e5637ff60c30c6d2ddc23a commit
- git.kernel.org/stable/c/50c6a1f05973f56d23280c9d7645a7a5734e0907 commit
- git.kernel.org/stable/c/da3b8fd6a202d94fef11a443abc9171c52426a1c commit
- git.kernel.org/stable/c/6153878c5255bb69b7d0868105ca078ef13cbcf8 commit
- git.kernel.org/stable/c/21ca595aafa40d3ac70eab1f4cb62cc00ca21657 commit
- git.kernel.org/stable/c/7a5f1cd22d47f8ca4b760b6334378ae42c1bd24b commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-46048 updated cvss 5.5
kernel: ALSA: caiaq: fix usb_dev refcount leak on probe failure
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 moreaffected: no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 more Red Hat Enterprise Linux 10 kernelnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
0.12% chance of exploitation in the next 30 days, higher than 2% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Affected products
- Linux Linux
Classification
- Technology feeds
References
-
git.kernel.org
/stable/c/c874db8a1d2f9f08161470d00cfe8db2f5cca2cc
patch
-
git.kernel.org
/stable/c/6fa8dff64fb6c401ced40a05797b327659317498
patch
-
git.kernel.org
/stable/c/a8d907acc3e5a078c2e5637ff60c30c6d2ddc23a
patch
-
git.kernel.org
/stable/c/50c6a1f05973f56d23280c9d7645a7a5734e0907
patch
-
git.kernel.org
/stable/c/da3b8fd6a202d94fef11a443abc9171c52426a1c
patch
-
git.kernel.org
/stable/c/6153878c5255bb69b7d0868105ca078ef13cbcf8
patch
-
git.kernel.org
/stable/c/21ca595aafa40d3ac70eab1f4cb62cc00ca21657
patch
-
git.kernel.org
/stable/c/7a5f1cd22d47f8ca4b760b6334378ae42c1bd24b
patch
Sources
- CVE List CVE-2026-46048
- NVD CVE-2026-46048
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.