Проблема решается только обновлением в системе списка отозванных сертификатов (dbx, UEFI Revocation List), но в этом случае будет потеряна возможность использования старых установочных носителей c Linux. Некоторые производители оборудования уже включили в свои прошивки обновлённый список отозванных сертификатов, на таких системах в режиме UEFI Secure Boot можно будет загрузить только обновлённые сборки дистрибутивов Linux.
Для устранения уязвимости в дистрибутивах также потребуется обновить инсталляторы, загрузчики, пакеты с ядром, fwupd-прошивки и shim-прослойку, сгенерировав для них новые цифровые подписи. Пользователи должны будут обновить установочные образы и иные загрузочные носители, а также загрузить список отозванных сертификатов (dbx) в прошивку UEFI. До обновления dbx в UEFI система остаётся уязвимой независимо от установки обновлений в ОС.
Уязвимость вызвана переполнением буфера, который может быть эксплуатирован для выполнения произвольного кода в процессе загрузки. Уязвимость проявляется при разборе содержимого файла конфигурации grub.cfg, который обычно размещается в разделе ESP (EFI System Partition) и может быть отредактирован атакующим, имеющим права администратора, без нарушения целостности подписанных исполняемых файлов shim и GRUB2. Из-за ошибки в коде парсера конфигурации обработчик фатальных ошибок разбора YY_FATAL_ERROR лишь выводил предупреждение, но не завершал работу программы. Опасность уязвимости снижает необходимость наличия привилегированного доступа к системе, тем не менее, проблема может оказаться востребованной для внедрения скрытых rootkit-ов при наличии физического доступа к оборудованию (при возможности загрузки со своего носителя).
В большинстве Linux-дистрибутивов для верифицированной загрузки используется небольшая прослойка shim, заверенная цифровой подписью Microsoft. Данная прослойка верифицирует GRUB2 собственным сертификатом, что позволяет разработчикам дистрибутивов не заверять каждое обновление ядра и GRUB в Microsoft. Уязвимость позволяет через изменение содержимого grub.cfg добиться выполнения своего кода на этапе после успешной верификации shim, но до загрузки операционной системы, вклинившись в цепочку доверия при активном режиме Secure Boot и получив полный контроль за дальнейшим процессом загрузки, в том числе для загрузки другой ОС, модификации компонентов операционной системы и обхода защиты Lockdown.

Другие уязвимости в GRUB2:
- CVE-2020-14308 — переполнение буфера из-за отсутствия проверки размера выделяемой области памяти в grub_malloc;
- CVE-2020-14309 — целочисленное переполнение в grub_squash_read_symlink, которое может привести к записи данных за пределами выделенного буфера;
- CVE-2020-14310 — целочисленное переполнение вread_section_from_string, которое может привести к записи данных за пределами выделенного буфера;
- CVE-2020-14311 — целочисленное переполнение в grub_ext2_read_link, которое может привести к записи данных за пределами выделенного буфера;
- CVE-2020-15705 — позволяет загружать неподписанные ядра при прямой загрузке в режиме Secure Boot без прослойки shim;
- CVE-2020-15706 — обращение к уже освобождённой области памяти (use-after-free) при переопределении функции во время выполнения;
- CVE-2020-15707 — целочисленное переполнение в обработчике размера initrd.
Обновления пакетов с исправлениями выпущены для Debian, Ubuntu, RHEL и SUSE. Для GRUB2 предложен набор патчей.
Источник: http://www.opennet.ru/opennews/art.shtml?num=53454