информационная безопасность
без паники и всерьез
 подробно о проекте
Rambler's Top100Где водятся OGRыСетевые кракеры и правда о деле Левина
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / библиотека / криптография
БИБЛИОТЕКА
вход в библиотеку
книги
безопасность
программирование
криптография
internals
www
телефония
underground
беллетристика
разное
обзор: избранное
конкурс
рейтинг статей
обсуждение




Подписка:
BuqTraq: Обзор
RSN
БСК
Закон есть закон




Требования к криптографической системе защиты информации от санкционированных пользователей
А.Ю.Щеглов, К.А.Щеглов
Опубликовано: dl, 29.11.05 03:59

Введение

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

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

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

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

Политики хранения и ввода ключевой информации.

Локальные политики.

  1. Политика использования одного ключа шифрования.

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

    К недостаткам (уязвимостям) данной политики можно отнести следующее:


    • Данная политика не обеспечивает защиту от несанкционированного доступа к зашифрованным данным в случае утери (хищения) у пользователя носителя с ключевой информацией. В части замечания отметим, что данный недостаток преодолевается за счет использования специальных электронных ключей, требующих прохождения авторизации пользователем для считывания ключевой информации. Однако, использование подобных ключей приводит к значительному удорожанию системы защиты данных;
    • Данная политика не обеспечивает выполнения требования в части того, что ключ шифрования должен быть не известен пользователю, как следствие, при ее применении невозможно воспрепятствовать пользователю в хищении конфиденциальных данных (у пользователя существуют все условия несанкционированного доступа к конфиденциальным данным: собственно зашифрованные данные, например, на внешнем носителе, и ключ, которым они были зашифрованы, как следствие, могут быть расшифрованы).


  2. Политики использования двух или более ключей шифрования.

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


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

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

    • Доступ к защищаемым данным по двум ключам. Суть реализации данной политики та же, что и предыдущей политики. Особенность состоит в том, что ключи (основной и дополнительный) должны быть у различных пользователей (заметим, один ключ - обязательно в файловом объекте, например, на Flash-устройстве, другой - может храниться любым предоставляемым системой защиты способом). При этом доступ к данным (соответственно, преобразование данных) возможно только в присутствии обоих пользователей (каждый должен осуществить идентификацию для доступа к объектам соответствующей группы по своему ключу). Любого одного из двух ключей для преобразования защищаемых данных будет недостаточно. Таким образом, может быть реализован доступ к защищаемым данным по любому числу ключей, при этом доступ к данным будет возможен лишь в присутствии всех пользователей, имеющих соответствующие ключи.

      Данная политика может быть использована на практике для обеспечения контроля доступа к особо важным данным, осуществляемого, например, пользователем только в присутствии начальника подразделения, т.е. обеспечивает техническими средствами возможность реализации дополнительных организационный мер защиты обработки особо важных данных.

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

Сетевая политика хранения и ввода ключевой информации.

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

  • Данная политика по своей сути является политикой использования двух или более ключей шифрования и аналогичным образом реализуется. Отличительной особенностью политики является то, что основной ключ, собственно шифрующий данный, т.е. вводимый из файла (соответственно, из файла на внешнем носителе, например, располагаемого на Flash-устройстве), располагается на удаленном компьютере, и на этом компьютере разделен в сети для соответствующего пользователя. На данном компьютере могут быть расположены в отдельных файлах (разделенных в сети) ключи шифрования для всех групп объектов всех компьютеров с сети. В этом случае в сети реализуется ключевой сервер, в файлах которого располагаются (либо вводятся с внешнего носителя, например, с Flash-устройства, например, администратором) все ключи шифрования для всех компьютеров в сети. Дополнительные ключи вводятся пользователями на своих компьютерах, где идентифицируются пользователи для доступа к группам объектов, для чтения с сервера основных ключей шифрования. Так как основные ключи шифруются дополнительными ключами, то основные ключи хранятся на сервере (либо на внешнем носителе, с которого вводятся на сервере) в зашифрованном виде и в зашифрованном же виде передаются по сети. При реализации такой политики, не только наличие ключа и носителя с зашифрованными данными, но и хищение собственно компьютера, на котором хранятся зашифрованные конфиденциальные данные, не позволят пользователю несанкционированно (на другом, либо на этом же компьютере) прочитать эти данные.

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

Требования к системе защиты данных, в части корректной реализации рассмотренных политик хранения и ввода ключевой информации.

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

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

Предлагаемое нами запатентованное решение (Патент № 2207619) состоит в следующем. В общем случае при управлении доступом к ресурсам следует различать два самостоятельных субъекта доступа - "пользователь" и "процесс". При этом предлагается управлять доступом (разграничивать права доступа) не только для субъекта пользователь, но и для субъекта процесс, причем могут быть выделены следующие схемы задания разграничительной политики доступа к ресурсам:

  1. Разграничение прав доступа к объектам процессов вне разграничений пользователей (эксклюзивный режим обработки запросов процессов - доступ к объекту разрешается, если он разрешен процессу - права доступа пользователя, запустившего процесс не учитываются. Данная схема разграничений может использоваться в том случае, когда процессу следует расширить права доступа к ресурсам, по сравнению с пользователем, запустившим процесс);
  2. Разграничение прав доступа к объектам пользователей, вне разграничений процессов (эксклюзивный режим обработки запросов пользователей - доступ к объекту разрешается, если он разрешен пользователю - права доступа процесса не учитываются. Это обычная схема разграничений прав доступа, используемая современными ОС, не позволяющая учитывать свойства отдельных процессов, в частности, уровень доверия к ним);
  3. Комбинированное разграничение прав доступа - разграничение прав доступа к объектам процессов в рамках разграничений пользователей (совместное разграничение доступа процессов и пользователей - доступ к объекту разрешается, если он разрешен и пользователю, и процессу. Данная схема разграничений может использоваться в том случае, когда пользователю следует сузить права доступа к ресурсам - ему разрешается доступ только заданными процессами).

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

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

В заключение дадим краткое описание назначения, состава и возможностей системы защиты данных (СЗД) "Панцирь" для ОС Windows 2000/XP/2003 (разработка ЗАО "НПП "Информационные технологии в бизнесе"), в которой реализованы рассмотренные в статье подходы.



  1. Назначение и состав системы

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

  2. Основные механизмы защиты данных

    СЗД реализует кодирование (шифрование) данных "на лету", автоматическое гарантированное удаление остаточной информации, разграничение прав доступа к защищаемым объектам, скрытие защищаемых объектов файловой системы.

  3. Основное отличительное свойство системы

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

  4. Возможности основных механизмов защиты:
    • Кодирование (шифрование) данных "на лету". В СЗД реализовано автоматическое "на лету" ("прозрачное" для пользователя) кодирование (декодирование) данных при их сохранении в локальный или удаленный файловый объект на жестком диске или на внешнем носителе. При сохранении в удаленный файловый объект, данные по каналу передаются в закодированном (зашифрованном виде) виде. Поддерживаются файловые системы NTFS, FAT32 или FAT16, алгоритмы кодирования: XOR, GOST, DES, AES. Кроме того посредством подключения криптопровайдера Signal-COM (сертифицирован ФАПСИ) возможно шифрование и расшифрование "на лету" данных в соответствии с российским криптографическим алгоритмом ГОСТ 28147-89. Поддерживаются различные политики генерации, ввода и хранения ключевой информации. Ключ присваивается объекту "группа", в который включаются защищаемые файловые объекты. Число создаваемых групп и файловых объектов в группе на одном компьютере не ограничено. Ключ может задаваться парольной фразой (не менее 6 символов), из которой затем генерируется автоматически (для идентификации группы парольная фраза вводится с консоли). Также ключ может задаваться полностью: вручную (из файла), системой автоматически, генерироваться посредством движений мыши. Для хранения ключевой информации используется хлектронный ключ eToken, либо файловый объект (локальный, либо удаленный - в сети может быть реализован ключевой сервер, причем вся ключевая информация передается по каналу в закодированном виде), задаваемый его полнопутевым именем, что позволяет хранить ключевую информацию на внешних носителях, в частности, на устройстве Flash-памяти, причем на одном устройстве может храниться необходимое количество ключей, устройство при этом может использоваться по своему прямому назначению. Для идентификации группы (для получения доступа к файловому объекту в группе), системе необходимо единожды считать значение ключа в оперативную память, после чего, ключ может быть удален из системы.
    • Гарантированное удаление остаточной информации. В СЗД реализовано автоматическое ("прозрачное" для пользователя) гарантированное удаление данных в файловом объекте (локальном или удаленном, на жестком диске или на внешнем носителе), при его удалении или модификации штатными средствами ОС. Для защищаемых файловых объектов система позволяет задавать число "проходов очистки" и вид маскирующей информации, записываемой в файловый объект, перед удалением в нем данных штатными средствами ОС.
    • Разграничение прав доступа к защищаемым объектам. В СЗД реализовано разграничение прав доступа к защищаемым файловым объектам на основе идентификации групп объектов по ключам (посредством парольного слова, либо ключевой информации на внешнем носителе). Ключ присваивается объекту "группа", в который включаются защищаемые файловые объекты (локальные или удаленные, на жестком диске или на внешнем носителе), права доступа к которым разграничиваются. Какой-либо доступ к защищаемому файловому объекту разрешается только после идентификации группы, в которую включен объект. Разграничивать права доступа можно к файловым объектам, в которых данные сохраняются, как в кодированном, так и в обычном виде.
    • Скрытие защищаемых объектов файловой системы. В дополнение к разграничению прав доступа к файловым объектам в СЗД реализованы следующие возможности:
      • скрытие защищаемого файлового объекта (объект остается "не видимым" для пользователей);
      • скремблирование имени файлового объекта при его предоставлении по запросу доступа;
      • кодирование имени файлового объекта на диске.

      Отображение имени (или реального имени) файлового объекта возможно только после идентификации группы, в которую включен объект.
    • Обмен зашифрованными данными (файлами) в сети с использованием открытых ключей (при использовании криптопровайдера Signal-COM).

Замечание. СЗД "Панцирь" для ОС Windows 2000/XP/2003 поставляется на рынок и как самостоятельный отдельный программный продукт, и в составе комплексной системы защиты конфиденциальной информации (КСЗИ) "Панцирь-К" для ОС Windows 2000/XP/2003.

В заключение отметим, что о разработках ЗАО "НПП "Информационные технологии в бизнесе", в частности о КСЗИ "Панцирь-К" для ОС Windows 2000/XP/2003, можно получить дополнительную информацию на сайте компании: www.npp-itb.spb.ru.


Д.т.н., проф. А.Ю.Щеглов, К.А.Щеглов
(ЗАО "НПП "Информационные технологии в бизнесе)
info@npp-itb.spb.ru

обсудить  |  все отзывы (38)

[25644; 3; 1.66]




Rambler's Top100
Рейтинг@Mail.ru





  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach