CVE-2024-53150

ALSA: usb-audio: Fix out of bounds reads when finding clock sources

HIGH
7.1
CVSS Score
Published: December 24, 2024 at 11:28 AM UTC
Updated: June 17, 2026 at 08:08 AM UTC
2 products affected across 2 vendorsLinux KernelDebian Linux

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.1
Exploitation
CISA KEV
Exploit prediction
EPSS 1%
SSVC
Active

Actively Exploited

CISA Known Exploited Vulnerabilities (KEV) Catalog

EPSS Score1.4%

EPSS (Exploit Prediction Scoring System) estimates a 1.4% chance this CVE is exploited in the wild within the next 30 days — higher than 72% of all CVEs. It complements CVSS: a high EPSS on a mid-severity CVE can still be urgent.

Linux Kernel contains an out-of-bounds read vulnerability in the USB-audio driver that allows a local, privileged attacker to obtain potentially sensitive information.

Required Action
Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
Ransomware Use
Unknown
Added to KEV
Apr 9, 2025
Remediation Due
Apr 30, 2025
550 days overdue

Description

In the Linux kernel, the following vulnerability has been resolved: ALSA: usb-audio: Fix out of bounds reads when finding clock sources The current USB-audio driver code doesn't check bLength of each descriptor at traversing for clock descriptors. That is, when a device provides a bogus descriptor with a shorter bLength, the driver might hit out-of-bounds reads. For addressing it, this patch adds sanity checks to the validator functions for the clock descriptor traversal. When the descriptor length is shorter than expected, it's skipped in the loop. For the clock source and clock multiplier descriptors, we can just check bLength against the sizeof() of each descriptor type. OTOH, the clock selector descriptor of UAC2 and UAC3 has an array of bNrInPins elements and two more fields at its tail, hence those have to be checked in addition to the sizeof() check.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v ≥ 4.19.84v ≥ 5.3.11v < 5.4.2874.19.84 ≤ v < 4.205.11 ≤ v < 5.15.1745.16 ≤ v < 6.1.1205.3.11 ≤ v < 5.45.4 ≤ v < 5.10.2315.4 ≤ v < 5.15.1745.4 ≤ v < 5.4.2875.4 ≤ v < 6.1.1205.4 ≤ v < 6.11.115.4 ≤ v < 6.12.25.4 ≤ v < 6.135.4 ≤ v < 6.6.645.5 ≤ v < 5.10.2316.12 ≤ v < 6.12.26.2 ≤ v < 6.6.646.7 ≤ v < 6.11.113b17a13b687ae99939dc94a4ae01fbc34f68decc4.19.845.3.115.49feeaa50e5b4b0b71259d918a36ecf9059e60796b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a
Vendor states this is fixed in 096bb5b43edf755bc4477e64004fa3a20539ec2f (fixed)
Vendor states this is fixed in 45a92cbc88e4013bfed7fd2ccab3ade45f8e896b (fixed)
Vendor states this is fixed in 74cb86e1006c5437b1d90084d22018da30fddc77 (fixed)
Vendor states this is fixed in a3dd4d63eeb452cfb064a13862fb376ab108f6a6 (fixed)
Vendor states this is fixed in a632bdcb359fd8145e86486ff8612da98e239acd (fixed)
Vendor states this is fixed in ab011f7439d9bbfd34fd3b9cef4b2d6d952c9bb9 (fixed)
Vendor states this is fixed in da13ade87a12dd58829278bc816a61bea06a56a9 (fixed)
Vendor states this is fixed in ea0fa76f61cf8e932d1d26e6193513230816e11d (fixed)
Affected range stops below 4.20, so it looks safe — our inference, not a vendor statement
Vendor states this is fixed in 5.10.231 (unaffected)
Vendor states this is fixed in 5.15.174 (unaffected)
Vendor states this is fixed in 5.4 (unaffected)
Vendor states this is fixed in 5.4.287 (unaffected)
Vendor states this is fixed in 6.1.120 (unaffected)
Vendor states this is fixed in 6.11.11 (unaffected)
Vendor states this is fixed in 6.12.2 (unaffected)
Vendor states this is fixed in 6.13 (unaffected)
Vendor states this is fixed in 6.6.64 (unaffected)

References (11)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/096bb5b43edf755bc4477e64004fa3a20539ec2f
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/45a92cbc88e4013bfed7fd2ccab3ade45f8e896b
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/74cb86e1006c5437b1d90084d22018da30fddc77
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/a3dd4d63eeb452cfb064a13862fb376ab108f6a6
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/a632bdcb359fd8145e86486ff8612da98e239acd
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/ab011f7439d9bbfd34fd3b9cef4b2d6d952c9bb9
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/da13ade87a12dd58829278bc816a61bea06a56a9
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/ea0fa76f61cf8e932d1d26e6193513230816e11d

SSVC — Action Prioritization

SSVCActiveNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

7.1HIGHCISA-ADP
Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-125

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card