[PATCH] ALSA: control: Fix an out-of-bounds bug in get_ctl_id_hash()

Takashi Iwai tiwai at suse.de
Wed Aug 24 11:42:25 CEST 2022


On Wed, 24 Aug 2022 10:16:54 +0200,
Zheyu Ma wrote:
> 
> Since the user can control the arguments provided to the kernel by the
> ioctl() system call, an out-of-bounds bug occurs when the 'id->name'
> provided by the user does not end with '\0'.
> 
> The following log can reveal it:
> 
> [    10.002313] BUG: KASAN: stack-out-of-bounds in snd_ctl_find_id+0x36c/0x3a0
> [    10.002895] Read of size 1 at addr ffff888109f5fe28 by task snd/439
> [    10.004934] Call Trace:
> [    10.007140]  snd_ctl_find_id+0x36c/0x3a0
> [    10.007489]  snd_ctl_ioctl+0x6cf/0x10e0
> 
> Fix this by checking the bound of 'id->name' in the loop.
> 
> Fixes: c27e1efb61c5 ("ALSA: control: Use xarray for faster lookups")
> Signed-off-by: Zheyu Ma <zheyuma97 at gmail.com>

Thanks, applied now.


Takashi


More information about the Alsa-devel mailing list