Разделы

Системное ПО Техника

Пытаясь починить «дыру» в Windows, Microsoft запретила загружать Linux на ПК

Корпорация Microsoft выпустила патч, который должен был защитить ПК, на которых одновременно установлены Windows и Linux, от опасной уязвимости. На деле же многие пользователи таких машин столкнулись с невозможностью загрузиться в Linux после инсталляции обновления.

Microsoft подкинула проблем пользователям dualboot-конфигураций

Пользователи персональных компьютеров, на которых Windows с другими операционными системами, не могут загрузиться в Linux после установки недавнего патча, выпущенного корпорацией Microsoft, пишет The Register.

Проблема наблюдается с 13 августа 2024 г., после выхода обновления безопасности, призванного закрыть уязвимость CVE-2022-2601 в GRUB 2, популярном загрузчике, который применяется во множестве дистрибутивов Linux и способен обеспечивать двойную загрузку операционных систем – например, GNU/Linux в паре с Windows 11. Исправление, выпущенное Microsoft, обеспечивает установку новой политики механизма SBAT (UEFI Secure Boot Advanced Targeting), служащего для отзыва недоверенных EFI-программ.

Сложности с загрузкой Linux после патча от Microsoft испытывают пользователи самых разных дистрибутивов, в том числе таких популярных как Ubuntu, Mint, Zorin OS, Puppy Linux. Проблеме посвящено множество тредов на различных дискуссионных площадках, в том числе на Reddit и профильных форумах вендоров дистрибутивов Linux.

Не должно было поломаться, но поломалось

«Последние сборки Windows больше не являются уязвимыми к обходу этой функции безопасности при использовании загрузчика Linux GRUB2», – говорится в перечне рекомендаций по безопасности, опубликованном Microsoft 13 августа. В документе также сообщается о том, что обновление не затронет системы с двойной загрузкой Linux/Windows и не должно сказаться на их работе.

Обновление Windows в очепредной неприятно удивило пользователей

Однако некоторые пользователи утверждают, что патч все-таки сказался на работе применяемых ими ПК в конфигурации с двумя установленными ОС – сделав загрузку Linux невозможной.

Microsoft известно о проблеме с загрузкой Linux. В разговоре с изданием The Register представитель корпорации заявил, что «Гигант из Редмонда» работает с партнерами – вендорами Linux-дистрибутивов над ее решением.

«Это обновление не будет применено, если в ходе его установки будет обнаружена конфигурация с вариантом загрузки Linux, – сказал представитель Microsoft. – Нам известно, что у некоторых клиентов наблюдаются проблемы в отдельных сценариях двойной загрузки, в том числе при использовании устаревших версий загрузчиков Linux с уязвимым кодом. Мы работаем с нашими Linux-партнерами над поиском решения».

Как быть тем, кто столкнулся с проблемой

Пока Microsoft занята поиском выхода из сложившейся ситуации, пользователи dualboot-конфигураций самостоятельно выработали перечень мер, позволяющих восстановить работу системы.

Один из опробованных пользователями способов предусматривает отключение в настройках BIOS безопасной загрузки (Secure Boot), загрузку одной из последних версий какого-либо современного дистрибутива Linux (например, с флеш-накопителя) и отключение «проблемной» политики SBAT. К примеру, популярном дистрибутиве Ubuntu это делается при помощи команды “mokutil -set-sbat-policy delete”.

Затем рекомендуется перезагрузить Linux для применения правильной политики, после чего можно опять включить безопасную загрузку (Secure Boot) в настройках BIOS, в результате чего установленные на ПК операционные систему вновь обретут работоспособность.

Уязвимость в GRUB 2

Уязвимость CVE-2022-2601 в GRUB 2 была обнаружена еще в ноябре 2022 г. Она может быть использована для обхода механизма безопасной загрузки UEFI Secure Boot за счет эксплуатации события переполнения буфера и внедрения вредоносного ПО на целевую машину.

Ошибка переполнения буфера возникает в функции grub_font_construct_glyph() при обработке специально подготовленных злоумышленником шрифтов в формате PF2 (создаются утилитой grub2-mkfont из обычных TrueType-шрифтов, распространяемых посредством файлов с расширением TTF) вследствие некорректного расчета параметра max_glyph_size и последующего выделения недостаточного объема памяти под хранение глифа. Вследствие ошибки становится возможной запись данных за пределы отведенного участка памяти (кучи).

Бреши в GRUB 2 выявляли и ранее. Так, в 2020 г. в программе была обнаружена уязвимость BootHole (CVE-2020-10713), эксплуатация которой позволяла злоумышленнику может установить в систему буткит - вредонос, загружаемый ещё до операционной системы, так чтобы он функционировал с максимальными привилегиями, а обнаружение и удаление его стало серьезной проблемой. Уязвимость была обусловлена некорректной обработкой внешнего файла настроек grub.cfg; это могло приводить к переполнению буфера и, как следствие, возможности запуска произвольного кода в среде выполнения UEFI.

Что такое GRUB 2

GRUB 2 – это переписанный «с нуля» загрузчик операционных систем GRUB, в том числе позволяющий использовать сразу несколько ОС на одном компьютере и переключаться между ними при включении или перезагрузке машины.

Константин Липаткин, inSales: Уровень зрелости подходов к информационной безопасности в ИТ-сфере в России крайне неоднороден
бизнес

Среди поддерживаемых загрузчиком ОС: Linux, FreeBSD, Solaris. GRUB 2 способен передавать управление другому загрузчику, что делает возможным с его помощью запуск Windows, актуальные версии которой используют собственный загрузчик BOOTMGR. Сегодня GRUB 2 является загрузчиком по умолчанию в подавляющем большинстве дистрибутивов Linux.

GRUB 2 поддерживает темы оформления, позволяющие изменять внешний вид элементов пользовательского интерфейса загрузчика, к примеру, загрузочного меню. Допускается применение пользовательских шрифтов, изображений и цветовых схем.

Разработка GRUB ведется в рамках проекта GNU (The GNU Project), основанного евангелистом свободного ПО Ричардом Столлманом (Richard Stallman). Исходный код программы распространяется на условиях свободной лицензии GPLv3.

Дмитрий Степанов



IT Elements 2025 IT Elements 2025

erid:

Рекламодатель:

ИНН/ОГРН: