Шифрование дисков BitLocker — определенно одна из самых обсуждаемых возможностей в Windows Vista. Однако, большинство людей еще не имело серьезной возможности опробовать BitLocker и на собственном опыте испытать,
что и как он делает — особенно на компьютере с доверенным платформенным модулем (TPM). В этой статье мы рассмотрим основы BitLocker™, позволяющие оценить его потенциал и включить в программу обновления. Начнем с предпосылок и концепций, затем рассмотрим включение BitLocker, восстановление данных, администрирование и то, какова роль BitLocker при утилизации компьютера. Справка по используемой терминологии приведена на боковой панели «Диски и тома».
Диски и тома
Терминология в области дисков и томов может сбивать с толку. Вот краткий словарь.
Раздел — секция на физическом жестком диске. Это логическая структура, определяемая в таблице разделов диска.
Том — логическая структура в Windows, составленная из одного или нескольких разделов и определяемая диспетчером томов Windows. Все приложения и все компоненты операционной системы, кроме диспетчера томов и загрузочных модулей, работают с томами, а не с разделами. В клиентских операционных системах Windows, включая Windows Vista, один раздел обычно соответствует одному тому. У серверов том часто составляется из нескольких разделов, подобно массивам дисков (RAID).
Активный раздел. Только один раздел может быть помечен как активный. Это раздел, содержащий загрузочный сектор, используемый при запуске операционной системы. Активный раздел также порой называют системным разделом или системным томом, но эти названия не имеют отношения к тому ОС Windows.
Том ОС Windows — том, содержащий установку Windows, включая папки System и System32. До выхода Windows Vista использовался (и до сих пор часто используется) термин «загрузочный раздел». Термин «том ОС Windows» понятнее и не страдает от постоянного смешения терминов «загрузочный раздел» и «системный раздел». Раньше преподаватели порой просили обучающихся запомнить, что «загрузка идет из системного раздела, а системные файлы находятся в загрузочном разделе».
До Windows Vista том ОС Windows (он же загрузочный раздел) и активный раздел (он же системный) обозначали одно и то же, поскольку жесткие диски большинства клиентских компьютеров содержали единственный большой раздел. На рис. А показаны назначения каждого раздела диска в консоли диспетчера дисков Windows Vista.
Рис. А Назначения разделов (Щелкните изображение, чтобы увеличить его)
BitLocker выполняет две взаимодополняющие, но различные функции. Во-первых, он обеспечивает шифрование всего тома ОС Windows®. Во-вторых, на компьютерах с совместимым доверенным платформенным модулем он позволяет проверить целостность загрузочных компонентов до запуска Windows Vista™.
Для полного использования возможностей BitLocker компьютер должен быть оснащен совместимыми микрочипом TPM и BIOS. Под совместимыми понимается версия 1.2 TPM и BIOS, поддерживающая TPM и статический корень измерения доверия (Static Root of Trust Measurement), определенный в спецификациях TCG. Однако компьютеры без совместимых TPM и BIOS тоже могут использовать шифрование BitLocker.
BitLocker шифрует весь том ОС Windows со всеми данными. Это ключевой аспект в защите конфиденциальной информации, содержащейся на компьютерах предприятия, особенно переносных.
Переносные компьютеры крадут и теряют каждый день. Благодаря возросшим возможностям переносных устройств, а также все большей доли мобильности в работе один сотрудник может иметь при себе сотни гигабайт промышленных секретов вашего предприятия, секретных документов или сведений о клиентах частного характера. Краткий обзор сводок новостей покажет, что такие данные теряются слишком часто. (По данным Privacy Rights Clearinghouse, с 2005 года пропало или было разглашено свыше 104 миллионов записей, содержащих частные сведения.)
Большинство организаций уже находятся под действием юридических или корпоративных документов, обязывающих охранять сведения личного характера, и даже если ваше предприятие еще не входит в их число, вы наверняка были бы заинтересованы обеспечить документам сохранность.
Если вы опытный администратор Windows, вы наверняка уже знакомы с имевшимися в Windows вариантами шифрования, например EFS, и, возможно, с шифрованием и защитой служб управления правами (RMS). Главное отличие BitLocker в том, что он работает автоматически, прозрачно и распространяется на весь том.
Например, в EFS нужно было явно указывать, какие файлы и папки шифровать. В Windows Vista появились новые параметры, добавляющие EFS гибкости. И EFS, и RMS могут пригодиться в определенных обстоятельствах, когда BitLocker не сможет помочь. Обе эти технологии требуют значительных усилий по настройке и не предназначены для защиты всего содержимого тома.
В противоположность им, BitLocker шифрует все, что записывается на защищенный им том, включая файлы операционной системы, реестр, файлы спящего режима и подкачки, приложения и их данные.
Не шифруются три элемента: загрузочный сектор, поврежденные сектора, уже отмеченные как нечитаемые, и метаданные тома. Последние состоят из трех избыточных копий данных, используемых BitLocker, включая статистическую информацию о томе и защищенные копии некоторых ключей расшифровки. Эти элементы не требуют шифрования, поскольку не являются уникальными, ценными или позволяющими определить личность.
Шифрование всего тома защищает от атак с выключением (offline attack), которые подразумевают обход операционной системы. Типичный пример — кража офисного компьютера, извлечение жесткого диска и установка его в качестве второго диска другого компьютера (под управлением другой копии Windows или вообще другой ОС), что позволяет обойти разрешения NTFS и ввод пароля. Прочитать таким образом диск, защищенный BitLocker, невозможно.
BitLocker использует алгоритм AES с ключом 128 бит. Для большей надежности длину ключа можно увеличить до 256 бит с помощью групповых политик или через поставщик инструментария управления Windows (WMI) для BitLocker.
Каждый сектор тома шифруется отдельно, при этом часть ключа шифрования определяется номером этого сектора. В результате два сектора, содержащие одинаковые незашифрованные данные, будут в зашифрованном виде выглядеть по-разному, что сильно затрудняет определение ключей шифрования путем записи и шифровки заранее известных данных.
Перед применением шифрования BitLocker использует алгоритм, называемый диффузором (diffuser). Не углубляясь в криптографию, можно сказать, в результате его применения даже мельчайшее изменение исходного текста приводит к абсолютному изменению всего сектора зашифрованных данных. Это также серьезно затрудняет определение ключей или дешифровку.
Если вас заинтересовали детали алгоритма шифрования BitLocker, вы можете подробнее прочитать о нем в статье Нейла Фергюсона (Neil Ferguson) «AES-CBC + Elephant Diffuser: алгоритм шифрования диска для Windows Vista».
Имея дело с шифрованием, стоит разбираться в ключах, и шифрование BitLocker не исключение. Архитектура его ключей изящна, но весьма непроста.
Сами секторы шифруются ключом шифрования всего тома (full-volume encryption key, FVEK). Пользователи, однако, с этим ключом не работают и доступа к нему не имеют. Сам ключ FVEK шифруется основным ключом тома (volume master key, VMK). Такой уровень абстракции дает уникальные преимущества, но делает весь процесс более трудным для понимания. Ключ FVEK хранится в строжайшей секретности, потому что при его разглашении потребовалось бы перешифровать все секторы. Поскольку перешифрование займет значительное время, стоит не допускать разглашения ключа. Поэтому система работает с ключом VMK.
Ключ FVEK (зашифрованный ключом VMK) хранится на диске среди метаданных тома. При этом он никогда не попадает на диск в расшифрованном виде.
Ключ VMK тоже шифруется, или «охраняется», одним или несколькими предохранителями ключей. Предохранитель по умолчанию — TPM. Его использование описано далее в разделе о проверке целостности. Пароль восстановления тоже создается как предохранитель на случай экстренных ситуаций. Восстановление также описано далее.
Для дополнительной защищенности можно объединить TPM с числовым ПИН-кодом или с частичным ключом, хранимым на USB-накопителе. И то, и другое — образец двухфакторной проверки подлинности. Если у компьютера нет совместимого TPM-чипа и BIOS, BitLocker может сохранить предохранитель ключа целиком на USB-накопителе. Получится ключ запуска.
BitLocker можно отключить, не расшифровывая данные. В этом случае ключ VMK защищается только новым предохранителем ключа, который хранится в незашифрованном виде. Этот ключ позволяет системе получать доступ к диску так, словно он не зашифрован.
При запуске система ищет подходящий предохранитель ключа, опрашивая TPM, проверяя порты USB или, если необходимо, запрашивая пользователя (что называется восстановлением). Обнаружение предохранителя ключа позволяет Windows расшифровать ключ VMK, которым расшифровывается ключ FVEK, которым расшифровываются данные на диске. Весь процесс показан на рис. 1.
Рис. 1 Процесс запуска BitLocker по умолчанию
Поскольку компоненты, выполняющие начальную стадию загрузки, должны оставаться незашифрованными (иначе компьютер не сможет запуститься), злоумышленник может изменить их код (создать rootkit) и так получить доступ к компьютеру, даже если данные на диске останутся зашифрованными.
Это открывает доступ к конфиденциальной информации, например ключам BitLocker или паролям пользователей, которые могут быть использованы для обхода других средств защиты.
Предотвращение такого хода событий было одной из исходных целей всей программы и группы разработчиков BitLocker. До некоторой степени, шифрование почти позволяло достичь конечной цели. Полное шифрование тома позволяет BitLocker сберегать целостность системы и не давать Windows запуститься, если компоненты, выполняющие начальную стадию загрузки, были изменены.
Если компьютер снабжен совместимым TPM, при каждом его запуске каждый из компонентов ранней загрузки — BIOS, MBR, загрузочный сектор и код диспетчера загрузки — проверяет запускаемый код, подсчитывает значение хэша и сохраняет его в специальных регистрах TPM, называемых регистрами конфигурации платформы (platform configuration registers, PCR). Значение, сохраненное в PCR, может быть заменено или стерто только при перезапуске системы. BitLocker использует TPM и значения, сохраненные в PCR, для защиты ключа VMK.
TPM может создать ключ, привязанный к конкретным значениям PCR. После создания этот ключ шифруется модулем TPM, и расшифровать его сможет только этот конкретный модуль. Причем для этого потребуется, чтобы текущие значения PCR совпадали со значениями на момент создания ключа. Это называется запечатыванием (sealing) ключа в TPM.
По умолчанию BitLocker запечатывает ключи к измерениям CRTM, BIOS и любым расширениям платформы, необязательному ROM-коду, коду MBR, загрузочному сектору NTFS и диспетчеру загрузки. Если любой из этих элементов неожиданно оказывается измененным, BitLocker блокирует диск и не даст получить к нему доступ или расшифровать.
По умолчанию BitLocker настроен на обнаружение и использование TPM. С помощью настроек групповой или локальной политики можно разрешить работу BitLocker без TPM с хранением ключей на внешнем ф
Tags: Windows Vista