В ядре Linux устранена следующая уязвимость:
ASoC: fsl: fsl_audmix: проверка записанных значений перечисления.
fsl_audmix_put_mix_clk_src() и fsl_audmix_put_out_src()
преобразовать предоставленный пользователем элемент перечисления с помощью snd_soc_enum_item_to_val()
перед проверкой, входит ли элемент в число элементов перечисления.
Общий помощник snd_soc_put_enum_double() выполняет это
валидацию, но эти обратные вызовы сначала используют преобразованное значение:
Путь источника синхронизации проверяет его с помощью BIT(), а путь источника вывода
индексирует с ним таблицу переходов prms.
Отклонять элементы перечисления, выходящие за пределы диапазона, перед их преобразованием.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: ASoC: fsl: fsl_audmix: Validate written enum values fsl_audmix_put_mix_clk_src() and fsl_audmix_put_out_src() convert the user-provided enum item with snd_soc_enum_item_to_val() before checking whether the item is within the enum's item count. The generic snd_soc_put_enum_double() helper performs that validation, but these callbacks use the converted value first: the clock-source path tests it with BIT(), and the output-source path indexes the prms transition table with it. Reject out-of-range enum items before converting them.
Характеристики атаки
Последствия
Строка CVSS v3.1