Продукт BestCrypt Volume Encryption, разработанный финской компанией Jetico, представляет собой кроссплатформенный коммерческий инструмент для шифрования разделов дисков. От других продуктов шифрования дисков BestCrypt Volume Encryption отличается использованием нового алгоритма хеширования Scrypt, использующегося для преобразования пароля пользователя в двоичный ключ шифрования. О том, как этот выбор повлиял на безопасность зашифрованных дисков — в этой статье.
Шифрование дисков и криптоконтейнеры
Когда речь заходит о шифровании дисков, необходимо различать полнодисковое шифрование (шифрование дисков или разделов) и шифрование контейнеров (криптоконтейнеры). Представители первого лагеря — системы шифрования BitLocker (Windows), FileVault 2 (macOS), LUKS (Linux). Типичный криптоконтейнер — приложение VeraCrypt, которое также поддерживает и вариант полнодискового шифрования.
Продукты семейства BestCrypt от финского производителя Jetico поддерживают оба режима шифрования. BestCrypt Volume Encryption — кроссплатформенный коммерческий инструмент для шифрования разделов дисков; в качестве криптоконтейнера выступает другой продукт, BestCrypt Container Encryption.
От других продуктов шифрования дисков BestCrypt Volume Encryption отличается использованием нового алгоритма хеширования Scrypt, использующегося для преобразования пароля пользователя в двоичный ключ шифрования. Алгоритм Scrypt специально разработан для предотвращения атак, использующих аппаратное ускорение. В результате перебор паролей к BestCrypt Volume Encryption реализован только средствами центрального процессора; ускорение на GPU недоступно.
Ранее мы уже рассматривали защиту контейнеров BestCrypt. Сегодня же мы поговорим о шифровании диска посредством BestCrypt Volume Encryption 5 и 4.
Шифрование
Так же, как и большинство других средств шифрования диска (в частности, VeraCrypt), BestCrypt поддерживает выбор алгоритмов шифрования. Поддерживаются алгоритмы AES, ARIA, Camellia, Serpent и Twofish. Разработчики BestCrypt утверждают, что каждый алгоритм реализован в максимально безопасной конфигурации, с ключом максимальной длины, в режиме шифрования XTS. Напомним, что реальная безопасность зашифрованного диска (и скорость перебора паролей к нему) совершенно не зависит от выбранного алгоритма шифрования. Выбор шифра влияет исключительно на скорость доступа к файлам и загрузку процессора: из всего списка AES — единственный алгоритм с аппаратным ускорением инструкциями AES-NI. Все остальные алгоритмы реализуются на современных процессорах программным способом, и чтение-запись файлов будут происходить заметно медленнее.
На безопасность влияет выбор хэш-функции для преобразования пароля в ключ, а также число итераций этой хэш-функции.
Хэш-функция
Важнейший момент, необходимый для понимания принципа работы современных средств шифрования диска, заключается в том, что пароль пользователя не используется для шифрования данных — ни напрямую, ни в виде хэша. Данные зашифрованы двоичным ключом, который генерируется случайным образом:
Для чего тогда нужен пароль? Паролем пользователя (а точнее — двоичным ключом, полученным на его основе в результате многочисленных раундов одностороннего математического преобразования) будет зашифрован тот самый ключ, которым шифруются данные. Более того, в некоторых продуктах (например, BitLocker) используется ещё один ключ-посредник, который шифрует ключ шифрования данных, а сам защищается ключом, сгенерированным на основе пароля пользователя.
Как видим, для успешного подбора пароля нет необходимости расшифровывать данные, хранящиеся в зашифрованном диске; достаточно расшифровать ключ шифрования данных. Соответственно, для настройки атаки нет необходимости открывать весь зашифрованный раздел или контейнер — достаточно небольшого файла, в котором содержатся метаданные шифрования.
Однако вернёмся к хэш-функции. Традиционно в программах шифрования дисков используются хорошо изученные хэш-функции — SHA-512, SHA-256, Whirlpool (512-бит), а временами даже устаревшая и небезопасная SHA-1. Скорость вычисления этих функций высокая, атака получилась бы очень быстрой. Чтобы замедлить скорость подбора паролей, производители средств шифрования используют многочисленные (десятки и сотни тысяч) итерации хеширования.
Разумеется, разработчики инструментов для взлома паролей не могли остаться в стороне. Так, в наших продуктах используется аппаратное ускорение средствами бытовых видеокарт, что даёт прирост скорости перебора в 50-500 раз в зависимости от формата и аппаратного обеспечения.
Этот факт, в свою очередь, не устроил разработчиков BestCrypt.
Отсутствие аппаратного ускорения
Итак, выполнение перебора на обычной бытовой видеокарты способно ускорить процесс в 50-500 раз, что кратно снижает безопасность зашифрованного диска и требует использования более длинных и сложных паролей. Разработчики BestCrypt решили исключить возможность аппаратного использования, выбрав для функции преобразования пароля новый алгоритм хеширования Scrypt. Этот алгоритм сравним по скорости вычисления на центральном процессоре с традиционным SHA-256, однако был спроектирован таким образом, чтобы для него невозможно (или очень сложно и дорого) было бы реализовать атаку с аппаратным ускорением. Суть аппаратного ускорения — в распараллеливании потоков, а для вычисления хэша Scrypt требуется большое количество оперативной памяти. Объём оперативной памяти в современных видеокартах позволяет одновременно запускать очень небольшое количество потоков, вычисляющих значение хэш-функции Scrypt; накладные расходы при этом заметно превышают выгоду от использования видеокарты.
В результате перебор паролей к дискам BestCrypt можно выполнять только средствами центрального процессора. Перебор получается небыстрый: 18 паролей в секунду на Intel Core i7-7700HQ CPU @ 2.80GHz (8 потоков) или 25 п/с на Intel Core i7-3930K CPU 3.20GHz (12 потоков). Соответственно, методом прямого перебора можно найти только самые простые пароли. Для атаки на более сложные пароли используются способы, учитывающие человеческий фактор.
Для сравнения, на том же процессоре Intel Core i7-3930K 3.2GHz x12 пароли к контейнерам BestCrypt Container Encryption находятся заметно быстрее.
BestCrypt Container Encryption, Intel Core i7-3930K CPU 3.20GHz (12 потоков):
BestCrypt Volume Encryption, Intel Core i7-3930K CPU 3.20GHz (12 потоков):
Нет извлечения ключей из оперативной памяти
Для многих зашифрованных дисков извлечение ключа шифрования непосредственно из оперативной памяти устройства, файла подкачки или гибернации — самый быстрый способ добраться до информации. При соблюдении ряда условий можно выгрузить содержимое ОЗУ компьютера в файл и сканировать этот файл на предмет ключей шифрования, которые можно использовать для монтирования или расшифровки данных.
В настоящий момент мы не поддерживаем извлечение ключей BestCrypt из оперативной памяти. Эта функция в разработке.
Наши инструменты могут взламывать пароли BestCrypt Volume Encryption 4 и 5, которые защищены шифрованием на основе паролей. Для этого выполните следующие действия.
Шаг 1: Извлечение метаданных шифрования
Первый шаг атаки — извлечение метаданных шифрования диска при помощи утилиты Elcomsoft Forensic Disk Decryptor, ограниченная версия которой входит в состав Elcomsoft Distributed Password Recovery.
Извлечение метаданных шифрования с использованием Elcomsoft Forensic Disk Decryptor:
Альтернативный способ — использование загрузочного диска Elcomsoft System Recovery:
Step 3: Перебор паролей в Elcomsoft Distributed Password Recovery
Для настройки атаки откройте метаданные шифрования BestCrypt в Elcomsoft Distributed Password Recovery.
BestCrypt исключает возможность атаки с аппаратным ускорением на GPU. В то же время вполне работоспособны распределённые атаки, использующие несколько компьютеров в локальной сети или через Интернет. Имеет смысл подключать целевые словари и использовать интеллектуальные атаки, поддерживаемые Elcomsoft Distributed Password Recovery. Существующие пароли пользователей — отличная отправная точка. Эти пароли можно извлечь из учётной записи пользователя Google, связки ключей macOS, iOS или iCloud, учётной записи Microsoft или просто извлечь из компьютера пользователя. Существующие пароли пользователя подсказывают, какие группы символов могут быть использованы:
Elcomsoft Distributed Password Recovery поддерживает многочисленные мутации слов из словаря (например, Password1, password1967 или pa$$w0rd):
Если удалось определить шаблон, по которому пользователь составляет свои пароли, то можно использовать маски:
Продвинутые атаки с использованием гибридных правил:
Производительное решение для восстановление паролей к десяткам форматов файлов, документов, ключей и сертификатов. Аппаратное ускорение с использованием потребительских видеокарт и лёгкое масштабирование до 10,000 рабочих станций делают решение Элкомсофт оптимальным для исследовательских лабораторий и государственных агентств.
Официальная страница Elcomsoft Distributed Password Recovery »
Elcomsoft Forensic Disk Decryptor обеспечивает моментальный доступ к содержимому зашифрованных дисков, созданных BitLocker, FileVault 2, PGP Disk, TrueCrypt и VeraCrypt. Доступны режимы полной расшифровки и оперативного доступа к информации. Ключи для расшифровки содержимого зашифрованных дисков извлекаются из слепка оперативной памяти компьютера, методом атаки через порт FireWire либо анализом файла гибернации. Возможно использования паролей и депонированных ключей.
Elcomsoft System Recovery поможет восстановить доступ к учётным записям к локальным учётным записям Windows и универсальной учётной записи Microsoft Account и создать образ диска для последующего анализа. Поддерживается как моментальный сброс, так и восстановление оригинального пароля. С помощью Elcomsoft System Recovery можно предоставить административные привилегии любому пользователю. Продукт поставляется вместе с лицензионной загрузочной средой Windows PE.