CVE-2024-56532 ALSA: us122l: Use snd_card_free_when_closed() at disconnection
A local attacker can cause a system soft lockup and denial of service by triggering a USB disconnect on the us122l audio driver.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-56532?
CVE-2024-56532 is a medium-severity denial of service vulnerability in Linux kernel, published on 27 Dec 2024. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
ALSA: us122l: Use snd_card_free_when_closed() at disconnection
The USB disconnect callback is supposed to be short and not too-long waiting. OTOH, the current code uses snd_card_free() at disconnection, but this waits for the close of all used fds, hence it can take long. It eventually blocks the upper layer USB ioctls, which may trigger a soft lockup.
An easy workaround is to replace snd_card_free() with snd_card_free_when_closed(). This variant returns immediately while the release of resources is done asynchronously by the card device release at the last close.
The loop of us122l->mmap_count check is dropped as well. The check is useless for the asynchronous operation with *_when_closed().
Weakness: CWE-667
Which versions are affected by CVE-2024-56532?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2024-56532?
Apply the vendor's patch.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2024-56532 being exploited?
There is no known exploitation of CVE-2024-56532 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as BELL-CVE-2024-56532, DEBIAN-CVE-2024-56532, GHSA-625q-77gv-32cr, UBUNTU-CVE-2024-56532.