8 лет назад
Система UEFI обещает новые прорывы и новые проблемы
UEFI приходит на смену старой системе BIOS. Она была разработана, вообще-то, более тридцати лет назад для персональных компьютеров IBM PC. Однако только сейчас все всерьез заговорили о том, что BIOS все-таки сдает свои позиции. Ее теснит система UEFI – комплекс спецификаций, который появился в качестве «загрузочной инициативы Интел».
И все потому, что ограничения, обусловленные BIOS, стали тормозить развитие вычислительных систем на основе когда-то новейших интеловских процессоров Itanium. Потом эту же инициативу стала называть EFI. Потом также появился и специально созданный под нее консорциум UEFI Forum, которому корпорация и подарила свою разработку. Главными членами консорциума стали не только Intel, но и такие зубры IT-индустрии, как AMD, Apple, IBM, Microsoft и другие.
UEFI означает Unified Extensible Firmware Interface. Это радикальное преобразование процедуры загрузки для компьютеров. Причем такое, что UEFI не имеет с системой PC BIOS ничего общего. Если BIOS – жесткий и неизменный по содержанию код прошивки специального BIOS-чипа, то система UEFI – это гибко программируемый интерфейс, расположенный поверх всех аппаратных компонентов компьютера.
Если загрузочный код BIOS всегда жестко прошит в чипе на системной плате, то коды UEFI обширные по размеру расположены в специальной директории. Это может быть какое угодно место. Например, микросхема памяти на плате.
Таким образом, система UEFI – это что-то похожее на облегченную самостоятельную операционную систему. То есть в компьютере сначала загружается система UEFI. Она берет на себя управление произвольного набора нужных действий. И лишь потом начинается загрузка операционной системы.
Спецификации UEFI имеют загрузочные, тестовые и рабочие сервисы, которые усиливают сходство с ОС. Есть также протоколы коммуникаций, драйверы устройств, функциональные расширения и собственная EFI-оболочка. Под оболочкой можно запускать собственные EFI-приложения. А поверх всего этого находится уже загрузчик, который и отвечает за запуск на компьютере основной операционной системы.
В понимании некоторых пользователей UEFI – это псевдо-ОС. Однако она сама может получать доступ ко всему аппаратному обеспечению компьютера. Значит, уже на уровне UEFI ничто не мешает выходить в Интернет, как и организовать резервное копирование жестких дисков. И все это с мышкой под рукой и в условиях полноценного графического интерфейса.
Все расширенные загрузочные данные находятся на хранении во флеш-памяти или на жестком диске. В них намного больше пространства, например, для языковой локализации системы, развитой системы диагностики на этапе загрузки, полезных утилит типа архивации, восстановления после сбоя, сканирования на вирусное заражение и для прочего, прочего.
UEFI полностью построена на основе программного кода, и потому она стала объединенной кросс-платформенной системой. Спецификации UEFI предусмотрены в работе большинства комбинаций чипов с 32- и 64-битной архитектурой, которые выпускает AMD, Intel и многочисленные лицензиаты ARM. Правда, есть одно требование, необходимое, чтобы обеспечить эту универсальность: компиляция исходного кода под требования конкретной платформы.
Система UEFI определяет несколько стандартных особенностей, которые необходимо реализовать в работающем под ней компьютере. Скажем, в числе таких возможностей, обеспечиваемых стандартно, есть «безопасная загрузка», криптография низкого уровня, сетевая аутентификация, универсальные графические драйверы и т.д.
В каждой из основных в операционных систем, то есть в Windows, OS X, Linux, есть поддержка загрузки через UEFI. Однако надо помнить, что все-таки UEFI еще молодая система и реально далеко не все ОС используют все ее преимущества, о которых мы рассказали.
Например, Linux поддерживает UEFI. И все-таки эффективным партнерством это не назовешь. Система Mac OS X продвинулась несколько дальше. Она частично использует UEFI со своим загрузочным менеджером Bootcamp.
Как отмечают эксперты, в линейке Microsoft поддержка UEFI в Windows 8 – это способ очень интенсивно задействовать преимущества UEFI. Речь идет о функциях восстановления, обновления, безопасной загрузки и прочего.
Согласно существующим правилам присвоения машинам логотипа «Windows 8», все компьютеры, которые совместимы с этой ОС, должны будут иметь для загрузки уровень UEFI вместо устаревшего уровня BIOS.
Когда мы говорим конкретно о безопасном UEFI, то подразумеваем очень жесткий контроль за процессом загрузки системы, когда все микрокоды прошивки и программное обеспечение, задействованные в процессе загрузки, должны быть криптографически подписаны доверяемым органом сертификации – CA.
Безопасная загрузка поставила Linux в сложную ситуацию. Ведь теперь, чтобы загрузиться на одной из всех таких «Windows 8», соответствующий дистрибутив Linux должен быть с сертифицированными криптоключами от конкретного изготовителя компьютера. А это процедура запутанная и кропотливая. И у нее проблема не только юридическая, но и практическая.
Вопрос можно поставить так: «Кто конкретно возьмется за то, чтобы отслеживать и убеждать всех OEM-изготовителей компьютеров?» Ведь они должны предоставлять соответствующие криптоключи, необходимые для безопасной загрузки Linux.
Понятно, что многие компании предоставят такие ключи для Windows 8, поскольку они заинтересованы получить возможность продавать свои машины на новой операционной системе Microsoft. Однако нет таких правил, которые бы обязывали предоставлять такие же ключи кому-то еще. С учетом доли рынка Linux убедить кого-то в этом представляется весьма затруднительным. И тут предсказывать намного вперед не нужно.
Проблем вокруг UEFI немало, но одна из них – особенная. И все потому, что она очень важна абсолютно для всех операционных платформ. И касается защиты информации. Угрозы компьютерам со стороны BIOS существуют, а потому необходимо искать пути защиты. Ведь злоумышленник, способный проникнуть в BIOS и модифицировать его код, может уничтожить систему, не допуская ее загрузки. Есть также возможность внедрить шпионское ПО.
А с тех пор, как появилось UEFI BIOS, то есть следующее поколение системы, которое прибавило много новых возможностей для администраторов, конечных пользователей и, конечно, для злоумышленников, проблема стала еще более актуальной.
По сравнению с традиционными BIOS система UEFI способна намного больше, чем просто процесс загрузки. Скажем, есть набор рабочих сервисов, которые можно вызывать даже тогда, когда основная ОС уже давно загружена и полностью управляет компьютером.
Эта, как и другие особенности и свойства UEFI BIOS, существенно расширяют пространство возможных атак на систему. При этом стандарт UEFI BIOS намного более подробно документирован по сравнению с предыдущими спецификациями BIOS. В сочетании с тем, что систему UEFI необходимо обновлять через сеть гораздо чаще, чем BIOS, появляются большие возможности, чтобы создать и внедрить любые вредительские и шпионские закладки.
Статьи
Новости