BDU:2019-02311
Сообщество свободного программного обеспечения, ООО «РусБИТех-Астра» Linux, Astra Linux Special Edition
2018-12-03
Уязвимость реализации обработчика udc_pci_probe загружаемого модуля drivers/usb/gadget/udc/amd5536udc.ko ядра операционной системы Linux связана с повторным освобождением памяти. Эксплуатация уязвимости может позволить нарушителю вызвать отказ в обслуживании операционной системы путем подключения устройства AMD5536 UDC, которое представляется как USB устройство, при этом содержит версию chiprev равную UDC_HSA0_REV. В результате в обработчике udc_pci_probe, вызывается функция udc_probe, которая возвращает ошибку "chip revision is A0; too old" при chiprev= UDC_HSA0_REV. Функция udc_pci_probe при ошибке udc_probe выполняет udc_pci_remove, но возвращает успешный код возврата. Поэтому при отключении устройства udc_pci_remove вызывается во второй раз, в результате чего происходит повторное освобождение памяти
Технический анализ и план устранения
🇷🇺 Рекомендация ФСТЭК
Использование рекомендаций: https://wiki.astralinux.ru/pages/viewpage.action?pageId=1212483 (бюллетень № 20190605SE15)