Алексей Шелестов
Zserver Suite: защищаем корпоративные хранилища данных
Наиболее распространенный способ хищения конфиденциальной информации – кража носителей и архивных копий и доступ посторонних лиц к серверу. Как обеспечить защиту данных, хранимых и обрабатываемых на корпоративных серверах?
Утечка даже части конфиденциальной информации может нанести непоправимый вред компании, начиная от потери большей части клиентов до остановки бизнеса. Мы зачастую отдаем сервер или жесткий диск на ремонт или замену, выбрасываем старые архивные ленты, в лучшем случае тщательно стараясь удалить некогда хранимую на нем конфиденциальную информацию низкоуровневым форматированием, либо специализированными утилитами, что не всегда бывает успешно.
Некогда популярные уничтожители конфиденциальной информации на жестких дисках посредством электромагнитного импульса уходят в прошлое, поскольку ценность хранимой информации стремительно растет, разница между актуальными данными и архивной копией зачастую критична для бизнеса.
Кроме этого, в последнее время все большую популярность завоевывает аутсорсинг различных информационных служб, и нередко возникает ситуация, когда сервер с конфиденциальной информацией размещается в стороннем дата-центре, а архивные ленты хранятся в депозитарии за пределами контролируемой территории предприятия.
В этих случаях количество посторонних людей, которые могут получить доступ к информации, существенно возрастает, и, что гораздо хуже, владелец этой информации теряет возможность контролировать процесс доступа к информации.
Рассмотренные угрозы имеют одну общую черту – они характеризуются тем, что модель нарушителя предполагает возможность физического доступа к носителям информации. Это означает, что традиционные средства разграничения доступа, которыми могут быть оснащены информационные системы, не решают проблемы, поскольку физический доступ к носителям означает обход всех таких средств защиты. Действительно, как может помочь корпоративный firewall в случае, если злоумышленник каким-либо образом получил в свое распоряжение жесткий диск с сервера или архивную магнитную ленту?
Не стоит и недооценивать вероятность наступления такого случая. Только за 2005 – начало 2006 года произошло несколько десятков крупных инцидентов, связанных с пропажей носителей конфиденциальной информации с участием таких всемирно известных компаний как Citigroup, Ernst & Young, Bank of America и т. д.
Для того чтобы защитить информацию на носителе, к которому возможен физический доступ посторонних лиц, необходимо использовать криптографические средства. Только когда информация на носителе зашифрована, а ключ шифрования хранится в недоступном месте, можно не беспокоиться, если сам носитель окажется в руках злоумышленника. Сегодня речь пойдет об одном из эффективных способов защиты конфиденциальной информации, хранящейся на дисках и лентах, с применением криптографических средств.
На рынке программного обеспечения существует несколько программно-аппаратных комплексов для защиты конфиденциальной информации на рабочих станциях и серверах посредством шифрования. Мы расскажем вам о возможностях комплекса Zserver Suite компании SecurIT (http://www.securit.ru). В состав комплекса входят программные продукты Zserver и Zbackup, которые помогут минимизировать риски утечки конфиденциальных сведений.
Zserver позволит вам эффективно:
- защищать разделы жестких дисков от несанкционированного доступа;
- оперативно блокировать и уничтожать информацию с любого ПЭВМ, имеющего соединение с сервером, радиоустройства, либо телефона;
- скрывать сам факт наличия конфиденциальной информации на сервере;
- безопасно транспортировать информацию на любых носителях;
- контролировать и разграничивать доступ к защищаемой информации.
Общее описание программноаппаратного комплекса
Программно-аппаратный комплекс Zserver – средство защиты конфиденциальной информации от несанкционированного доступа посредством шифрования разделов диска «на лету».
Предназначен для защиты информации, хранимой как на корпоративных серверах, так и на рабочих станциях под управлением следующих операционных систем:
- MS Windows NT/2000/XP/2003
- Novell NetWare
- Linux
Zserver работает с простыми и динамическими дисками (составными, зеркальными, Raid-массивами). Имеется возможность установки Zserver на кластер из серверов на основе MS Cluster Service.
Требования к Zserver определяются требованиями операционной системы. Zserver неприхотлив в ресурсах. Основные ресурсы требуются на реализацию криптографических процессов симметричными алгоритмами шифрования. Шифрование и дешифрование данных осуществляется «на лету» при соответствующих операциях записи и чтения. Комплект Zserver состоит из дистрибутива программного обеспечения, устройства для работы со смарт-картами ACR ACS-30U (USB), лицензионного ключа защиты (LPT или USB), двух микропроцессорных смарт-карт для хранения ключей, устройства «красной кнопки», подключаемой к COM-порту.
Структура программной части Zserver состоит из трех модулей:
- сервер защиты данных (ядро системы)
- консоль управления сервером
- модуль подачи сигнала тревоги
Установка Zserver проста и не требует дополнительных навыков. Весь процесс инсталляции занимает не более 10 минут с одной перезагрузкой.
Сервер защиты данных
Сервер защиты данных (ядро системы) устанавливается непосредственно на сервер с защищаемой информацией. Запускается с помощью службы «SecurIT Zkernel» от пользователя System в автоматическом режиме при подсоединенном лицензионном ключе защиты. Служба не имеет зависимостей, что делает её устойчивой к сбоям в операционной системе. В отсутствии ключа защиты данную службу запустить невозможно. Если при уже запущенной службе отключить физически ключ защиты Zserver, то через некоторое время на этом сервере происходит «тревога».
Консоль управления
Всё управление системой Zserver ведется с единой для всех продуктов компании SecurIT консоли управления. Она может устанавливаться как на сервер, так и на любую рабочую станцию, имеющую соединение с сервером по протоколу TCP/IP. В случае использования консоли управления на сервере, соединение осуществляется по внутренней петле на TCP-порт. По умолчанию используется 1245 порт. Для минимизации риска номер TCP-порта можно изменить с помощью настроек Zserver.
Для разграничения полномочий и доступа к консоли используется встроенная авторизация средствами Zserver, что позволяет разграничить администраторов сервера и администраторов безопасности.
С версии 3.0 Zserver возможно управление настройками нескольких серверов одновременно с одной консоли управления. Консоль управления Zserver позволяет управлять пользователями, ключами, носителями и общими ресурсами. Соединение консоли управления с сервером защиты данных осуществляется по зашифрованному каналу посредством автоматически создаваемого одноразового сессионного ключа. Процедура выработки сессионного ключа осуществляется на основе Diffie-Hellman EKE, данные шифруются 128-битным ключом по алгоритму RC5.
Консоль администратора Zserver
Алгоритмы шифрования
Генерация ключа шифрования осуществляется при непосредственном участии пользователя, с применением случайных чисел. В качестве генератора случайных чисел используются движения мыши.
В Zserver предусмотрено формирование ключа шифрования с помощью двух симметричных алгоритмов:
- RC5 – 128-битным ключом
- AES – 256-битным ключом
Возможна также поддержка российского симметричного алгоритма ГОСТ 28147-89 с 256-битным ключом, схожим с алгоритмом DES, но работающим гораздо быстрее. На момент подготовки материалов статьи была возможность взлома ключа симметричных алгоритмов длиной до 64 бит. Ключ RC5 длинной в 64 бит был взломан за 1 757 дней с привлечением 58 747 597 657 компьютеров пользователей. Для этого потребовалось перебрать около 15 769 938 165 961 326 592 ключей. При скорости перебора 100 000 000 ключей в секунду потребуется около 117 375 055 576 687907 000 дней для подбора ключа шифрования длинной в 128 бит.
Использование предлагаемых алгоритмов длиной ключа шифрования в 128 и 256 бит сделает неактуальной похищенную у вас информацию, так как на подбор ключа для доступа к данным потребуется значительное время и вычислительные ресурсы, а сама кража станет абсолютно бессмысленной идеей.
Хранение ключей шифрования возможно на смарт-карте, либо в файле с расширением *.key. При хранении ключа шифрования в файле – защиты не предусмотрено. С целью обеспечения надежной защиты ваших конфиденциальных данных ключ необходимо хранить только на смарт-карте.
Кворум ключей
Для того чтобы один человек не мог совершить каких-либо операций, критичных для бизнеса или целостности самих данных, ключ шифрования можно поделить на несколько равных частей, делегировав право подключения зашифрованного раздела нескольким администраторам безопасности. Разделяя ключ шифрования, вы тем самым организуете «кворум ключей». Кворум ключей – это общее число частей, необходимое для формирования полного ключа шифрования. Число кворумов в системе Zserver может быть равным 2 или 3. Число ключей в кворуме – почти не ограничено (9,(9)*1027). Таким образом, если вы выбрали число ключей – 6, а количество кворумов – 2, то любые 2 ключа из 6 сформируют полноценный ключ шифрования. При этом порядок загрузки ключей не играет роли. Если имеется несколько ключей на одной смарт-карте, то при загрузке система спросит – какой ключ следует загрузить. Загрузка ключа шифрования может осуществляться с устройства для чтения со смарт-карт, подключенного непосредственно к серверу, либо к рабочей станции. Эта функция облегчает процесс подключения зашифрованного раздела, работу со смарт-картами, а также позволяет её оперативно уничтожить в случае возникновения критической ситуации. При поломке (повреждении чипа) смарт-карты с единственной копией ключа шифрования, либо его частью – информация будет утеряна навсегда. Чтобы не потерять всю информацию бесследно, необходимо создавать дубликаты ключей либо увеличивать число ключей в кворуме.
После загрузки ключи хранятся в оперативной памяти. В целях защиты ключа Zserver не позволит выгрузить его из оперативной памяти сервера, даже если кто-то обладает всеми правами в системе. Для выполнения такой операции необходима только ваша смарт-карта и PIN для доступа к ней.
Система защиты смарт-карт
Микропроцессорная смарт-карта ACOS1 объемом 8 Кб стандарта ISO 7816 может содержать до 16 ключей. Запись ключей в смарт-карту осуществляется в ячейки фиксированной длины. Доступ к ключу через консоль Zserver возможен только после ввода PIN-кода фиксированной длины в 8 символов. В случае четырехкратного неправильного ввода PIN-кода смарт-карта блокируется, что означает невозможность дальнейшего использования самой карты и ключей шифрования. Полезным является режим ввода PIN-кода «под принуждением», представляющего собой ввод обратной последовательности PIN. При использовании такого режима все ключи шифрования удаляются со смарт-карты, и выводится соответствующая ошибка. Вы можете использовать этот режим, если кто-то, угрожая вам, требует ввести PIN. Ключ шифрования в любой момент можно скопировать на другую смарт-карту, либо файл, или удалить. При удалении ключа со смарт-карты последующее его восстановление невозможно.
В связи с тем, что функционал ввода PIN-кода под принуждением реализован программно системой Zserver, а не аппаратно смарт-картой, следует учесть, что в случае использования стороннего программно-аппаратного обеспечения для работы со смарт-картами ACOS число попыток ввода PIN-кода увеличивается до 8. Более того, зная PIN-код под принуждением, злоумышленник может получить доступ к памяти смарт-карты. Поэтому PIN-код под принуждением следует держать в секрете, никому не сообщать, и использовать только в системе Zserver. В комплект поставки входит PC/CS-совместимое устройство чтения-записи смарт-карт, подключаемое через USB-интерфейс.
Зашифровывание разделов
В Zserver возможно зашифровывание как уже имеющегося раздела (логического диска) с данными, так и нового. Зашифровывание существующего раздела займет более длительное время, но в ходе процесса пользователи смогут по-прежнему работать с данными. Время зашифровывания раздела зависит только от объема всего раздела и не зависит от наличия информации на нем.. Так как доступ к зашифрованному разделу осуществляется только с помощью ядра Zserver, которое запускается как сервис (служба), не могут быть зашифрованы разделы на более низком уровне, содержащие файлы операционной системы (включая файлы подкачки и реплики Active Directory), а также загрузочный раздел. При зашифровывании происходит «посекторное» криптографическое преобразование по ключу шифрования, включая всю информацию о содержании данных в самом разделе. В отключенном состоянии в операционной системе зашифрованный раздел виден как неразмеченная (не отформатированная) пустая область. В подключенном – зашифрованный раздел представлен как логический диск. Естественно, при копировании данных с зашифрованного диска на незашифрованный данные оказываются незащищенными.
В случае компрометации ключа можно перешифровать раздел другим ключом. Возможно также расшифровывание всего раздела.
Работа с общими ресурсами
Zserver позволяет предоставлять в общий доступ ресурсы, находящиеся на зашифрованном разделе, посредством «модуля управления ресурсами».
Средствами операционной системы это невозможно. Авторизация пользователей производится встроенными средствами. Добавить учетную запись и наделить его правами может только администратор Zserver, а для предоставления в общий доступ необходима учетная запись с правами администратора самого сервера. Естественно, весь трафик между сервером и клиентом (пользователем) передается в незашифрованном виде.
Модуль подачи сигнала тревоги
Модуль подачи сигнала тревоги служит для мгновенной блокировки доступа всех лиц посредством отключения зашифрованных дисков и удаления из оперативной памяти ключей шифрования. Имеется также возможность активации функции перезагрузки сервера при получении сигнала тревоги. При отключении дисков вся несохраненная информация будет утеряна. Подача сигнала тревоги может быть инициирована с любой рабочей станции авторизованным пользователем по протоколу TCP/IP, либо с помощью аппаратной кнопки, подключенной к компьютеру в сети, либо к серверу. «Красная кнопка» может быть двух видов: программная (с помощью установленного программного обеспечения) и аппаратного (с помощью устройства на COM-порту). Программная кнопка инициируется щелчком курсора мыши в трее панели задач на любой рабочей станции, имеющей подключение к серверу по TCP-порту 1245 (по умолчанию). Сигнал тревоги можно также послать серверу путем запуска приложения ssagent.exe с указанием аргумента «a». Для исключения случайных ложных тревог при использовании программной кнопки на клиентском рабочем месте настраиваются аутентификация и право использования этой функции. Так как данные для аутентификации хранятся в реестре операционной системы, следует завести одну либо несколько учетных записей в системе Zserver, делегировав им только право на подачу сигнала тревоги. Аппаратная кнопка – с помощью устройства на COM-порту сервера, либо на COM-порту рабочей станции с установленной «программной кнопкой» (имеющей подключение по TCPпротоколу к серверу). Принцип действия «красной кнопки» прост. Аппаратно (через COMпорт), либо программно (с помощью установленного клиентского программного обеспечения) модуль подачи сигнала тревоги аутентифицируется на сервере защиты данных и передает сигнал тревоги. Далее происходит выполнение запрограммированных действий. Возможна активация, к примеру, через SMS-сообщение, либо звонка на определенный номер с вводом определенного добавочного кода в тональном режиме. Интерфейс продукта и имеющийся SDK-комплект разработчика позволит заказчику самостоятельно определить способы активации. Количество программных «красных кнопок» неограниченное. При наличии нескольких кнопок срабатывание будет только от той, которая первой пошлет сигнал тревоги. При этом нажатие остальных не будет чревато для системы. В случае подачи сигнала тревоги обратное подключение зашифрованных разделов не может быть произведено, пока сервер не будет перезагружен. Для подключения зашифрованного раздела после перезагрузки необходимо загрузить полный ключ, либо сформировать, загрузив его части с источников при наличии кворума.
Протоколирование событий
Для анализа произведенных действий в системе Zserver имеется функция журналирования. Фильтр событий, регистрируемых в журнале, настраивается из консоли управления и может содержать операции с зашифрованным диском, ключами, пользователями и сеансами. Журнал с протоколом событий может вестись как в текстовый файл на локальных дисках сервера, так и в EventLog операционной системы. По умолчанию протоколирование отключено.
Использование сценариев
Для осуществления дополнительных функций, таких как сокрытие диска, удаление файлов, подмена логического диска и т. п., в составе Zserver имеется Script Pack. Zserver Script Pack использует модуль Windows Script Components, который обеспечивает создание COM-компонентов с помощью языков создания сценариев, таких как VBScript, а также языков, совместимых со спецификацией ECMA 262 (JScript, JavaScript и других). Данная функция позволяет заказчику более тесно интегрировать Zserver с остальными компонентами операционной системы и серверными приложениями, определить дополнительные пользовательские сценарии при возникновении событий на сервере при возникновении тревоги, открытия-закрытия диска и т. п. К примеру, сервер при поступлении сигнала тревоги сначала должен оповестить пользователей по сети, выслать администратору безопасности письмо по электронной почте, а уже затем корректно отключить базу данных, пользователей и перезагрузить сервер. В документации к Zserver имеются несколько уже готовых типовых сценариев.
Zbackup как средство защиты архивных копий
Любая система, от которой зависит стабильность технологических процессов компании, подвергается архивированию. Бессмысленно хранить в зашифрованном виде критичную для бизнеса информацию, защищать сервер межсетевыми экранами, хранить журналы доступа, когда копию своей системы вместе с данными можно украсть с архивной копией. Zbackup решает эту проблему, помещая в архив уже зашифрованные данные. Даже при хищении резервной копии доступ без ключа, которым данные на архивной копии были зашифрованы, либо длительного подбора этого ключа, будет невозможен.
Zbackup может работать как отдельный продукт, так и в составе Zserver. При использовании в составе Zserver, возможно использование одних и тех же ключей шифрования. Zbackup работает как с оптическими носителями (CD/DVD-(RW)), так и со стримерными лентами. Система Zbackup совместима с часто используемыми системами архивации данных, такими как BrighStor ARCserve Backup, Veritas Backup Exec и другими. Настройка Zbackup проста и производится с единой консоли Zserver. Данные на архивном носителе хранятся в зашифрованном виде. Доступ к ним возможен только с использованием ключа шифрования. Zbackup может использовать ключ шифрования, которым зашифрованы разделы в Zserver, либо другой, но сформированный по алгоритмам, используемым в Zserver.
Выводы
Применив на практике вышеописанную связку продуктов компании SecurIT, вы получаете комплексное взаимосвязанное решение для защиты конфиденциальных сведений на серверах, аналогов которому не существует. Простота интерфейса и наличие подробной документации на русском языке позволяют внедрить проект в кратчайшие сроки. Соответствие законодательству РФ и возможность поддержки российских криптографических алгоритмов позволит применить продукты компании SecurIT в различных сферах деятельности, в том числе в государственных и финансовых структурах. После внедрения в корпоративной системе один человек не сможет производить какие-либо монопольные действия, архивные копии даже в случае кражи будут непригодны к использованию, так как кворум ключей будет разделен между ответственными администраторами безопасности. Принцип разделения прав по ISO 13569 (Dual Control) мы получаем на практике в комплексном решении. Следствием применения такого решения будет неизбежное снижение рисков ваших серверов и спокойный сон администратора безопасности.