В ядре Linux устранена следующая уязвимость:
crypto: qat — удалить неиспользуемое символьное устройство и IOCTL
Драйвер QAT предоставляет символьное устройство (qat_adf_ctl) с IOCTL.
для конфигурации устройства, запуска, остановки, запроса состояния и перечисления. Эти IOCTL не являются частью какого-либо общедоступного заголовка uAPI и не имеют известных сведений.
пользователи внутри дерева или вне дерева. Жизненный цикл устройства уже управляется через
sysfs.
Интерфейс ioctl также увеличивает поверхность атаки и является
предмет ряда отчетов об ошибках. Удалите символьное устройство, определения IOCTL и связанные с ними
структуры данных (adf_dev_status_info, adf_user_cfg_key_val,
adf_user_cfg_section, adf_user_cfg_ctl_data). Отбросьте неиспользуемый сейчас
заголовок adf_cfg_user.h и урезаем adf_ctl_drv.c до минимума
Перехваты module_init/module_exit для рабочей очереди, AER и шифрования/сжатия
регистрация алгоритма.
Очистите оставшийся мертвый код, доступный только из удаленного кода. Пути IOCTL: adf_cfg_del_all(), adf_devmgr_verify_id(),
adf_devmgr_get_num_dev(), adf_devmgr_get_dev_by_id(),
adf_get_vf_real_id() и неиспользуемые макросы ADF_CFG. Кроме того, удалите запись, связанную с QAT IOCTL, в
ioctl-number.rst.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: crypto: qat - remove unused character device and IOCTLs The QAT driver exposes a character device (qat_adf_ctl) with IOCTLs for device configuration, start, stop, status query and enumeration. These IOCTLs are not part of any public uAPI header and have no known in-tree or out-of-tree users. Device lifecycle is already managed via sysfs. The ioctl interface also increases the attack surface and is the subject of a number of bug reports. Remove the character device, the IOCTL definitions, and the related data structures (adf_dev_status_info, adf_user_cfg_key_val, adf_user_cfg_section, adf_user_cfg_ctl_data). Drop the now-unused adf_cfg_user.h header and strip adf_ctl_drv.c down to the minimal module_init/module_exit hooks for workqueue, AER, and crypto/compression algorithm registration. Clean up leftover dead code that was only reachable from the removed IOCTL paths: adf_cfg_del_all(), adf_devmgr_verify_id(), adf_devmgr_get_num_dev(), adf_devmgr_get_dev_by_id(), adf_get_vf_real_id() and the unused ADF_CFG macros. Additionally, drop the entry associated to QAT IOCTLs in ioctl-number.rst.
Характеристики атаки
Последствия
Строка CVSS v3.1