CVE-2023-52736

ALSA: hda: Do not unset preset when cleaning up codec

published May 21, 2024

CVSS
—
EPSS
0%
Percentile
14.2
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

ALSA: hda: Do not unset preset when cleaning up codec

Several functions that take part in codec's initialization and removal

are re-used by ASoC codec drivers implementations. Drivers mimic the

behavior of hda_codec_driver_probe/remove() found in

sound/pci/hda/hda_bind.c with their component->probe/remove() instead.

One of the reasons for that is the expectation of

snd_hda_codec_device_new() to receive a valid pointer to an instance of

struct snd_card. This expectation can be met only once sound card

components probing commences.

As ASoC sound card may be unbound without codec device being actually

removed from the system, unsetting ->preset in

snd_hda_codec_cleanup_for_unbind() interferes with module unload -> load

scenario causing null-ptr-deref. Preset is assigned only once, during

device/driver matching whereas ASoC codec driver's module reloading may

occur several times throughout the lifetime of an audio stack.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00240 · 14.2th percentile
Published
2024-05-21T15:23Z
EPSS history
Timeline
  • 21 MAY 15:23Z
    ALSA: hda: Do not unset preset when cleaning up codec
    cvelistv5