Криптозащита Windows Vista несовершенна

Источник: Cnews
Дмитрий Махаев

Шифрование информации может проводиться двумя путями: первый путь - применение программных методов, второй путь - шифрование с применением аппаратных средств аутентификации.

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

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

Подробнее о Vista

Например, появился BitLocker - средство для защиты данных, которое шифрует сразу весь том жесткого диска. Возможно шифрование с помощью TPM (Trusted Platform Module) версии 1.2 и BIOS с поддержкой TPM и SRTM (Static Root of Trust Measurement), также с использованием USB-ключа или ПИН - кода.


BitLocker - средство для защиты данных, которое шифрует сразу весь том жесткого диска

Алгоритм, применяемый для шифрования - AES с длиной ключа 128 или 256 бит (меняется с помощью групповых политик или WMI). Перед шифрованием используется алгоритм-диффузер (diffuser), при котором даже незначительное изменение исходного текста вызовет значительное изменение всего сектора зашифрованных данных.

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

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

Основное отличие от известной функции шифрования, встроенной в файловую систему NTFS - средство EFS (Encrypted File System), состоит в том, что в EFS необходимо вручную указывать, какие файлы надо шифровать, BitLocker же осуществляет шифрование "прозрачно", сразу при записи на защищенный им том, при минимуме вмешательств со стороны пользователя. Однако BitLocker не шифрует метаданные, загрузочные сектора и поврежденные сектора.

Следует иметь в виду, что BitLocker "привязывается" к определенному ПК, и на другом ПК (если он только не будет на 100% идентичен первому, что невозможно), данные будет невозможно (или чрезвычайно трудно) прочитать даже с использованием USB-ключа.

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

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

Кому необходимы такие системы? В первую очередь - работникам, которые не любят соблюдать рекомендации специалистов по безопасности, не собираются осваивать сторонние программы защиты информации и упорно ставят пароли на данные фирмы в виде слова password.

Плюсы и минусы BitLocker

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

Плюсы и минусы системы BitLocker в Windows Vista

Плюсы (+)  Минусы (-) 
Возможность контроля через Active Directory Пока возможен только на Windows Vista Enterprise/Ultimate/2008 Server
Работа алгоритма на уровне тома, что обеспечивает высокую степень устойчивости Недостаточно проработанная предварительная аутентификация - возможно создание руткита, изменяющего загрузочные файлы ОС - потребуется восстановление данных (при исп. без TPM чипа)
Возможность использования аппаратного средства защиты - чипа TPM Плохая поддержка многофакторной аутентификации (только TPM и USB-ключ)
Нет лазеек для госвластей и правоохранительных органов Трудности в настройке (много настроек через консоль)
Основан на алгоритме AES, считающийся достаточно надежным алгоритмом. Вследствие тесной интеграции с ОС уязвимости в последней могут быть использованы для снятия данных / ключей (пока таких случаев не зарегистрировано)
На ПК с TPM может проверить целостность загрузочных компонентов до запуска ОС Новая система, могут обнаружиться ошибки разработки
Идеальное решение для защиты от Offline атак (атаки с выключением) Требуется Vista-совместимый компьютер
Не надо платить лишние деньги - включено в ОС -
Прозрачная работа, не "грузит" систему -
Ожидается версия для XP / 2003 Server -

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

А что в XP?

В Windows XP нет поддержки BitLocker. Она предлагает для защиты данных только встроенное средство файловой системы NTFS - EFS (Encrypted File System) (эта же функция доступна и для Vista). Основное отличие от BitLocker - шифрование только файлов и каталогов. Впервые EFS появилась в Windows 2000, но в Windows XP претерпела некоторые усовершенствования. Пакеты обновления для Windows 2000 также улучшили EFS. Начиная с версии Windows XP SP1, EFS использует алгоритм AES с длиной ключа 256 бит, после чего полученный результат дополнительно шифруется парой (открытый (public) и закрытый (private)) ключей RSA.


Windows XP предлагает для защиты данных только встроенное средство файловой системы NTFS - EFS (Encrypted File System)

Технически данная система выполнена в виде драйвера, тесно связанного с драйвером NTFS и работающего в режиме ядра ОС. Для каждого файла система создает свой ключ FEK (File Encryption Key, шифровальный ключ файла), затем тело шифруется при помощи алгоритма AES (в ранних версиях - при помощи DESX), далее FEK шифруется при помощи RSA.

Зашифрованный пользовательским общим ключом FEK сохраняется в DDF (Data Decryption Field, поле расшифровки данных) шифруемого файла. Кроме того, для обеспечения возможности восстановления файла система EFS создает еще одну зашифрованную с помощью общего ключа восстановления файлов (FR, File Recovery) копию  FEK, которую помещает в поле DRF (Data Recovery Field, поле восстановления данных файла). FR создается либо доменным администратором, либо самой Windows с учетной записью администратора. Администратор, обладающий этим ключом, называется агентом восстановления данных (DRA, Data Recovery Agent).

Следует иметь в виду, что используемые закрытые (private) ключи для генерирования и защиты шифрованных данных  применяют DPAPI - интерфейс (DPAPI - Data Protection Application Interface - прикладной программный интерфейс защиты данных), который использует для защиты данных производные данные учетных записей пользователя. Как следствие, надежность шифрования данных будет зависеть от того, насколько надежен пароль пользователя. Надежными сейчас считаются пароли из 15 - 16 (и более) символов, притом, что они должны быть не только длинные, но и сложные.

Стоит отметить, что файл, зашифрованный с помощью Windows XP SP1 и выше, будет невозможно прочитать на ранних версиях Windows 2000, XP. Для решения проблемы необходимо установить алгоритм шифрования DESX; система предоставляет возможность выбора между алгоритмами DESX и AES.

Сам процесс…

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

Основная проблема заключается в том, что сертификаты для доступа к зашифрованным файлам сохраняются в системе, поэтому если злоумышленник получит непосредственный доступ к машине, на которой были зашифрованы эти файлы, то он с легкостью сможет прочитать их. Поэтому целесообразней переписывать сертификаты с ключами на USB-флешку или другой извлекаемый носитель информации. Однако в этом случае работа с зашифрованными файлами затрудняется - необходимо все время вручную устанавливать и удалять сертификаты из системы. Возможна настройка т.н. "полуавтоматического" использования, но для рядового пользователя это нетривиальная задача. Windows Vista позволяет сохранять сертификаты с ключами не на жесткий диск, а на смарт-карты, что, безусловно, является плюсом.

После потери всех ключей доступ к зашифрованным данным возможен с помощью взлома файлов - либо атаки "в лоб", направленной на перебор всех возможных комбинаций ключей, либо комбинированием атаки "в лоб" с извлеченными из соответствующих полей файла данными о FEK. В случае использования короткого пароля такие попытки оказываются довольно успешными. Например, атака типа Rainbow Table успешно взламывает такие файлы с паролем менее 11 символов. Алгоритм AES значительно более устойчив к подобного рода атакам, в отличие от DESX.

Специалистам по безопасности необходимо не забывать о том, что решение, стоит ли включать PKI в ваш вариант развертывания EFS или нет, надо принимать сразу, поскольку это влияет на многие будущие решения, касающиеся развертывания.

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

Плюсы и минусы EFS

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

Основные недостатки и достоинства системы EFS

Плюсы (+)  Минусы (-) 
Возможность выбора между двумя типами алгоритмов Надежность шифрования зависит от длины пароля учетной записи
Тесная интеграция с Проводником Windows Довольно слабая криптоустойчивость
Простота в использовании при одновременном наличии большого числа настроек Невозможность шифрования сжатых файлов, файлов с атрибутом "системный"
Большие возможности интеграции Создается очень много локальных копий сертификатов ключей
Взломщику труднее взломать систему без загрузки файла с БД паролей Если взломщик из своей организации, то такая защита ничего не даст
Работа с Active Directory -
Постоянное совершенствование -
Возможность (в Vista) переписать сертификаты на смарт-карту -
Шифрование как отдельных файлов, так и целых каталогов -

Источник: Данные автора, 2007

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

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

Для повышения надежности EFS и надежности хранения паролей для входа в систему и других паролей можно задать дополнительное шифрование файла с паролями (доступно на системах Windows XP и выше). Можно поставить пароль на загрузку и расшифровку этого файла. Для этого необходимо в командной строке ввести syskey, после чего в появившемся окне управления шифрованием базы данных паролей нажать "обновить", и выбрать режим требования пароля при запуске системы. Затем необходимо указать пароль. Теперь при перезагрузке система будет предлагать ввести сначала пароль для загрузки базы данных паролей, а затем предложит ввести пароль к аккаунту пользователя.

Сравним…

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

Слабое место обеих систем - в аутентификации пользователя, имеющего доступ к данным. В случае с BitLocker`ом возможен взлом ключей, хранящихся в области метаданных, в частности, путем помещения в загрузочный сектор трояна, который сможет перехватить ключи, которыми обменивается система с USB-ключом, и/или перехватить информацию из TPM чипа, требуемую при аутентификации пользователя.

При наличии внутри ОС трояна вся защита может оказаться бесполезной - вредоносная программа может просто передать расшифрованный документ по сети, поэтому рекомендуется важные файлы дополнительно шифровать с помощью программ сторонних разработчиков, использующих отличные от AES алгоритмы, например, BLOWFISH, или наши отечественные разработки, основанные на алгоритме ГОСТ 28147-89.

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

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

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

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

Данная система подходит для шифрования данных, не представляющих большой ценности, либо быстро устаревающих и с течением времени становящихся непривлекательными для взломщиков. Файлы, защищенные с помощью EFS, практически на 100% недоступны для типичного пользователя ПК, не обладающего знаниями в области ИБ.

В качестве плюса данной системы можно упомянуть тот факт, что она обладает массой настроек, позволяющих системному администратору задать необходимый уровень защиты данных. Систему довольно легко развернуть на предприятиях среднего размера, возможна интеграция в инфраструктуру PKI (Public Key Infrastructure - инфраструктура открытых ключей), с Active Directory, проводником Windows.

К потенциальным уязвимостям этой системы можно отнести тот факт, что создаваемые при работе с ПО различные временные файлы не шифруются EFS и теоретически возможно, воспользовавшись соответствующим ПО, восстановить эти файлы и получить доступ к документу. Возможным решением проблемы является применение  специальных утилит для "затирания" пустого места на жестком диске (так называемыми Wipe-утилитами). Кроме того, в качестве дополнительной меры можно задать шифрование каталогов, на которые ссылаются temp% и %tmp%, однако это будет неэффективно в случае с такими программами, как MS Word и AutoCAD, которые создают копии документов в рабочем каталоге.


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=7759