
По мнению специалистов, именно кража ноутбука является одной из основных проблем в сфере информационной безопасности (ИБ).
В отличие от других угроз ИБ, природа проблем «украденный ноутбук» или «украденная флешка» довольно примитивна. И если стоимость исчезнувших устройств редко превышает отметку в несколько тысяч американских долларов, то ценность сохраненной на них информации зачастую измеряется в миллионах.
По данным Dell и Ponemon Institute, только в американских аэропортах ежегодно пропадает 637 тысяч ноутбуков. А представьте сколько пропадает флешек, ведь они намного меньше, и выронить флешку случайно проще простого.
Когда пропадает ноутбук, принадлежащий топ-менеджеру крупной компании, ущерб от одной такой кражи может составить десятки миллионов долларов.

Как защитить себя и свою компанию?
Мы продолжаем цикл статей про безопасность Windows домена. В первой статье из цикла мы рассказали про настройку безопасного входа в домен, а во второй — про настройку безопасной передачи данных в почтовом клиенте:
- Как при помощи токена сделать Windows домен безопаснее? Часть 1.
- Как при помощи токена сделать Windows домен безопаснее? Часть 2.
В этой статье мы расскажем о настройке шифрования информации, хранящейся на жестком диске. Вы поймете, как сделать так, чтобы никто кроме вас не смог прочитать информацию, хранящуюся на вашем компьютере.
Мало кто знает, что в Windows есть встроенные инструменты, которые помогают безопасно хранить информацию. Рассмотрим один из них.
Наверняка, кто-то из вас слышал слово «BitLocker». Давайте разберемся, что же это такое.
Что такое BitLocker?
BitLocker (точное название BitLocker Drive Encryption) — это технология шифрования содержимого дисков компьютера, разработанная компанией Microsoft. Она впервые появилась в Windows Vista.
С помощью BitLocker можно было шифровать тома жестких дисков, но позже, уже в Windows 7 появилась похожая технология BitLocker To Go, которая предназначена для шифрования съемных дисков и флешек.
BitLocker является стандартным компонентом Windows Professional и серверных версий Windows, а значит в большинстве случаев корпоративного использования он уже доступен. В противном случае вам понадобится обновить лицензию Windows до Professional.
Как работает BitLocker?
Эта технология основывается на полном шифровании тома, выполняемом с использованием алгоритма AES (Advanced Encryption Standard). Ключи шифрования должны храниться безопасно и для этого в BitLocker есть несколько механизмов.
Самый простой, но одновременно и самый небезопасный метод — это пароль. Ключ получается из пароля каждый раз одинаковым образом, и соответственно, если кто-то узнает ваш пароль, то и ключ шифрования станет известен.
Чтобы не хранить ключ в открытом виде, его можно шифровать либо в TPM (Trusted Platform Module), либо на криптографическом токене или смарт-карте, поддерживающей алгоритм RSA 2048.
TPM — микросхема, предназначенная для реализации основных функций, связанных с обеспечением безопасности, главным образом с использованием ключей шифрования.
Модуль TPM, как правило, установлен на материнской плате компьютера, однако, приобрести в России компьютер со встроенным модулем TPM весьма затруднительно, так как ввоз устройств без нотификации ФСБ в нашу страну запрещен.
Использование смарт-карты или токена для снятия блокировки диска является одним из самых безопасных способов, позволяющих контролировать, кто выполнил данный процесс и когда. Для снятия блокировки в таком случае требуется как сама смарт-карта, так и PIN-код к ней.
Схема работы BitLocker:
- При активации BitLocker с помощью генератора псевдослучайных чисел создается главная битовая последовательность. Это ключ шифрования тома — FVEK (full volume encryption key). Им шифруется содержимое каждого сектора. Ключ FVEK хранится в строжайшей секретности.
- FVEK шифруется при помощи ключа VMK (volume master key). Ключ FVEK (зашифрованный ключом VMK) хранится на диске среди метаданных тома. При этом он никогда не должен попадать на диск в расшифрованном виде.
- Сам VMK тоже шифруется. Способ его шифрования выбирает пользователь.
- Ключ VMK по умолчанию шифруется с помощью ключа SRK (storage root key), который хранится на криптографической смарт-карте или токене. Аналогичным образом это происходит и с TPM.
К слову, ключ шифрования системного диска в BitLocker нельзя защитить с помощью смарт-карты или токена. Это связано с тем, что для доступа к смарт-картам и токенам используются библиотеки от вендора, а до загрузки ОС, они, понятное дело, не доступны.
Если нет TPM, то BitLocker предлагает сохранить ключ системного раздела на USB-флешке, а это, конечно, не самая лучшая идея. Если в вашей системе нет TPM, то мы не рекомендуем шифровать системные диски.
И вообще шифрование системного диска является плохой идеей. При правильной настройке все важные данные хранятся отдельно от системных. Это как минимум удобнее с точки зрения их резервного копирования. Плюс шифрование системных файлов снижает производительность системы в целом, а работа незашифрованного системного диска с зашифрованными файлами происходит без потери скорости. - Ключи шифрования других несистемных и съемных дисков можно защитить с помощью смарт-карты или токена, а также TPM.
Если ни модуля TPM ни смарт-карты нет, то вместо SRK для шифрования ключа VMK используется ключ сгенерированный на основе введенного вами пароля.
При запуске с зашифрованного загрузочного диска система опрашивает все возможные хранилища ключей — проверяет наличие TPM, проверяет USB-порты или, если необходимо, запрашивает пользователя (что называется восстановлением). Обнаружение хранилища ключа позволяет Windows расшифровать ключ VMK, которым расшифровывается ключ FVEK, уже которым расшифровываются данные на диске.

Каждый сектор тома шифруется отдельно, при этом часть ключа шифрования определяется номером этого сектора. В результате два сектора, содержащие одинаковые незашифрованные данные, будут в зашифрованном виде выглядеть по-разному, что сильно затруднит процесс определения ключей шифрования путем записи и расшифровки заранее известных данных.
Помимо FVEK, VMK и SRK, в BitLocker используется еще один тип ключей, создаваемый «на всякий случай». Это ключи восстановления.
Для аварийных случаев (пользователь потерял токен, забыл его PIN-код и т.д.) BitLocker на последнем шаге предлагает создать ключ восстановления. Отказ от его создания в системе не предусмотрен.
Как включить шифрование данных на жестком диске?
Прежде чем приступить к процессу шифрованию томов на жестком диске, важно учесть, что эта процедура займет какое-то время. Ее продолжительность будет зависеть от количества информации на жестком диске.
Если в процессе шифрования или расшифровки компьютер выключится или перейдет в режим гибернации, то эти процессы возобновятся с места остановки при следующем запуске Windows.
Даже в процессе шифрования системой Windows можно будет пользоваться, но, вряд ли она сможет порадовать вас своей производительностью. В итоге, после шифрования, производительность дисков снижается примерно на 10%.
Если BitLocker доступен в вашей системе, то при клике правой кнопкой на названии диска, который необходимо зашифровать, в открывшемся меню отобразится пункт Turn on BitLocker.
На серверных версиях Windows необходимо добавить роль BitLocker Drive Encryption.
Приступим к настройке шифрования несистемного тома и защитим ключ шифрования с помощью криптографического токена.
Мы будем использовать токен производства компании «Актив». В частности, токен Рутокен ЭЦП PKI.
I. Подготовим Рутокен ЭЦП PKI к работе.
В большинстве нормально настроенных системах Windows, после первого подключения Рутокен ЭЦП PKI автоматически загружается и устанавливается специальная библиотека для работы с токенами производства компании «Актив» — Aktiv Rutoken minidriver.
Процесс установки такой библиотеки выглядит следующим образом.

Наличие библиотеки Aktiv Rutoken minidriver можно проверить через Диспетчер устройств.

Если загрузки и установки библиотеки по каким-то причинам не произошло, то следует установить комплект Драйверы Рутокен для Windows.
II. Зашифруем данные на диске с помощью BitLocker.
Щелкнем по названию диска и выберем пункт Turn on BitLocker.

Как мы говорили ранее, для защиты ключа шифрования диска будем использовать токен.
Важно понимать, что для использования токена или смарт-карты в BitLocker, на них должны находиться ключи RSA 2048 и сертификат.
Если вы пользуетесь службой Certificate Authority в домене Windows, то в шаблоне сертификата должна присутствовать область применения сертификата «Disk Encryption» (подробнее про настройку Certificate Authority в первой части нашего цикла статей про безопасность Windows домена).
Если у вас нет домена или вы не можете изменить политику выдачи сертификатов, то можно воспользоваться запасным путем, с помощью самоподписанного сертификата, подробно про то как выписать самому себе самоподписанный сертификат описано здесь.
Теперь установим соответствующий флажок.

На следующем шаге выберем способ сохранения ключа восстановления (рекомендуем выбрать Print the recovery key).

Бумажку с напечатанным ключом восстановления необходимо хранить в безопасном месте, лучше в сейфе.

Далее выберем, какой режим шифрования будет использоваться, для дисков, уже содержащих какие-то ценные данные (рекомендуется выбрать второй вариант).

На следующем этапе запустим процесс шифрования диска. После завершения этого процесса может потребоваться перезагрузить систему.
При включении шифрования иконка зашифрованного диска изменится.

И теперь, когда мы попытаемся открыть этот диск, система попросит вставить токен и ввести его PIN-код.

Развертывание и настройку BitLocker и доверенного платформенного модуля можно автоматизировать с помощью инструмента WMI или сценариев Windows PowerShell. Способ реализации сценариев будет зависеть от среды. Команды для BitLocker в Windows PowerShell описаны в статье.
Как восстановить данные, зашифрованные BitLocker, если токен потеряли?
Если вы хотите открыть зашифрованные данные в Windows
Для этого понадобится ключ восстановления, который мы распечатали ранее. Просто вводим его в соответствующее поле и зашифрованный раздел откроется.

Если вы хотите открыть зашифрованные данные в системах GNU/Linux и Mac OS X
Для этого необходима утилита DisLocker и ключ восстановления.
Утилита DisLocker работает в двух режимах:
- FILE — весь раздел, зашифрованный BitLocker, расшифровывается в файл.
- FUSE — расшифровывается только тот блок, к которому обращается система.
Для примера мы будем использовать операционную систему Linux и режим утилиты FUSE.
В последних версиях распространенных дистрибутивов Linux, пакет dislocker уже входит в состав дистрибутива, например, в Ubuntu, начиная с версии 16.10.
Если пакета dislocker по каким-то причинам не оказалось, тогда нужно скачать утилиту DisLocker и скомпилировать ее:
tar -xvjf dislocker.tar.gz
Откроем файл INSTALL.TXT и проверим, какие пакеты нам необходимо доустановить.
В нашем случае необходимо доустановим пакет libfuse-dev:
sudo apt-get install libfuse-dev
Приступим к сборке пакета. Перейдем в папку src и воспользуемся командами make и make install:
cd src/
make
make install
Когда все скомпилировалось (или вы установили пакет) приступим к настройке.
Перейдем в папку mnt и создадим в ней две папки:
- Encrypted-partition— для зашифрованного раздела;
- Decrypted-partition — для расшифрованного раздела.
cd /mnt
mkdir Encrypted-partition
mkdir Decrypted-partition
Найдем зашифрованный раздел. Расшифруем его с помощью утилиты и переместим его в папку Encrypted-partition:
dislocker -r -V /dev/sda5 -p recovery_key /mnt/Encrypted-partition</b>(вместо recovery_key подставьте свой ключ восстановления)
Выведем на экран список файлов, находящихся в папке Encrypted-partition:
ls Encrypted-partition/
Введем команду для монтирования раздела:
mount -o loop Driveq/dislocker-file Decrypted-partition/
Для просмотра расшифрованного раздела перейдем в папку Encrypted-partition.
Резюмируем
Включить шифрование тома при помощи BitLocker очень просто. Все это делается без особых усилий и бесплатно (при условии наличия профессиональной или серверной версии Windows, конечно).
Для защиты ключа шифрования, которым шифруется диск, можно использовать криптографический токен или смарт-карту, что существенно повышает уровень безопасности.