Как настроить BitLocker шифрование жесткого диска или внешнего USB диска в Windows. BitLocker — Шифрование диска Для чего применяется шифрование жесткого диска

BitLocker является встроенной технологией в операционных системах WindowsVista (Proffessional/Enterprise), Windows 7 (Ultimate), Windows 8/8.1 а также в некоторых серверных версиях, таких как Windows Server 2012 и Server 2008 R2.

BitLocker позволяет зашифровать полностью весь носитель информации, это может быть встроенный HDD или внешний жесткий диск, USB накопитель или SD карта также отдельный том, например, локальный диск «D:\».

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

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

Сам ключ можно получить в нескольких вариантах. Сохранить в обычном «txt» файле, после чего прибрать файлик подальше от лишних глаз. Если у вас современный компьютер, то вам доступна возможность хранить ключ в платформенном модуле (TPM). Можно сохранить ключ и в учетной записи Microsoft.

Как зашифровать USB накопитель, используя BitLocker?

Вставьте USB накопитель и откройте проводник, после чего нажмите ПКМ по нужному носителю и в контекстно меню выберете «Включить BitLocker»

После недолгой инициализации диска вас попросят выбрать способ разблокировки диска. В рамках этой статьи используется способ, предложенный по умолчанию – использовать пароль.

Дальше выбираем способ архивации ключа. Предложено три варианта, из которых был выбран «Сохранить в файл». Сохраните файл с ключом восстановления на рабочем столе, переименуйте его и перенесите в более надёжное место.

Шифровать только занятое место . В этом случаи не будет зашифрован полностью весь накопитель, будет зашифрована только та информация, которая уже записана на диск. Данный пункт стоит выбирать, если информации мало, тогда процесс шифрования будет гораздо быстрее.

Шифровать весь диск . В этом случаи будет зашифровано все пространство диска. Процесс шифрование может занять несколько часов. Этот вариант рекомендуется выбирать, если накопитель заполнен полностью.

Дождитесь пока завершиться процесс шифрования, не отключая накопитель от компьютера, так как, файлы могут быть повреждены. Если в процессе шифрования произойдёт сбой или банально отключат свет, то при следующем включении компьютера, шифрование продолжится с того же место.

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

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

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

После несложных действий ваш накопитель имеет надёжную защиту. В случаи кражи или потери, вам не стоит волноваться за свою информацию, посторонние лица незная пароль, не смогут получить доступ к файлам.

В рамках этой статьи была приведена инструкция, о том, как зашифровать USB накопитель, используя BitLocker. Но эта не единственная возможность данной технологии.

Используя BitLocker можно запретить копирование файлов с вашего ПК на внешние устройства хранения информации, таким образом обезопасить себя от кражи файлов с собственного компьютера.

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

Предисловие

Так как для доступа к зашифрованному жесткому диску необходимо иметь ключ, а он, разумеется, хранится в RAM – все, что нужно, это получить физический доступ к ПК на несколько минут. После перезагрузки с внешнего жесткого диска или с USB Flash делается полный дамп памяти и в течение считанных минут из него извлекается ключ доступа.

Таким способом удается получить ключи шифрования (и полный доступ к жесткому диску), используемые программами BitLocker, FileVault и dm-crypt в операционных системах Windows Vista, Mac OS X и Linux, а также популярной свободно распространяемой системой шифрования жестких дисков TrueCrypt.

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

Наглядная демонстрация процесса представлена в видеоролике .

Аннотация

Вопреки устоявшемуся мнению, память DRAM, использующаяся в большинстве современных компьютеров, хранит в себе данные даже после отключения питания в течение нескольких секунд или минут, причём, это происходит при комнатной температуре и даже, в случае извлечения микросхемы из материнской платы. Этого времени оказывается вполне достаточно для снятия полного дампа оперативной памяти. Мы покажем, что данное явление позволяет злоумышленнику, имеющему физический доступ к системе, обойти функции ОС по защите данных о криптографических ключах. Мы покажем, как перезагрузка может использоваться для того, чтобы совершать успешные атаки на известные системы шифрования жёстких дисков, не используя каких-либо специализированных устройств или материалов. Мы экспериментально определим степень и вероятность сохранения остаточной намагниченности и покажем что время, за которое можно снять данные, может быть существенно увеличено при помощи простых приёмов. Так же будут предложены новые методы для поиска криптографических ключей в дампах памяти и исправления ошибок, связанных с потерей битов. Будет также рассказано о несколько способах уменьшения данных рисков, однако простого решения нам не известно.

Введение

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

Мы покажем ряд атак, которые, используя эффекты остаточной намагниченности DRAM, позволят нам восстановить хранимые в памяти ключи шифрования. Это представляет собой реальную угрозу для пользователей ноутбуков, которые полагаются на системы шифрования жёсткого диска. Ведь в случае, если злоумышленник похитит ноутбук, в тот момент, когда зашифрованный диск подключён, он сможет провести одну из наших атак для доступа к содержимому, даже если сам ноутбук заблокирован или находится в спящем режиме. Мы это продемонстрируем, успешно атакуя несколько популярных систем шифрования, таких как – BitLocker, TrueCrypt и FileVault. Эти атаки должны быть успешны и в отношении других систем шифрования.

Хотя мы сосредоточили наши усилия на системах шифрования жёстких дисков, в случае физического доступа к компьютеру злоумышленника, любая важная информация хранящаяся в оперативной памяти может стать объектом для атаки. Вероятно, и многие другие системы безопасности уязвимы. Например, мы обнаружили, что Mac OS X оставляет пароли от учётных записей в памяти, откуда мы смоги их извлечь, так же мы совершили атаки на получение закрытых RSA ключей веб-сервера Apache.

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

Атаки на зашифрованные диски

Шифрование жёстких дисков это известный способ защиты против хищения данных. Многие полагают, что системы шифрования жёстких дисков позволят защитить их данные, даже в том случае, если злоумышленник получил физических доступ к компьютеру (собственно для этого они и нужны, прим. ред.). Закон штата Калифорния, принятый в 2002 году, обязывает сообщать о возможных случаях раскрытия персональных данных, только в том случае, если данные не были зашифрованы, т.к. считается, что шифрование данных - это достаточная защитная мера. Хотя закон не описывает никаких конкретных технических решений, многие эксперты рекомендуют использовать системы шифрования жёстких дисков или разделов, что будет считаться достаточными мерами для защиты. Результаты нашего исследования показали, что вера в шифрование дисков необоснованна. Атакующий, далеко не самой высокой квалификации, может обойти многие широко используемые системы шифрования, в случае если ноутбук с данными похищен, в то время когда он был включён или находился в спящем режиме. И данные на ноутбуке могут быть прочитаны даже в том случае, когда они находятся на зашифрованном диске, поэтому использование систем шифрования жёстких дисков не является достаточной мерой.

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

BitLocker

BitLocker – система, входящая в состав некоторых версий ОС Windows Vista. Она функционирует как драйвер работающий между файловой системой и драйвером жёсткого диска, шифруя и расшифровывая по требованию выбранные секторы. Используемые для шифрования ключи находятся в оперативной памяти до тех пор, пока зашифрованный диск подмантирован.

Для шифрования каждого сектора жёсткого диска BitLocker использует одну и ту же пару ключей созданных алгоритмом AES: ключ шифрования сектора и ключ шифрования, работающий в режиме сцепления зашифрованных блоков (CBC). Эти два ключа в свою очередь зашифрованы мастер ключом. Чтобы зашифровать сектор, проводится процедура двоичного сложения открытого текста с сеансовым ключом, созданным шифрованием байта смещения сектора ключом шифрования сектора. Потом, полученные данные обрабатываются двумя смешивающими функциями, которые используют разработанный Microsoft алгоритм Elephant. Эти безключевые функции используются с целью увеличения количества изменений всех битов шифра и, соответственно, увеличения неопределённости зашифрованных данных сектора. На последнем этапе, данные шифруются алгоритмом AES в режиме CBC, с использованием соответствующего ключа шифрования. Вектор инициализации определяется путём шифрования байта смещения сектора ключом шифрования, используемом в режиме CBC.

Нами была реализована полностью автоматизированная демонстрационная атака названная BitUnlocker. При этом используется внешний USB диск с ОС Linux и модифицированным загрузчиком на основе SYSLINUX и драйвер FUSE позволяющий подключить зашифрованные BitLocker диски в ОС Linux. На тестовом компьютере с работающей Windows Vista отключалось питание, подключался USB жёсткий диск, и с него происходила загрузка. После этого BitUnlocker автоматически делал дамп оперативной памяти на внешний диск, при помощи программы keyfind осуществлял поиск возможных ключей, опробовал все подходящие варианты (пары ключа шифрования сектора и ключа режима CBC), и в случае удачи подключал зашифрованный диск. Как только диск подключался, появлялась возможность с ним работать как с любым другим диском. На современном ноутбуке с 2 гигабайтами оперативной памяти процесс занимал около 25 минут.

Примечательно, что данную атаку стало возможным провести без реверс-инжиниринга какого-либо ПО. В документации Microsoft система BitLocker описана в достаточной степени, для понимания роли ключа шифрования сектора и ключа режима CBC и создания своей программы реализующей весь процесс.

Основное отличие BitLocker от других программ этого класса – это способ хранения ключей при отключённом зашифрованном диске. По умолчанию, в базовом режиме, BitLocker защищает мастер ключ только при помощи TPM модуля, который существует на многих современных ПК. Данный способ, который, по всей видимости, широко используется, особенно уязвим к нашей атаке, поскольку он позволяет получить ключи шифрования, даже если компьютер был выключен в течение долгого времени, поскольку, когда ПК загружается, ключи автоматически подгружаются в оперативную память (до появления окна входа в систему) без ввода каких-либо аутентификационных данных.

По всей видимости, специалисты Microsoft знакомы с данной проблемой и поэтому рекомендуют настроить BitLocker в улучшенный режим, где защита ключей осуществляется, не только при помощи TPM, но и паролем или ключом на внешнем USB носителе. Но, даже в таком режиме, система уязвима, если злоумышленник получит физический доступ к ПК в тот момент, когда он работает (он даже может быть заблокирован или находиться в спящем режиме, (состояния - просто выключен или hibernate в это случае считаются не подверженными данной атаке).

FileVault

Система FileVault от Apple была частично исследована и проведён реверс-инжиниринг. В Mac OS X 10.4 FileVault использует 128-битный ключ AES в режиме CBC. При введении пароля пользователя, расшифровывается заголовок, содержащий ключ AES и второй ключ K2, используемый для расчёта векторов инициализации. Вектор инициализации для I-того блока диска рассчитывается как HMAC-SHA1 K2(I).

Мы использовали нашу программу EFI для получения образов оперативной памяти для получения данных с компьютера Макинтош (базирующимся на процессоре Intel) с подключённым диском, зашифрованным FileVault. После этого программа keyfind безошибочно автоматически находила AES ключи FileVault.

Без вектора инициализации, но с полученным AES ключом появляется возможность расшифровать 4080 из 4096 байт каждого блока диска (всё кроме первого AES блока). Мы убедились, что инициализационный вектор так же находится в дампе. Предполагая, что данные не успели исказиться, атакующий может определить вектор, поочерёдно пробуя все 160-битовые строки в дампе и проверяя, могут ли они образовать возможный открытый текст, при их бинарном сложении с расшифрованной первой частью блока. Вместе, используя программы типа vilefault, AES ключи и инициализационный вектор позволяют полностью расшифровывать зашифрованный диск.

В процессе исследования FileVault, мы обнаружили, что Mac OS X 10.4 и 10.5 оставляют множественные копии пароля пользователя в памяти, где они уязвимы к данной атаке. Пароли учётных записей часто используются для защиты ключей, которые в свою очередь, могу использоваться для защиты ключевых фраз зашифрованных FileVault дисков.

TrueCrypt

TrueCrypt – популярная система шифрования с открытым кодом, работающая на ОС Windows, MacOS и Linux. Она поддерживает множество алгоритмов, включая AES, Serpent и Twofish. В 4-ой версии, все алгоритмы работали в режиме LRW; в текущей 5-ой версии, они используют режим XTS. TrueCrypt хранит ключ шифрования и tweak ключ в заголовке раздела на каждом диске, который зашифрован другим ключом получающимся из вводимого пользователем пароля.

Мы тестировали TrueCrypt 4.3a и 5.0a работающие под ОС Linux. Мы подключили диск, зашифрованный при помощи 256-битного AES ключа, потом отключили питание и использовали для загрузки собственное ПО для дампа памяти. В обоих случаях, keyfind обнаружила 256-битный неповреждённый ключ шифрования. Так же, в случае TrueCrypt 5.0.a, keyfind смогла восстановить tweak ключ режима XTS.

Чтобы расшифровать диски созданные TrueCrypt 4, необходим tweak ключ режима LRW. Мы обнаружили, что система хранит его в четырёх словах перед ключевым расписанием ключа AES. В нашем дампе, LRW ключ не был искажён. (В случае появления ошибок, мы все равно смогли бы восстановить ключ).

Dm-crypt

Ядро Linux, начиная с версии 2.6, включает в себя встроенную поддержку dm-crypt – подсистемы шифрования дисков. Dm-crypt использует множество алгоритмов и режимов, но, по умолчанию, она использует 128-битный шифр AES в режиме CBC с инициализационными векторами создаваемыми не на основе ключевой информации.

Мы тестировали созданный dm-crypt раздел, используя LUKS (Linux Unified Key Setup) ветку утилиты cryptsetup и ядро 2.6.20. Диск был зашифрован при помощи AES в режиме CBC. Мы ненадолго отключили питание и, используя модифицированный PXE загрузчик, сделали дамп памяти. Программа keyfind обнаружила корректный 128-битный AES ключ, который и был восстановлен без каких-либо ошибок. После его восстановления, злоумышленник может расшифровать и подключить раздел зашифрованный dm-crypt, модифицируя утилиту cryptsetup таким образом, чтобы она воспринимала ключи в необходимом формате.

Способы защиты и их ограничения

Реализация защиты от атак на оперативную память нетривиальна, поскольку используемые криптографические ключи необходимо где-либо хранить. Мы предлагаем сфокусировать усилия на уничтожении или скрытии ключей до того, как злоумышленник сможет получить физический доступ к ПК, предотвращая запуск ПО для дампа оперативной памяти, физически защищая микросхемы ОЗУ и по возможности снижая срок хранения данных в ОЗУ.

Перезапись памяти

Прежде всего, надо по-возможности избегать хранения ключей в ОЗУ. Необходимо перезаписывать ключевую информацию, если она больше не используется, и предотвращать копирование данных в файлы подкачки. Память должна очищаться заблаговременно средствами ОС или дополнительных библиотек. Естественно, эти меры не защитят используемые в данный момент ключи, поскольку они должны храниться в памяти, например такие ключи как, используемые для шифрованных дисков или на защищённых веб серверах.

Так же, ОЗУ должна очищаться в процессе загрузки. Некоторые ПК могут быть настроены таким образом, чтобы очищать ОЗУ при загрузке при помощи очищающего POST запроса (Power-on Self-Test) до того как загружать ОС. Если злоумышленник не сможет предотвратить выполнение данного запроса, то на данном ПК у него не будет возможности сделать дамп памяти с важной информацией. Но, у него всё ещё остаётся возможность вытащить микросхемы ОЗУ и вставить их в другой ПК с необходимыми ему настройками BIOS.

Ограничение загрузки из сети или со съёмных носителей

Многие наши атаки были реализованы с использованием загрузки по сети или со съёмного носителя. ПК должен быть настроен так, чтобы требовать пароль администратора для загрузки с этих источников. Но, необходимо отметить, что даже если система настроена на загрузку только с основного жёсткого диска, атакующий может сменить сам жёсткий диск, или во многих случаях, сбросить NVRAM компьютера для отката на первоначальные настройки BIOS.

Безопасный спящий режим

Результаты исследования показали, что простое блокирование рабочего стола ПК (т.е ОС продолжает работать, но, для того, чтобы с ней начать взаимодействие необходим ввод пароля) не защищает содержимое ОЗУ. Спящий режим не эффективен и в том случае, если ПК блокируется при возврате из спящего режима, поскольку злоумышленник может активировать возврат из спящего режима, после чего перезагрузить ноутбук и сделать дамп памяти. Режим hibernate (содержимое ОЗУ копируется на жёсткий диск) так же не поможет, кроме случаев использования ключевой информации на отчуждаемых носителях для восстановления нормального функционирования.

В большинстве систем шифрования жёстких дисков, пользователи могут защититься выключением ПК. (Система Bitlocker в базовом режиме работы TPM модуля остаётся уязвимой, поскольку диск будет подключен автоматически, когда ПК будет включён). Содержимое памяти может сохраняться в течение короткого периода после отключения, поэтому рекомендуется понаблюдать за своей рабочей станцией ещё в течение пары минут. Несмотря на свою эффективность, данная мера крайне неудобна в связи с долгой загрузкой рабочих станций.

Переход в спящий режим можно обезопасить следующими способами: требовать пароль или иной другой секрет чтобы «разбудить» рабочую станцию и шифровать содержимое памяти ключом производным от этого пароля. Пароль должен быть стойким, так как злоумышленник может сделать дамп памяти и после чего попробовать подобрать пароль перебором. Если же шифрование всей памяти невозможно, необходимо шифровать только те области, которые содержат ключевую информацию. Некоторые системы могут быть настроены таким образом, чтобы переходить в такой тип защищённого спящего режима, хотя это обычно и не является настройкой по умолчанию.

Отказ от предварительных вычислений

Наши исследования показали, что использование предварительных вычислений для того, чтобы ускорить криптографические операции делает ключевую информацию более уязвимой. Предварительные вычисления приводят к тому, что в памяти появляется избыточная информации о ключевых данных, что позволяет злоумышленнику восстановить ключи даже в случае наличия ошибок. Например, как описано в разделе 5, информация об итерационных ключах алгоритмов AES и DES крайне избыточна и полезна для атакующего.

Отказ от предварительных вычислений снизит производительность, поскольку потенциально сложные вычисления придётся повторять. Но, например, можно кэшировать предварительно высчитанные значения на определённый промежуток времени и стирать полученные данные, если они не используются в течение этого интервала. Такой подход представляет собой компромисс между безопасностью и производительностью системы.

Расширение ключей

Другой способ предотвратить восстановление ключей – это изменение ключевой информации, хранящейся в памяти, таким образом, чтобы усложнить восстановление ключа из-за различных ошибок. Этот метод был рассмотрен в теории, где была показана функция, стойкая к раскрытию, чьи входные данные остаются сокрытыми, даже если практически все выходные данные были обнаружены, что очень похоже на работу однонаправленных функций.

На практике, представьте, что у нас есть 256-битный AES ключ K, который в данный момент не используется, но понадобится позднее. Мы не можем перезаписать его, но мы хотим сделать его стойким к попыткам восстановления. Один из способов добиться этого – это выделить большую B-битную область данных, заполнить её случайными данными R, после чего хранить в памяти результат следующего преобразования K+H(R) (суммирование двоичное, прим. ред.), где H – это хэш функция, например SHA-256.

Теперь представьте, что электричество было отключено, это приведёт к тому, что d бит в данной области будут изменены. Если хэш функция стойкая, при попытке восстановления ключа K, злоумышленник может рассчитывать только на то, что он сможет угадать какие биты области B были изменены из приблизительно половины, которые могли изменится. Если d бит были изменены, злоумышленнику придётся провести поиск области размером (B/2+d)/d чтобы найти корректные значения R и уже после этого восстановить ключ K. Если область B велика, такой поиск может быть очень долог, даже если d относительно мала.

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

Физическая защита

Некоторые из наших атак основывались на наличии физического доступа к микросхемам памяти. Такие атаки могут быть предотвращены физической защитой памяти. Например, модули памяти находиться в закрытом корпусе ПК, или залиты эпоксидным клеем, чтобы предотвратить попытки их извлечения или доступа к ним. Так же, можно реализовать затирание памяти как ответную реакцию на низкие температуры или попытки открыть корпус. Такой способ потребует установки датчиков с независимой системой питания. Многие из таких способов связаны с аппаратурой, защищённой от несанкционированного вмешательства (например, сопроцессор IBM 4758) и могут сильно повысить стоимость рабочей станции. С другой стороны, использование памяти, припаянной к материнской плате, обойдётся гораздо дешевле.

Изменение архитектуры

Можно изменить архитектуру ПК. Что невозможно для уже используемых ПК, зато позволит обезопасить новые.

Первый подход заключается в том, чтобы спроектировать DRAM модули таким образом, чтобы они быстрее стирали все данные. Это может быть непросто, поскольку цель как можно более быстрого стирания данных, противоречит другой цели, чтобы данные не пропадали между периодами обновления памяти.

Другой подход заключается в добавлении аппаратуры хранения ключевой информации, которая бы гарантированно стирала всю информацию со своих хранилищ при запуске, перезапуске и выключении. Таким образом, мы получим надёжное место для хранения нескольких ключей, хотя уязвимость, связанная с их предварительными вычислениями останется.

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

Доверенные вычисления

Аппаратура, соответствующая концепции «доверенных вычислений», например, в виде TPM модулей уже используется в некоторых ПК. Несмотря на свою полезность в защите от некоторых атак, в своей нынешней форме такое оборудование не помогает предотвратить описанные нами атаки.

Используемые TPM модули не реализуют полное шифрование. Вместо этого, они наблюдают за процессом загрузки для принятия решения о том, безопасно ли загружать ключ в ОЗУ или нет. Если ПО необходимо использовать ключ, то можно реализовать следующую технологию: ключ, в пригодной для использования форме не будет храниться в ОЗУ, до тех пор пока процесс загрузки не пройдёт по ожидаемому сценарию. Но, как только ключ оказывается в оперативной памяти – он сразу становиться мишенью для наших атак. TPM модули могут предотвратить загрузку ключа в память, но они не предотвращают его считывание из памяти.

Выводы

Вопреки популярному мнению, модули DRAM в отключённом состоянии хранят данные в течение относительно долгого времени. Наши эксперименты показали, что данное явление позволяет реализовать целый класс атак, которые позволяют получить важные данные, такие как ключи шифрования из оперативной памяти, несмотря на попытки ОС защитить её содержимое. Описанные нами атаки реализуемы на практике, и наши примеры атак на популярные системы шифрования доказывают это.

Но и другие виды ПО также уязвимы. Системы управления цифровыми правами (DRM) часто используют симметричные ключи, хранящиеся в памяти, и их так же можно получить, используя описанные методы. Как мы показали, веб-сервера с поддержкой SSL тоже уязвимы, поскольку они хранят в памяти закрытые ключи необходимые для создания SSL сеансов. Наши способы поиска ключевой информации, скорее всего, будут эффективны для поиска паролей, номеров счетов и любой другой важной информации, хранящейся в ОЗУ.

Похоже что нет простого способа устранить найденные уязвимости. Изменение ПО скорее всего не будет эффективным; аппаратные изменения помогут, но временные и ресурсные затраты будут велики; технология «доверенных вычислений» в её сегодняшней форме так же мало эффективна, поскольку она не может защитить ключи находящиеся в памяти.

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

В итоге, возможно, придётся рассматривать DRAM память как не доверенную компоненту современного ПК, и избегать обработки важной конфиденциальной информации в ней. Но на данный момент это нецелесообразно, до тех пор, пока архитектура современных ПК не изменится, чтобы позволить ПО хранить ключи в безопасном месте.

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

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

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

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

Первым рассматриваемым сегодня способом будет встроенная криптозащита от Microsoft. Шифрование, названное BitLocker, впервые появилось в Windows 8. Обезопасить с его помощью отдельную папку или файл не получится, доступно только шифрование всего диска целиком. Из этого в частности вытекает тот факт, что шифровать системный диск нельзя (система не сможет загрузиться), хранить важные данные в системных библиотеках типа «Мои документы» также нельзя (по умолчанию они располагаются на системном разделе).
Чтобы включить встроенное шифрование, проделайте следующее:

  1. Откройте Проводник, сделайте правый клик на шифруемом диске и выберите пункт «Включить BitLocker».
  2. Отметьте пункт «Использовать пароль для снятия блокировки диска», придумайте и дважды введите пароль, удовлетворяющий требованиям безопасности (длина не менее 8 символов, наличие строчных и прописных букв, желательно ввести хотя бы один спец$имвол) и нажмите кнопку «Далее». Второй вариант разблокировки в рамках этой заметки мы рассматривать не будем поскольку ридеры смарткарт довольно редки и используются в организациях, имеющих собственную службу информационной безопасности.
  3. На случай утери пароля система предлагает создать особый ключ восстановления. Его можно прикрепить к учетной записи Microsoft, сохранить в файл или просто напечатать на принтере. Выберите один из способов и после сохранения ключа нажмите «Далее». Этот ключ следует беречь от посторонних поскольку он, являясь страховкой от вашей забывчивости, может стать «задней дверью», через которую и утекут ваши данные.
  4. На следующем экране выберите, необходимо ли шифровать весь диск или только занятое место. Второй пункт медленнее, но более надежен.
  5. Выберите шифрующий алгоритм. Если не планируете миграцию диска между компьютерами, выбирайте более стойкий новейший режим, иначе — режим совместимости.
  6. После настройки параметров нажмите кнопку «Начать шифрование» После некоторого ожидания данные на вашем диске будут надежно зашифрованы.
  7. После выхода из системы или перезагрузки защищенный том станет недоступным, для того чтобы открыть файлы потребуется ввод пароля.

DiskCryptor

Второй рассматриваемой сегодня криптографической утилитой является DiskCryptor — бесплатное решение с открытым исходным кодом. Чтобы использовать его, воспользуйтесь следующей инструкцией:

  1. Скачайте установщик программы с официального сайта по ссылке . Запустите скачанный файл.
  2. Процесс установки предельно прост, заключается в нажатии несколько раз кнопки «Next» и итоговой перезагрузки компьютера.

  3. После перезагрузки запустите программу DiskCryptor из папки с программой или щелкнув по ярлыку на рабочем столе.
  4. В открывшемся окне кликните на шифруемый диск и нажмите кнопку «Encrypt».
  5. Следующим шагом выберите алгоритм шифрования и определитесь, нужно ли стереть с диска перед шифрованием все данные (если не планируете уничтожать информацию, обязательно выберите «None» в списке «Wipe Mode»).
  6. Введите дважды пароль дешифровки (рекомендуется придумать сложный пароль, чтобы в поле «Password Rating» было значение как минимум «High»). Потом нажмите «ОК».
  7. После некоторого ожидания диск будет зашифрован. После перезагрузки или выхода из системы для доступа к нему нужно будет запустить утилиту, нажать на кнопку «Mount» или «Mount All», ввести пароль и нажать «ОК».

Безусловным плюсом этой утилиты по сравнению с механизмом BitLocker является то, что использовать ее можно на системах, вышедших до Windows 8 (поддерживается даже снятая с поддержки Windows XP). Но DiskCryptor имеет и несколько существенных минусов:

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

Резюмируя могу сказать, что если на компьютере установлена ОС начиная с Windows 8, то лучше использовать встроенный функционал.

В настоящие дни мы постоянно имеем дело с информацией. Благодаря развитию информационных технологий, теперь работа, творчество, развлечение в значительной степени превратились в процессы по обработке или потреблению информации. И среди этого огромного массива информации часть данных не должна быть общедоступной. Примером такой информации могут быть файлы и данные, связанные с коммерческой деятельностью; приватные архивы.

Часть этих данных не предназначена для широкого круга просто по той причине, что «им незачем об этом знать»; а какая-то информация является жизненно важной.

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

Почему не стоит доверять программам для шифрования с закрытым исходным кодом

В программы с закрытым исходным кодом могут быть внедрены «закладки» (и не надо надеяться, что их там нет!) и возможность открывать зашифрованные файлы с помощью мастер-ключа. Т.е. вы можете использовать любой, самый сложный пароль, но ваш зашифрованный файл всё равно с лёгкостью, без перебора паролей, может быть открыт с помощью «закладки» или владельцем мастер-ключа. Размер компании-производителя программного обеспечения для шифрования и название страны в данном вопросе роли не играют, поскольку это является частью государственной политики многих стран. Ведь нас всё время окружают террористы и наркоторговцы (а что делать?).

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

Стоит ли переходить с TrueCrypt на VeraCrypt

Эталонной программой, которая много лет позволяет очень надёжно шифровать файлы является TrueCrypt. Эта программа до сих пор прекрасно работает. К сожалению, в настоящее время разработка программы прекращена.

Её лучшей наследницей стала программа VeraCrypt.

VeraCrypt - это бесплатное программное обеспечение для шифрование дисков, она базируется на TrueCrypt 7.1a.

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

VeraCrypt также исправила многие уязвимости и проблемы безопасности, обнаруженные в TrueCrypt. Она может работать с томами TrueCrypt и предлагает возможность конвертировать контейнеры TrueCrypt и несистемные разделы в формат VeraCrypt.

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

Это можно продемонстрировать наглядно следующими бенчмарками по взлому (перебору) паролей в Hashcat :

Для TrueCrypt:

Hashtype: TrueCrypt PBKDF2-HMAC-RipeMD160 + XTS 512 bit Speed.Dev.#1.: 21957 H/s (96.78ms) Speed.Dev.#2.: 1175 H/s (99.79ms) Speed.Dev.#*.: 23131 H/s Hashtype: TrueCrypt PBKDF2-HMAC-SHA512 + XTS 512 bit Speed.Dev.#1.: 9222 H/s (74.13ms) Speed.Dev.#2.: 4556 H/s (95.92ms) Speed.Dev.#*.: 13778 H/s Hashtype: TrueCrypt PBKDF2-HMAC-Whirlpool + XTS 512 bit Speed.Dev.#1.: 2429 H/s (95.69ms) Speed.Dev.#2.: 891 H/s (98.61ms) Speed.Dev.#*.: 3321 H/s Hashtype: TrueCrypt PBKDF2-HMAC-RipeMD160 + XTS 512 bit + boot-mode Speed.Dev.#1.: 43273 H/s (95.60ms) Speed.Dev.#2.: 2330 H/s (95.97ms) Speed.Dev.#*.: 45603 H/s

Для VeraCrypt:

Hashtype: VeraCrypt PBKDF2-HMAC-RipeMD160 + XTS 512 bit Speed.Dev.#1.: 68 H/s (97.63ms) Speed.Dev.#2.: 3 H/s (100.62ms) Speed.Dev.#*.: 71 H/s Hashtype: VeraCrypt PBKDF2-HMAC-SHA512 + XTS 512 bit Speed.Dev.#1.: 26 H/s (87.81ms) Speed.Dev.#2.: 9 H/s (98.83ms) Speed.Dev.#*.: 35 H/s Hashtype: VeraCrypt PBKDF2-HMAC-Whirlpool + XTS 512 bit Speed.Dev.#1.: 3 H/s (57.73ms) Speed.Dev.#2.: 2 H/s (94.90ms) Speed.Dev.#*.: 5 H/s Hashtype: VeraCrypt PBKDF2-HMAC-RipeMD160 + XTS 512 bit + boot-mode Speed.Dev.#1.: 154 H/s (93.62ms) Speed.Dev.#2.: 7 H/s (96.56ms) Speed.Dev.#*.: 161 H/s Hashtype: VeraCrypt PBKDF2-HMAC-SHA256 + XTS 512 bit Speed.Dev.#1.: 118 H/s (94.25ms) Speed.Dev.#2.: 5 H/s (95.50ms) Speed.Dev.#*.: 123 H/s Hashtype: VeraCrypt PBKDF2-HMAC-SHA256 + XTS 512 bit + boot-mode Speed.Dev.#1.: 306 H/s (94.26ms) Speed.Dev.#2.: 13 H/s (96.99ms) Speed.Dev.#*.: 319 H/s

Как можно увидеть, взломать зашифрованные контейнеры VeraCrypt на несколько порядков сложнее, чем контейнеры TrueCrypt (которые тоже совсем не просты).

Полный бенчмарк и описание железа я публиковал в статье « ».

Второй важный вопрос - надёжность. Никто не хочет, чтобы особо ценные и важные файлы и сведения были потеряны из-за ошибки в программе. Я знаю о VeraCrypt сразу после её появления. Я следил за её развитием и постоянно к ней присматривался. На протяжении последнего года я полностью перешёл с TrueCrypt на VeraCrypt. За год ежедневной работы VeraCrypt меня ни разу не подводила.

Таким образом, на мой взгляд, сейчас стоит переходить с TrueCrypt на VeraCrypt.

Как работает VeraCrypt

VeraCrypt создаёт специальный файл, который называется контейнер. Этот контейнер является зашифрованным и может быть подключён только при вводе верного пароля. После ввода пароля, контейнер отображается как дополнительный диск (как вставленная флешка). Любые файлы, помещённые на этот диск (т.е. в контейнер), шифруются. Пока контейнер подключён, вы беспрепятственно можете копировать, удалять, записывать новые файлы, открывать их. Как только контейнер отключён, все файлы на нём становятся абсолютно недоступными, пока вновь не будет выполнено его подключение, т.е. пока не будет введён пароль.

Работа с файлами в зашифрованном контейнере ничем не отличается от работы с файлами на любом другом диске.

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

Как установить VeraCrypt в Windows

С TrueCrypt имела место полушпионская история - были созданы сайты для «скачать TrueCrypt», на них бинарный файл (ну естественно!) был заражён вирусом/трояном. Те, кто скачивал TrueCrypt с этих неофициальных сайтов заражали свои компьютеры, что позволяло злоумышленникам воровать персональные информацию и способствовать распространению вредоносного ПО.

Вообще-то, все программы нужно скачивать только с официальных сайтов. И уж тем более это касается программ, которые затрагивают вопросы безопасности.

Официальными местами размещения установочных файлов VeraCrypt являются:

Установка VeraCrypt в Windows

Имеется мастер установки, поэтому процесс установки VeraCrypt схож с аналогичным процессом других программ. Разве что можно пояснить несколько моментов.

Установщик VeraCrypt предложит две опции:

  • Install (Установить VeraCrypt в вашу систему)
  • Extract (Извлечь. Если вы выберите эту опцию, все файлы из этого пакета будут извлечены, но в вашу систему ничего не будет установлено. Не выбирайте её если вы намереваетесь шифровать системный раздел или системный диск. Выбор этой опции может быть полезен, например, если вы хотите запускать VeraCrypt в так называемом портативном режиме. VeraCrypt не требует установки в операционную систему, в которой она будет запускаться. После извлечения всех файлов, вы можете запускать непосредственно извлечённый файл "VeraCrypt.exe" (откроется VeraCrypt в портативном режиме))

Если вы выберите отмеченную опцию, т.е. ассоциацию с файлами .hc , то это добавит удобство. Поскольку если вы создадите контейнер с расширением.hc, то по двойному клику по данному файлу будет запускаться VeraCrypt. Но минус в том, что посторонние лица могут знать, что.hc являются зашифрованными контейнерами VeraCrypt.

Программа напоминает о донате:

Если вы не стеснены в средствах, конечно же, обязательно помогите автору этой программы (он один) не хотелось бы его потерять, как мы потеряли автора TrueCrypt…

Инструкция VeraCrypt для начинающих

У VeraCrypt много разных возможностей и продвинутых функций. Но самой востребованной функцией является шифрование файлов. Далее пошагово показано как зашифровать один или несколько файлов.

Начнём с переключения на русский язык. Русский язык уже встроен в VeraCrypt. Его нужно только включить. Для этого в меню Settings выберите Language… :

Там выберите русский язык, после этого язык программы сразу поменяется.

Как уже было сказано, файлы хранятся в зашифрованных контейнерах (их ещё называют «тома»). Т.е. начать нужно с создания такого контейнера, для этого в главном интерфейсе программы нажмите на кнопку «Создать том ».

Появится мастер создания томов VeraCrypt:

Нас интересует именно первый вариант («Создать зашифрованный файловый контейнер »), поэтому мы, ничего не меняя, нажимаем Далее ,

VeraCrypt имеет очень интересную функцию - возможность создать скрытый том. Суть в том, что в файле создаётся ни один, а два контейнера. О том, что имеется зашифрованный раздел знают все, в том числе возможные неблагожелатели. И если вас силой заставляют выдать пароль, то трудно сослаться, что «зашифрованного диска нет». При создании скрытого раздела, создаются два зашифрованных контейнера, которые размещены в одном файле, но открываются разными паролями. Т.е. вы можете в одном из контейнеров разместить файлы, которые выглядят «чувствительными». А во втором контейнере - действительно важные файлы. Для своих нужд вы вводите пароль для открытия важного раздела. В случае невозможности отказать, вы раскрываете пароль от не очень важного диска. Никаких возможностей доказать, что имеется второй диск, нет.

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

Выберите место расположения файла:

Том VeraCrypt может находиться в файле (в контейнере VeraCrypt) на жёстком диске, флэш-накопителе USB и т.п. Контейнер VeraCrypt ничем не отличается от любого другого обычного файла (например, его можно перемещать или удалять как и прочие файлы). Нажмите кнопку "Файл", чтобы указать имя и путь к создаваемому файлу-контейнеру для хранения нового тома.

ВНИМАНИЕ: Если вы выберете уже имеющийся файл, VeraCrypt НЕ зашифрует его; этот файл будет удалён и заменён вновь созданным контейнером VeraCrypt. Вы сможете зашифровать имеющиеся файлы (впоследствии), переместив их в создаваемый сейчас контейнер VeraCrypt.

Можно выбрать любой расширение файла, это никак не влияет на работу зашифрованного тома. Если вы выберите расширение .hc , а также если вы при установке задали ассоциацию VeraCrypt с данным расширением, то при двойном клике по данному файлу будет запускаться VeraCrypt.

История недавно открытых файлов позволяет быстро получать доступ к этим файлам. Тем не менее, записи в истории вроде «H:\Мои офшорные счета наворованного на охулиадр долларов.doc» могут у посторонних лиц зародить сомнения в вашей порядочности. Чтобы открытые с зашифрованного диска файлы не попадали в историю, поставьте галочку напротив «Не сохранять историю ».

Выбор алгоритмов шифрования и хеширования. Если вы не уверены, что выбрать, то оставьте значения по умолчанию:

Введите размер тома и выберите единицы измерения (килобайты, мегабайты, гигабайты, терабайты):

Очень важный этап, установление пароля для вашего зашифрованного диска:

Хороший пароль - это очень важно. Избегайте паролей из одного или нескольких слов, которые можно найти в словаре (или комбинаций из 2, 3 или 4 таких слов). Пароль не должен содержать имён или дат рождения. Он должен быть труден для угадывания. Хороший пароль - случайная комбинация прописных и строчных букв, цифр и особых символов (@ ^ = $ * + и т.д.).

Теперь снова в качестве паролей можно использовать русские буквы.

Помогаем программе собрать случайные данные:

Обратите внимание, что здесь вы можете поставить галочку для создания динамического диска. Т.е. он будет расширятся по мере заполнения его информацией.

В результате у меня создан на рабочем столе файл test.hc:

Если вы создали файл с расширением.hc, то вы можете дважды кликнуть по нему, откроется главное окно программы, причём уже будет вставлен путь до контейнера:

В любом случае, вы можете открыть VeraCrypt и выбрать путь до файла вручную (Для этого нажмите кнопку «Файл»).

Если пароль введён верно, то у вас в системе появится новый диск:

Вы можете скопировать/переместить на него любые файлы. Также вы можете создавать там папки, копировать оттуда файлы, удалять и т.д.

Чтобы закрыть контейнер от посторонних, нажмите кнопку Размонтировать :

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

Настройка VeraCrypt

У VeraCrypt довольно много настроек, которые вы можете изменить для вашего удобства. Я настоятельно рекомендую поставить галочку на «Автоматически размонтировать тома при неактивности в течение »:

А также установить горячую клавишу для «Сразу размонтировать все, очистить кэш и выйти »:

Это может очень… ОЧЕНЬ пригодиться…

Портативная версия VeraCrypt в Windows

Начиная с версии 1.22 (которая на момент написания является бетой) для Windows был добавлен портативный вариант. Если вы прочитали раздел про установку, вы должны помнить, что программа и так является портативной и позволяет просто извлечь свои файлы. Тем не менее, отдельный портативный пакет имеет свои особенности: для запуска установщика вам нужны права администратора (даже если вы хотите просто распаковать архив), а портативная версия может быть распакована без прав администратора - отличие только в этом.

Официальные бета версии доступны только только . В папке VeraCrypt Nightly Builds файлом с портативной версией является VeraCrypt Portable 1.22-BETA4.exe.

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

Как правильно использовать программное обеспечение для шифрования

Несколько советов, которые помогут вам лучше сохранять свои секреты:

  1. Старайтесь не допускать посторонних лиц до вашего компьютера, в том числе не сдавайте ноутбуки в багаж в аэропортах; если есть возможность, отдавайте компьютеры в ремонт без системного жёсткого диска и т.д.
  2. Используйте сложный пароль. Не используйте тот же самый пароль, который вы используете для почты и т.д.
  3. При этом не забудьте пароль! Иначе данные будет невозможно восстановить.
  4. Скачивайте все программы только с официальных сайтов.
  5. Используйте бесплатные программы или купленные (не используйте взломанный софт). А также не скачивайте и не запускайте сомнительные файлы, поскольку все подобные программы, среди прочих зловредных элементов, могут иметь килоггеры (перехватчики нажатий клавиш), что позволит злоумышленнику узнать пароль от вашего зашифрованного контейнера.
  6. Иногда в качестве средства от перехвата нажатий клавиш рекомендуют использовать экранную клавиатуру - думается, в этом есть смысл.