Введение
В последние годы на различных форумах, в письмах и при встречах все чаще пользователи начинают задавать вопросы о том, что собой представляет сравнительно новый функционал операционных систем Windows Vista, Windows 7 и Windows Server 2008 / 2008 R2 – Windows BitLocker (с выходом последних операционных систем данная технология приобрела некие изменения и теперь называется BitLoker To Go). Но после того как большинство пользователей и начинающих системных администраторов слышат ответ, что данный компонент – это «всего-то» встроенное средство безопасности в современных операционных системах, которое обеспечивает надежную защиту самой операционной системы, данных, которые хранятся на компьютере пользователя, а также отдельных томов и съемных носителей, что позволяет оставить пользовательские данные нетронутыми при серьезных атаках, а также физическим изыманием жестких дисков, для дальнейшего автономного взлома данных, я часто слышу о том, что такой функционал вовсе не будет востребованным и его использование только усложнит жизнь пользователям. С таким утверждением невозможно согласиться, так как данные должны находиться в безопасности. Вы ведь не оставляете ключи от своего дома или код к электронному замку вашей организации каждому встречному?
Домашние пользователи обычно аргументируют свое нежелание пользоваться данной технологией тем, что на их компьютерах нет никаких «жизненно важных» данных и даже если их взломают, то ничего страшного не произойдет, кроме того что кто-то посмотрит их профили в социальных сетях «Одноклассники» и «Вконтакте». Владельцы ноутбуков и нетбуков считают, что если их техника будет украдена, то о пропавших данных им нужно беспокоиться меньше всего. Системные администраторы в некоторых компаниях утверждают, что у них нет никаких секретных проектов и абсолютно всем сотрудникам компании можно доверять, а домой документацию и продукты интеллектуального труда они берут лишь в целях окончания работы, на которую не хватило рабочего времени. А компьютеры их организации защищены антивирусным программным обеспечением и настройками брандмауэров по умолчанию. А зачем нужно защищать внешние накопители, если на них просто хранятся музыкальные и видео файлы? И ничего, что такие устройства как флэщки могут ходить как по организациям, так и по всем вашим знакомым.
Но ни с одной из вышеперечисленных причин нельзя согласиться. У домашних пользователей при атаке могут не только скопировать себе всю коллекцию музыкальных и видео файлов, а изъять все пароли к банковским счетам и учетные данные на посещаемых сайтах при помощи cookie-файлов или, не дай бог, текстовых файлах с логинами и паролями, которые не редко располагаются на рабочем столе. Также есть большой шанс, что будет просмотрена вся почтовая переписка и т.п. На украденных ноутбуках могут находиться конфиденциальные данные, хищение которых может отрицательно сказаться на бизнесе вашей компании, а увольнение с соответствующим «поощрением» в вашем резюме в будущем может сказаться на вашей карьере крайней негативно. И наконец, в наше время в любой организации присутствуют секретные данные, которые не желательно показывать своим конкурентам. И если будет успешно атакован, по крайней мере, один из компьютеров вашей организации, есть огромный шанс, что вскоре у вас будет заражен весь ваш парк компьютеров, что повлечет за собой титанические усилия для приведения компьютеров вашей организации в первоначальное состояние. Недоброжелатели могут найтись даже в вашей организации. Даже если при выходе из здания охраной проверяются ваши сумки, они не будут проверять внешние накопители каждого сотрудника. А на них ведь можно вынести немало данных, о которых еще несколько месяцев не должны узнать ваши конкуренты.
По этой причине вам просто необходимо постараться обезопасить ваши данные любым возможным действующим способом. Именно для этого и предназначен данный компонент современных операционных систем компании Microsoft. Именно BitLocker позволяет предотвратить несанкционированный доступ к данным даже на потерянных или украденных компьютерах, тем самым улучшая работу вашей операционной системы. Для улучшения защиты ваших данных Windows BitLocker использует доверенный платформенный модуль (Trusted Platform Module - TPM) - спецификация, детализирующая криптопроцессор, в котором хранятся криптографические ключи для защиты информации, а также обобщенное наименование реализаций указанной спецификации, например в виде «чипа TPM», что гарантирует целостность компонентов, используемых даже на самой ранней стадии загрузки.
В этих технологиях можно найти преимущества, как для домашних пользователей, так и для системных администраторов в организациях. Для домашнего пользователя к основному преимуществу данных технологий можно отнести простоту использования, так как для ежедневного использования функционала BitLocker или BitLocker To Go, защита компьютера и его восстановление для пользователя является совершенно прозрачным. Системные администраторы наверняка оценят удобства управления защитой данных. Для удаленного управления шифрованием BitLocker, вы можете использовать инфраструктуру доменных служб Active Directory, причем расширенное управление будет осуществлено средствами групповых политик и скриптов.
Именно об этих компонентах операционных систем пойдет речь в данном цикле статей. О данных компонентах и их функционале в Интернете уже можно найти довольно много полезной информации, включая замечательные видео доклады, в которых вы можете вживую увидеть принцип их работы. Посему я в статьях данного цикла постараюсь наиболее подробно рассмотреть большинство функциональных возможностей как для домашних пользователей, так и для организаций для того чтобы вам не приходилось проводить длительное время в поисках того, как можно реализовать тот или иной сценарий для применения определенных действий.
Архитектура данной технологии
Как вы уже знаете, когда операционная система находится в активном состоянии, ее можно защитить при помощи локальных политик безопасности, антивирусного программного обеспечения и брандмауэров с межсетевыми экранами, а вот защитить том операционной системы на жестком диске вы можете средствами шифрования BitLocker. Для того чтобы воспользоваться всеми преимуществами шифрования BitLocker и проверки подлинности системы, ваш компьютер должен соответствовать таким требованиям, как наличие установленного модуля TPM версии 1.2, который при включении шифрования позволяет сохранять определенный ключ на съемном носителе для запуска системы. Помимо модуля TPM, в базовой системе ввода-вывода (BIOS) должна быть установлена спецификация группы Trusted Computing Group (TCG), которая перед загрузкой операционной системы создает цепочку доверий для действий и включает поддержку статического корневого объекта изменения уровня доверия. К сожалению, не все материнские платы оснащены таким модулем как TPM, но даже без этого модуля операционная система позволяет вам воспользоваться данной технологией шифрования при наличии запоминающих устройств USB с поддержкой команд UFI, а также в том случае, если ваш жесткий диск разбит на два и более тома. Например, на одном томе у вас будет находиться непосредственно операционная система для которой и будет включено шифрование, а второй, системный том, емкостью не менее 1,5Гб, содержит файлы, которые нужны для загрузки операционной системы после того как BIOS загрузит платформу. Все ваши томы должны быть отформатированы в файловой системе NTFS.
Архитектура шифрования BitLocker обеспечивает управляемые и функциональные механизмы, как в режиме ядра, так и в пользовательском режиме. На высоком уровне, к основным компонентам BitLocker можно отнести:
- Драйвер Trusted Platform Module (%SystemRoot%\System32\Drivers\Tpm.sys) – драйвер, который обращается к чипу TPM в режиме ядра;
- Основные службы TPM, которые включают пользовательские службы, предоставляющие доступ к TPM в пользовательском режиме (%SystemRoot%\System32\tbssvc.dll), поставщика WMI, а также оснастку MMC (%SystemRoot%\System32\Tpm.msc);
- Связанный код BitLocker в диспетчере загрузки (BootMgr), который аутентифицирует доступ к жесткому диску, а также позволяет восстанавливать и разблокировать загрузчик;
- Драйвер фильтра BitLocker (%SystemRoot%\System32\Drivers\Fvevol.sys), который позволяет шифровать и расшифровывать тома на лету в режиме ядра;
- Поставщик WMI BitLocker и управление сценариями, которые позволяют настраивать и управлять сценариями интерфейса BitLocker.
На следующей иллюстрации изображены различные компоненты и службы, которые обеспечивают корректную работу технологии шифрования BitLocker:
Увеличить рисунок
Рис. 1. Архитектура BitLocker
Ключи шифрования
BitLocker зашифровывает содержимое тома, используя ключ шифрования всего тома (FVEK — Full Volume Encryption Key), назначенного ему во время его первоначальной настройки для использования компонента BitLocker, с использованием алгоритмов 128- или 256-разрядного ключа AES AES128-CBC и AES256-CBC с расширениями Microsoft, которые называются диффузорами. Ключ FVEK шифруется с помощью главного ключа тома (VMK — Volume Master Key) и хранится на томе в области, специально отведенной для метаданных. Защита главного ключа тома является косвенным способом защиты данных тома: дополнение главного ключа тома позволяет системе пересоздать ключ после того как ключи были утеряны или скомпрометированы.
Когда вы настраиваете шифрование BitLocker, для защиты вашего компьютера при помощи VMK, в зависимости от вашей аппаратной конфигурации, вы можете использовать один из нескольких методов. Шифрование BitLocker поддерживает пять режимов проверки подлинности в зависимости от аппаратных возможностей компьютера и требуемого уровня безопасности. Если ваша аппаратная конфигурация поддерживает технологию доверенного платформенного модуля (TPM), то вы можете сохранять VMK как только в TMP, так и в TPM и на устройстве USB или сохранять ключ VMK в TPM и при загрузке системы вводить PIN. Помимо этого у вас есть возможность скомбинировать два предыдущих метода. А для платформ, которые не совместимы с технологией TPM, вы можете хранить ключ на внешнем USB устройстве.
Стоит обратить внимание на то, что при загрузке операционной системы с включенным шифрованием BitLocker, выполняется последовательность действий, которая зависит от набора средств защиты тома. Эти действия включают в себя проверку целостности системы, а также другие шаги по проверке подлинности, которые должны быть выполнены перед снятием блокировки с защищённого тома. В следующей таблице обобщены различные способы, которые вы можете использовать для шифрования тома:
Источник | Безопасность | Действия пользователя |
Только TPM | Защищает от программных атак, но уязвим к аппаратным атакам | Никаких |
TPM + PIN | Добавляет защиту от аппаратных атак | Пользователь должен вводить PIN-код при каждом запуске ОС |
TPM + ключ USB | Полная защита от аппаратных атак, но уязвима к потере ключа USB | Пользователь должен использовать ключ USB при каждом запуске ОС |
TPM + ключ USB + PIN | Максимальный уровень защиты | При каждом запуске ОС пользователь должен вводить PIN-код и использовать ключ USB |
Только ключ USB | Минимальный уровень защиты для компьютеров, не оснащенных TPM + есть риск потери ключа | Пользователь должен использовать ключ USB при каждом запуске ОС |
Таблица 1. Источники VMK
На следующей иллюстрации показаны способы шифрования томов:
Увеличить рисунок
Рис. 2. Способы шифрования томов, используя технологию BitLocker
Перед тем как BitLocker предоставит доступ к FEVK и расшифрует том, вам нужно предоставить ключи авторизированного пользователя или компьютера. Как было указано выше, если в вашем компьютере присутствует модуль TPM, вы можете использовать разные методы проверки аутентификации. В следующих подразделах, рассмотрим каждый из этих методов подробнее.
Использование только TPM
Процесс загрузки операционной системы использует TPM для того чтобы убедиться, что жесткий диск подключен к соответствующему компьютеру и важные системные файлы не были повреждены, а также предотвращает доступ к жесткому диску, если вредоносная программа или руткит поставил под угрозу целостность системы. В то время, когда компьютер проходит валидацию, TPM разблокирует VMK и ваша операционная система запускается без участия пользователя, как вы можете увидеть на следующей иллюстрации.
Рис. 3. Проверка подлинности с помощью технологии TPM
Использование TPM совместно с USB-ключом
В дополнение к физической защите, которая была описана в предыдущем подразделе, в этом случае TPM требует внешний ключ, который находится на USB-устройстве. В этом случае пользователю нужно вставить USB-накопитель, на котором хранится внешний ключ, предназначенный для аутентификации пользователя и целостности компьютера. В этом случае, вы можете защитить свой компьютер от кражи, при включении компьютера, а также при выводе из режима гибернации. К сожалению, этот способ не защитит вас от вывода компьютера из спящего режима. При использовании этого способа, для уменьшения риска при краже компьютера, вам нужно хранить внешний ключ отдельно от своего компьютера. На следующей иллюстрации вы можете ознакомиться с использованием TPM совместно с внешним USB-ключом:
Увеличить рисунок
Рис. 4. Проверка подлинности с помощью модуля TPM и USB-ключа
Использование TPM совместно с PIN-кодом
Этот способ препятствует запуску компьютера до тех пор, пока пользователь не введет персональный идентификационный номер (PIN-код). Этот способ позволяет защитить ваш компьютер в том случае, если у вас был украден выключенный компьютер. К сожалению, вам не стоит использовать данный метод в том случае, если компьютер должен запускаться автоматически без участия человека, которые обычно выступают в качестве серверов. Когда запрашивается PIN, аппаратный модуль TPM компьютера отображает запрос для ввода четырехзначного PIN-кода со специальной задержкой, которая устанавливается производителями материнской платы и самого модуля TPM. На следующей иллюстрации вы можете увидеть данный способ проверки подлинности:
Увеличить рисунок
Рис. 5. Проверка подлинности с помощью TPM и PIN-кода
Использование комбинированного метода (TPM+PIN-код+USB-ключ)
В операционных системах Windows 7 и Windows Vista вы можете использовать комбинированный метод проверки подлинности для максимального уровня защиты вашего компьютера. В этом случае, к аппаратной проверке подлинности TPM добавляется ввод PIN-кода и использование внешнего ключа, который находится на USB-накопителе. Все эти средства обеспечивают максимальный уровень защиты BitLocker, которые требуют данные, которые «знает» и «использует» пользователь. Для того чтобы злоумышленник завладел вашими данными, которые расположены на защищённом при помощи технологии BitLocker томе, ему нужно украсть ваш компьютер, иметь в наличии USB-накопитель с вашим ключом, а также знать PIN-код, что практически невозможно. На следующей иллюстрации изображен данный метод проверки подлинности:
Увеличить рисунок
Рис. 6. Проверки подлинности с использованием TPM, USB-ключа, а также PIN-кода
Проверка подлинности только с USB-ключом запуска
В этом случае пользователь предоставляет VMK на диске, USB-накопителе или на любых внешних устройствах хранения данных для расшифровки FEVK и тома, зашифрованных при помощи технологии BitLocker на компьютере, в котором не установлен модуль TPM. Использование ключа запуска без TPM позволяет вам шифровать данные без обновления вашего аппаратного оборудования. Этот способ считается наиболее уязвимым, так как в этом случае нет проверки целостности и перенося жесткий диск на другой компьютер данными можно будет воспользоваться.
Заключение
Шифрование диска BitLocker – это средство безопасности в современных операционных системах Windows, которое позволяет защитить операционную систему и данные, которые хранятся на ваших компьютерах. В идеальном сочетании, BitLocker настраивается на использование доверенного платформенного модуля TPM, что обеспечивает целостность компонентов начальной загрузки и блокировки томов, которые защищаются даже в том случае, если операционная система еще не запущена. В этой статье цикла, посвященного шифрованию данных, вы узнали об архитектуре данного средства. В следующей статье вы узнаете о реализации шифрования диска с помощью технологии Windows BitLocker.