Защита от защиты
АрхивТе, кому приходилось заниматься защитой данных в сетях, наверняка помнят, что во времена Windows NT любые изощрения были бессильны против примитивного метода получения физического доступа к носителю.
Те, кому приходилось заниматься защитой данных в сетях, наверняка помнят, что во времена Windows NT любые изощрения были бессильны против примитивного метода получения физического доступа к носителю. Открутил четыре винта, положил накопитель в карман, и все дела, или переписал на компакт-диск файл резервного копирования с расширением bkf.
Даже если система не запустится на другом компьютере — не беда: ставите новую копию ОС, регистрируетесь в ней администратором, и никакие права доступа вас не касаются — take ownership, после чего любые разрешения перезаписываются. Кроме того, существуют утилиты чтения NTFS-разделов из Windows 95/98, которым тоже плевать на права доступа. Разумеется, этот метод помогал достать данные и в случаях краха системы. Ситуация напоминает мне бабушек-консьержек в подъездах, которые в лучшем случае не пустят хулиганов-малолеток, да и то если не испугаются.
Разумеется, такое положение дел не устраивало никого, и в Windows 2000 появились более серьезные средства защиты данных на основе сильного шифрования. В версиях XP и 2003 система криптозащиты была модифицирована. Называется она EFS (Encrypted File System), и внешне в Windows XP представлена единственным флажком в «Свойствах» объекта. EFS поддерживается только на NTFS-разделах, при переносе данных на разделы FAT или на другие компьютеры шифрование теряется. У шифрованных файлов и папок внешне ничего не изменяется кроме цвета подписи — он становится зеленым. В Windows 2000 и XP по умолчанию используется алгоритм DESХ, а в Windows XP SP1 и Windows 2003 — AES с 256-битным ключом (для XP может быть разрешено также использование 3DES). Взлом этих алгоритмов вряд ли возможен даже при наличии у взломщика незашифрованных копий отдельных файлов. Для пользователя, которому принадлежит объект, порядок работы с ним тоже не меняется, файловая система обеспечивает полностью «прозрачное» кодирование/ декодирование. Шифрованные данные не могут принадлежать группе пользователей, можно лишь открыть общий доступ к этим папкам и файлам и там определить права для группы. Всем остальным система тупо сообщает «Отказано в доступе» или «Файл уже используется» — в зависимости от приложения, с которым сопоставлен данный тип объектов. Мало того, физический перенос шифрованных файлов сторонними средствами в другую систему (например, установка накопителя с шифрованными данными вторым диском и попытка открыть документ или изменить права доступа к нему из-под администраторской записи другой системы) не даст положительного результата: содержимое файла зашифровано. Создание нового пользователя с именем и паролем, в точности повторяющими эти параметры из системы, в которой были зашифрованы данные, тоже не приведет к успеху: при шифровании используется не пара имя-пароль, а специальный ключ, который генерируется при создании пользователя заново независимо от имени и пароля. Прежний владелец объекта отображается на страничке прав доступа, но зарегистрироваться под его именем в другой копии системы вы не сможете.
Все это хорошо, но новые решения, как и всегда, порождают новые проблемы. В данном случае проблема в том, что при крахе операционной системы получение доступа к шифрованным данным находится под большим вопросом, если только заранее не были приняты специальные меры. Разумеется, проблема восстановления шифрованных данных не прошла мимо разработчиков Microsoft, и еще в Windows 2000 они оставили пути для их восстановления. При невозможности доступа к шифрованным данным это может сделать не только владелец файлов, но и другой пользователь, объявленный как Data Recovery Agent. В сетях с доменами на базе Active Directory таковым «агентом» изначально назначается администратор домена. В Windows 2000 необходимые ключи для восстановления данных создаются при его первой регистрации, а до этого момента шифрование данных недоступно. В версиях XP и 2003 это ограничение отсутствует, и администратор должен позаботиться о создании такого «агента» (им можно назначить любого пользователя). Важно то, что «агент» должен быть создан до того, как пользователь зашифрует свои данные, — в этом случае ключ восстановления «агента» добавляется к шифрованной информации. Если сделать это позже, никаких путей для расшифровки не остается.
Для компьютеров, которые принадлежат к рабочей группе, «агент» должен быть создан вручную и установлен в системе. Выдача самому себе сертификата восстановления данных выполняется командой CIPHER /R:filename (filename — произвольное имя файла без расширения). Команда создает два файла с расширениями PFX и CER.
Кроме того, прежде чем шифровать собственные данные, сделайте резервную копию своего сертификата шифрования и ключей, которые можно сохранить в виде файлов, например на дискете. В случае краха системы эти файлы можно будет использовать для импорта ключей. В Windows 2003 кнопка создания резервной копии ключей есть в графическом интерфейсе свойств объекта, для XP и 2000 эту процедуру придется делать вручную командой CIPHER /X:filename.
В некоторых случаях, когда важнее не потерять данные, чем скрыть их от постороннего глаза, проще заранее исключить саму возможность возникновения подобных ситуаций, запретив шифрование вообще. Если компьютер входит в сеть с доменом, то разрешение или запрет использования шифрования для него устанавливается администратором путем редактирования групповой политики. Для компьютеров, не входящих в домен, запрет использования EFS возможен путем редактирования реестра: ключу HKLM\SOFTWARE\ Microsoft\Windows NT\CurrentVersion\EFS\EfsConfiguration нужно присвоить значение 0х01.
Подробнее об этом можно прочитать здесь:
- support.microsoft.com/ default.aspx?scid=kb;EN-US;q223316
- support.microsoft.com/ default.aspx?scid=kb;EN-US;q241201
- support.microsoft.com/ default.aspx?scid=kb;EN-US;q242296