Executive brief
The Advanced Linux Sound Architecture (ALSA) library, a standard component for sound support in Linux systems, contains a memory management flaw. An attacker can exploit this by providing a specially crafted configuration file (such as a user-level .asoundrc file), which causes applications using the library to crash or potentially allow for further system compromise. This impact is particularly relevant for systems where users can influence audio configuration settings.
Technical details
A double-free vulnerability exists in the `parse_def()` function within `src/conf.c` of alsa-lib. The root cause is a failure to check the return values of recursive calls to `parse_defs()` or `parse_array_defs()` when processing nested compound or array configuration blocks. If a nested call fails and deletes a configuration node, `parse_def()` incorrectly proceeds to call `snd_config_delete()` on the same node during its own error handling path. This results in a double-free, manifesting as either a NULL-pointer write in `list_del()` or an invalid memory read. The vulnerability is reachable via public APIs such as `snd_config_load_string()` and is fixed in version 1.2.16.1.
Affected products
- alsa-project alsa-lib < 1.2.16.1
Timeline
- 2026-06-08: disclosed: Vulnerability reported to ALSA maintainers by Luigino Camastra
- 2026-06-14: patched: Version 1.2.16.1 released with fix
- 2026-06-22: advisory: CVE-2026-56109 published
References
- https://github.com/alsa-project/alsa-lib/commit/536dd6f8affdf5197c12a63a71c92a70b2833cc0
- https://github.com/alsa-project/alsa-lib/releases/tag/v1.2.16.1
- https://lore.kernel.org/alsa-devel/CAGt8pqBU0p2voB+qHxWGcNJrKHAcBhAyHUUBPLBN-Yj_SiV6MQ@mail.gmail.com/
- https://www.vulncheck.com/advisories/alsa-library-double-free-via-parse-def-in-conf-c