Прошлый вторник стал днем разочарования для сообщества пользователей Linux, когда их устройства перестали загружаться, сталкиваясь с загадочным сообщением об ошибке: «Что-то пошло серьезно не так». Этот сбой был вызван обновлением Microsoft, выпущенным в рамках ежемесячного цикла патчей, направленным на устранение значительной двухлетней уязвимости в GRUB, загрузчике с открытым исходным кодом, который используется на многих системах Linux. Уязвимость, обозначенная как CVE-2022-2601, имела рейтинг серьезности 8,6 из 10 и позволяла потенциальным злоумышленникам обходить Secure Boot — критическую защиту, предназначенную для предотвращения загрузки вредоносного ПО или прошивки во время процесса загрузки. Хотя недостаток был выявлен еще в 2022 году, Microsoft выпустила патч только в прошлый вторник, оставив многих пользователей в затруднительном положении.
Множество дистрибутивов, как новых, так и старых, пострадали
Последствия этого обновления были особенно заметны для систем с двойной загрузкой, настроенных для работы как с Windows, так и с Linux. Пользователи, пытавшиеся загрузить Linux, столкнулись с сообщением о «Нарушении политики безопасности». Почти сразу же форумы поддержки заполнились отчетами об этой проблеме. Один из разочарованных пользователей отметил: «Windows утверждает, что это обновление не будет применяться к системам с двойной загрузкой Windows и Linux. Очевидно, это не так». Путаница, по-видимому, возникла из-за различий в конфигурациях систем и конкретных используемых дистрибутивах Linux. Сообщалось, что несколько популярных дистрибутивов, включая Debian, Ubuntu, Linux Mint, Zorin OS и Puppy Linux, были затронуты.
Несмотря на растущее недовольство, Microsoft пока не признала ошибку публично и не предоставила ясности относительно того, как она прошла тестирование. В своем бюллетене по поводу CVE-2022-2601 компания заявила, что обновление установит Secure Boot Attestation Token (SBAT) только на устройствах, работающих исключительно под управлением Windows, заверяя пользователей, что системы с двойной загрузкой останутся незатронутыми. Однако реальность оказалась иной: многие системы с недавно выпущенными версиями Linux, такими как Ubuntu 24.04 и Debian 12.6.0, оказались в этой ловушке.
Что теперь?
С учетом того, что Microsoft сохраняет заметное молчание, пострадавшие пользователи вынуждены искать собственные решения. Одним из немедленных решений является доступ к панели EFI для отключения Secure Boot, хотя это может быть не вариантом для всех из-за различных требований безопасности. Более предпочтительным краткосрочным решением является удаление политики SBAT, введенной в последнем обновлении. Этот подход позволяет пользователям сохранить некоторые преимущества Secure Boot, оставаясь при этом уязвимыми для атак, использующих CVE-2022-2601. Шаги для реализации этого решения следующие:
- Отключите Secure Boot.
- Войдите в свою учетную запись Ubuntu и откройте терминал.
- Выполните следующую команду для удаления политики SBAT: sudo mokutil --set-sbat-policy delete.
- Перезагрузите ПК и войдите в Ubuntu для обновления политики SBAT.
- Снова перезагрузите ПК и включите Secure Boot в BIOS.
Этот инцидент подчеркивает продолжающиеся сложности вокруг Secure Boot — механизма, который подвергался критике за последние 18 месяцев из-за множества уязвимостей, подрывающих его эффективность. Особенно примечательным случаем были тестовые ключи для аутентификации, которые были явно помечены как «НЕ ДОВЕРЯТЬ». Как отметил Уилл Дорманн, старший аналитик уязвимостей в компании Analygence: «Хотя Secure Boot действительно повышает безопасность процессов загрузки Windows, он все чаще омрачается недостатками, которые компрометируют его изначальную цель». Сложности Secure Boot выходят за рамки Microsoft: уязвимости в любом компоненте могут потенциально повлиять на системы Windows, полагающиеся на эту функцию безопасности. Следовательно, Microsoft несет ответственность за устранение и смягчение этих уязвимостей для обеспечения более безопасной вычислительной среды.