Рубрика:
Безопасность /
Сетевая безопасность
|
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|
Андрей Бирюков
Защищаем локальные ресурсы сети
На сегодняшний день деятельность практически любой компании немыслима без использования информационных технологий. Как правило, данные, используемые в работе, стоят дороже оборудования, поэтому необходимо грамотно защищать конфиденциальные данные от посторонних лиц. Какие существуют средства шифрования данных, как их лучше использовать?
Приступая к работе
Проблемы, связанные с защитой информации, на сегодняшний день приобретают все более важное значение.
Различные методики шифрования и аутентификации позволяют защитить передаваемые по сети данные от несанкционированного доступа.
Но и локальные ресурсы тоже нуждаются в защите. Файлы и папки, хранящиеся на жестких дисках серверов, рабочих станций и, что особенно важно, ноутбуков пользователей, зачастую представляют интерес для недоброжелателей.
Если защиту серверов и стационарных рабочих мест пользователей можно обеспечить физически, посредством охраны, камер слежения, сигнализации и т. д., то физическую безопасность ноутбуков обеспечить не всегда возможно.
В последнее время в новостях регулярно можно встретить сообщения о том, что в той или иной компании потеряны ноутбуки, содержавшие конфиденциальную информацию. Так что проблема защиты мобильных данных является весьма актуальной.
Одним из способов защиты, который я буду описывать, является шифрование.
В статье я не буду касаться требований, предъявляемым к госструктурам и компаниям, работающим с секретными документами (требования 1Д, 1Г и другие [4]).
Также я не буду касаться аспектов использования шифрования в банках (их стандарты определены в соответствующих документах ЦБ РФ). Задачи обеспечения шифрования во всех этих организациях должны обеспечивать специалисты из «первых отделов».
Я не буду рассматривать коммерческие решения Enterprise-уровня, как аппаратные, так и программные, так как внедрение таких систем требует серьезных финансовых затрат и высокой квалификации специалистов, работающих с ними.
Таким образом, я буду описывать обеспечение защиты локальных ресурсов посредством шифрования для компании небольших и средних размеров (50-250 рабочих мест), в которых имеются файловые серверы (возможно, не под Windows), почтовые серверы, базы данных, сотрудники регулярно ездят в командировки с корпоративными ноутбуками, а также используют сменные носители для переноса информации.
Наивно полагать, что в компаниях такого типа нет информации, которая могла бы заинтересовать кого-то, кроме самих сотрудников этой организации.
Различные списки поставщиков и клиентов, бухгалтерская отчетность, контакты, переписка – все это может представлять интерес для конкурентов.
Алгоритмы и их характеристики
Однако прежде чем приступить к описанию приложений и технологий, осуществляющих шифрование, необходимо рассмотреть ряд технических вопросов, которые нужны для понимания основ криптографии, используемой во всех системах защиты ресурсов, которые описаны в статье. Прежде всего это технология открытых ключей.
Всем известно шифрование с симметричными ключами. Оно предусматривает использование одного ключа как для шифрования, так и для дешифрования данных.
Такой способ шифрования аналогичен хранению документа в сейфе. Документ помещают в сейф и запирают с помощью определенного ключа. Чтобы открыть сейф, используется тот же ключ. Это надежный и быстрый метод, однако он не совсем подходит для шифрования данных пользователя.
Поскольку ключ шифрования должен оставаться конфиденциальным, возникают трудности в передаче этого ключа в случаях, когда необходимо передать данный ключ по незащищенному каналу, например, для расшифровки данных получателем при переписке.
Шифрование с открытым ключом (асимметричное шифрование) возникло при решении задачи предоставления шифрованных данных другим людям, когда не существует защищенного маршрута, по которому можно передать ключ шифрования.
Для шифрования с открытым ключом используется пара ключей: открытый ключ, который можно распространять, и личный ключ, который остается секретным.
Чтобы зашифровать сообщение, отправляемое какому-либо пользователю, в алгоритме шифрования используется открытый ключ получателя. Но зашифрованное сообщение можно дешифровать только с помощью личного ключа получателя.
Этот метод аналогичен сейфу с прорезью. Через эту прорезь можно поместить в сейф документ, но только человек с подходящим личным ключом может извлечь этот документ.
К сожалению, алгоритмы шифрования с открытым ключом работают медленнее симметричных, что соответственно накладывает определенные требования к производительности серверов.
Для лучшего понимания упоминающихся в статье алгоритмов шифрования я привожу таблицу, содержащую сравнительные характеристики различных симметричных алгоритмов шифрования.
Характеристики алгоритмов
Алгоритм шифрования
|
Размер ключа, бит
|
Длина блока, бит
|
Число циклов
|
Основные операции
|
DES
|
56
|
64
|
16
|
Подстановка, перестановка, кольцевая сумма
|
IDEA
|
128
|
64
|
8
|
Умножение по модулю 216+1, сложение по модулю 216, кольцевая сумма
|
Blowfish
|
32-448
|
64
|
16
|
Сложение по модулю 232, подстановка, кольцевая сумма
|
ГОСТ 28147-89
|
256
|
64
|
32
|
Сложение по модулю 232, перестановка, кольцевая сумма, циклический сдвиг
|
Rijndael
|
256
|
128
|
10, 12, 14
|
Более сложные операции
|
Поясню содержимое таблицы:
- Размер ключа – определяет длину использованного при шифровании ключа.
- Блоки данных – используются при осуществлении операций замены.
- Число циклов – это количество операций, за которое осуществляется полное шифрование данных.
- Основные операции – это те логические действия, которые производятся при шифровании.
Из всех этих сведений для нас важны прежде всего длина ключа и количество операций.
По совокупности этих параметров наиболее оптимальным является ГОСТ, но данный алгоритм поддерживается не всеми приложениями, поэтому в случае его отсутствия можно использовать Blowfish или Rijndael, в зависимости от реализации в данном приложении.
Rijndael является относительно новым алгоритмом, поэтому он реализован не во всех приложениях шифрования.
Что предлагает Windows
Один из самых распространенных способов шифрования, с которым мне приходилось сталкиваться, это архивация файлов с использованием пароля.
Я не буду рассуждать о криптографической надежности такого метода защиты, но хотелось бы отметить, что это не самый быстрый способ хранения, ведь для извлечения какого-либо файла из большого архива требуется довольно много времени.
К тому же при архивации теряются разрешения на доступ к данному файлу на уровне файловой системы (NTFS permissions).
Так что более удобным решением является использование штатного средства операционной системы Windows – EFS (Encrypted File System).
EFS шифрует все данные с помощью симметричного ключа. Затем данный ключ шифруется с помощью асиметричного шифрования. При этом файловая система производит доступ к открытому и личному EFS-ключам пользователя. Поэтому файлы, шифруемые с помощью EFS, не могут предоставляться для разделяемого использования другими пользователями.
Для защищенного разделения файлов с другими пользователями должен использоваться другой метод шифрования (например, S/MIME).
Кроме того, если файлы, шифруемые с помощью EFS, сохраняются на другой машине, то для дешифрования на эту машину должна быть импортирована информация о ключах данного пользователя.
Все это замечательно работает, пока нормально функционирует операционная система. В случае сбоя и потери ключей шифрования вам потребуется агент восстановления, который позволяет восстановить потерянные файлы.
Делается это следующим образом: как уже упоминалось, EFS шифрует все данные с помощью одного симметричного ключа. Этот симметричный ключ затем шифруется дважды: один раз с помощью открытого ключа EFS данного пользователя, чтобы можно было выполнить дешифрование, и еще один раз с помощью открытого ключа агента восстановления, чтобы можно было восстановить данные.
Здесь сразу обращаю ваше внимание на то, что необходимо позаботиться о защите агента восстановления, иначе им может воспользоваться взломщик для расшифровки данных. О том, как это лучше сделать, речь пойдет далее.
EFS на практике
Приступим к реализации шифрования в нашей Windows-сети.
Прежде всего необходимо определиться с политикой восстановления в случае потери ключа. Так как шифруемые данные по определению представляют особую важность (иначе мы их не шифровали), нужно хорошо продумать политику восстановления.
Чтобы восстановить файл, используется сертификат для агента восстановления. В домене Active Directory для агента восстановления автоматически указывается учетная запись Administrator на первом контроллере данного домена.
Но вы можете самостоятельно переназначить агентов восстановления. Только не забывайте о безопасности, так как агент восстановления может расшифровать любой файл в домене.
Лучше всего создавать специальные учетные записи, которые будут использоваться только в качестве агентов восстановления и не для чего-либо еще.
Также «хорошим тоном» является снятие роли агента восстановления с учетной записи Administrator.
Итак, для добавления агента восстановления необходимо произвести следующие действия.
В оснастке «Active Directory Users and Computers» выберите нужный домен или «Organization Unit (OU)», затем «Properties». Выбираем нужную политику, далее «Edit». После этого выбираем«Computer Configuration -> Windows Settings -> Security Settings -> Public Key Policies». Под узлом «Public Key Policies» выбираем «Encrypting File System», нажимаем правую кнопку мыши – «Add Data Recovery Agents» (см. рис. 1).
Рисунок 1. Настройки EFS в групповой политике
С помощью мастера добавляем агентов. После этого щелкните правой кнопкой мыши на каком-либо агенте восстановления и укажите «All Tasks», далее «Export».
С помощью мастера Certificate Export Wizard экспортируйте ключ восстановления.
Ключ лучше всего экспортировать на переносимый носитель, например на дискету, которую необходимо хранить в безопасном месте. Ни в коем случае не храните этот ключ на жестком диске, так как это сведет на нет все усилия по защите данных.
Далее выполните вход с помощью учетной записи этого агента восстановления и затем откройте оснастку «Certificates». В дереве консоли выберите «Personal» и затем «Certificates». После этого выбираем сертификат, соответствующий ключу восстановления, и нажимаем «Delete».
Все, теперь у вас остался только один ключ для расшифровки – тот, который вы сохранили на дискете. Теперь даже в случае хищения ноутбука или жесткого диска злоумышленники не смогут прочитать данные.
Таким образом, с помощью штатных средств операционной системы Windows можно осуществить защиту хранящихся локально данных.
Однако не стоит забывать о различных съемных носителях, таких как компакт-диски, флэш-карты и другие.
Опять-таки многие используют запароленные архивы, но, на мой взгляд, специализированные программы справляются с задачей защиты информации гораздо лучше.
Например, специализированные программы позволяют подключать зашифрованные данные в качестве отдельного диска, тем самым облегчая жизнь пользователям, которые не слишком хорошо владеют компьютером. Кроме того, специализированные программы позволяют использовать различные алгоритмы шифрования, что также является преимуществом.
Утилиты для шифрования
Программы для Windows, о которых пойдет речь далее, являются свободно распространяемыми, так что вы без лишних проблем и затрат можете их использовать.
Утилита Cryptainer LE
Данная утилита позволяет создавать зашифрованные диски-контейнеры, размещаемые в файлах, представленных в системе как хранилища защищаемой информации.
Для примера, создадим небольшой контейнер размером 1 Мб.
К слову, бесплатная версия программы позволяет создавать контейнеры объемом до 25 Мб. Для карт памяти и различных мобильных носителей этого вполне достаточно.
Итак, получить дистрибутив можно по адресу [1]. Устанавливаем программу, далее выбираем «New Volume». В открывшемся окне мастера указываем, где должен находиться зашифрованный файл-контейнер.
Enter Volume Label – метка тома, которая будет записана при инициализации или разметке диска.
Нужно быть внимательными при указании имени раздела, так как может возникнуть конфликт при подключении диска, в случае если диск с таким именем уже используется в системе.
Затем указываем размер диска (не более 25 Мб). Указываем пароль и, наконец, выбираем алгоритм шифрования. Из предлагаемого (не слишком богатого) списка более предпочтительным является алгоритм Blowfish.
В случае если вам не требуется форматировать новый раздел (например, если вам нужна файловая система NTFS), выделяете соответствующую метку.
Нажимаете «Proceed to Create New Volume» и получаете новый контейнер (см. рис. 2).
Рисунок 2. Мастер создания нового контейнера
Теперь можете открыть «Мой компьютер» и увидеть новый подключенный диск. С этим диском вы можете работать так же, как и с обычным. По завершении работы нажимаете «Unload» и получаете зашифрованный контейнер.
Файл контейнера (путь к которому можно посмотреть в разделе «Tools -> Show the Primary Volume File Name») вы можете скопировать на любой съемный носитель и подключить уже на другой машине, на которой установлен Cryptainer.
Из интересных особенностей данной утилиты можно также отметить наличие мастера, позволяющего создавать отдельные файлы для их отправки по электронной почте, а также зашифрованные файлы в формате EXE, то есть выполнимые файлы, которым не требуется наличие установленного дистрибутива Cryptainer.
Отечественная разработка VDFCrypt
Еще одно интересное, свободно распространяемое решение. Позволяет создавать зашифрованные диски, аналогично Cryptainer, однако алгоритмов шифрования здесь намного больше, в том числе ГОСТ 28147 – российский стандарт шифрования.
Также VDFCrypt позволяет работать с шифрованными контейнерами через командную строку. Это удобно при использовании WSH сценариев и командных файлов.
Программа проста в работе. Получив дистрибутив по адресу [2], устанавливаем VDFCrypt.
После установки нам доступна GUI-версия программы, консольная версия, а также конвертер, позволяющий преобразовывать данные, зашифрованные с помощью одного алгоритма шифрования, в данные, зашифрованные другими алгоритмами.
Открываем VDFCrypt, в разделе Диски приводится список всех дисковых устройств, а также свободных букв для наименования (см. рис. 3).
Рисунок 3. Список дисковых устройств
Далее выбираем свободную букву, нажимаем правую кнопку мыши «Создать диск…».
Затем указываем имя файла-контейнера, объем диска, алгоритм шифрования (к примеру ГОСТ) и пароль. Шифрованный диск создан.
Теперь с ним можно работать так же, как с обычным устройством. Также вы можете назначить горячие клавиши для работы с контейнерами.
Удобство работы с консольной версией VDFCrypt можно ощутить при использовании программы на большом числе рабочих станций.
Например, вот так можно подключить шифрованный контейнер local.vdf, размером 10 Мб, с именем диска W и автоматическим выполнением файла x:\start.bat, после подключения диска:
vdfcryptc -M c:\local.vdf -S 10M -G -r x:\start.bat -D W
Такую команду можно прописать в групповую политику домена и тем самым автоматизировать работу пользователей с зашифрованными дисками.
Фактически вы можете сделать работу с шифрованными разделами прозрачной для пользователя, то есть он даже не будет знать, что этот диск зашифрован. Как следствие будет меньше вопросов к системным администраторам.
В состав VDFCrypt входит также конвертер, позволяющий изменять алгоритм шифрования. То есть если у вас имеется файл-контейнер, зашифрованный алгоритмом Blowfish, но стандартом шифрования данных в вашей компании является ГОСТ, то вы можете без труда конвертировать данный файл в нужный формат (естественно, при наличии пароля на расшифровку исходной версии).
Microsoft Private Folder 1.0
Завершая обсуждение утилит для шифрования файлов под Windows, я опишу утилиту от Microsoft, позволяющую создать специальную зашифрованную папку «My Private Folder».
Утилита является бесплатной, хотя есть и расширенная, платная версия. Дистрибутив утилиты представляет собой MSI-пакет, что позволяет развертывать ее с помощью групповых политик.
После установки необходимо первым делом задать пароль, и затем пользователь может работать со своей частной папкой.
Для отключения Private Folder достаточно нажать на значок программы в трее (правом нижнем экрана).
Данная утилита обладает куда более скромным функционалом, но зато проста в обращении, что существенно облегчает жизнь пользователям. Получить данную утилиту можно по адресу [3].
Завершая разговор
Вот мы и рассмотрели основные средства для защиты различных локальных ресурсов корпоративной сети.
Завершая статью, хотелось бы отметить, что все описанные средства будут надежно защищать ваши ресурсы только в случае соблюдения администраторами и пользователями политики безопасности. То есть пользователи не должны приклеивать на монитор бумажки со списком паролей, администраторы не должны хранить ключи к шифрам на том же диске (на той же машине), что и зашифрованные данные, и так далее.
Но следует обратить внимание на то, что средства шифрования, как, впрочем, и другие средства защиты, не должны создавать помех в работе пользователей, в противном случае нарушения корпоративной политики безопасности неизбежны.
Таким образом, необходимо соблюдать разумный баланс между безопасностью и производственным процессом.
- http://www.cypherix.com/downloads.htm – информация по Cryptainer LE.
- http://vdfcrypt.narod.ru – информация по VDFCrypt.
- http://www.securitylab.ru/software/271436.php – информация по My Private Folder.
- ГОСТ Р 51241-98. Средства и системы контроля и управления доступом.
Facebook
Мой мир
Вконтакте
Одноклассники
Google+
|