Команда исследователей в области кибербезопасности раскрыла подробности опасной уязвимости, затрагивающей миллиарды устройств по всему миру: серверы, рабочие станции, ноутбуки, десктопы, а также IoT-системы, на которых запущены практически любые дистрибутивы Linux и версии Windows.
Эксперты дали уязвимости имя «BootHole», отслеживается она под идентификатором CVE-2020-10713. Неприятный нюанс этой бреши — она находится в загрузчике (bootloader) GRUB2.
Другими словами, если злоумышленник успешно задействует BootHole в атаке, он сможет обойти функцию безопасной загрузки (Secure Boot) и получить высокие права в атакованной системе.
Напомним, что безопасная загрузка является защитным слоем интерфейса Unified Extensible Firmware Interface (UEFI), который использует bootloader для загрузки критических компонентов и параллельно контролирует выполнение исключительно подписанного кода.
BootHole выявили специалисты компании Eclypsium, на деле уязвимость представляет собой банальное переполнение буфера, затрагивающее все версии GRUB2. Брешь возникла из-за способа парсинга содержимого файла конфигурации, который, как правило, не подписан.
Сам файл grub.cfg располагается в системном разделе EFI. GRUB2 на сегодняшний день является стандартным загрузчиком для большинства Linux-систем, однако он поддерживает и другие ОС, ядра и гипервизоры вроде XEN.
«Переполнение буфера позволяет атакующему выполнить произвольный код внутри среды UEFI. С помощью такой атаки злоумышленник может запустить вредоносную программу, пропатчить напрямую ядро ОС или совершить любые другие злонамеренные действия», — объясняют (PDF) специалисты.
Например, атакуя системы Windows, преступник сможет задействовать BootHole для замены загрузчика по умолчанию и установки руткита. К сожалению, даже установка патчей GRUB2 не решит проблему до конца, поскольку атакующий всё ещё сможет заменить загрузчик на уязвимую версию.