8(495)909-90-01
8(964)644-46-00
pro@sio.su
Главная
Системы видеонаблюдения
Охранная сигнализация
Пожарная сигнализация
Система пожаротушения
Система контроля удаленного доступа
Оповещение и эвакуация
Контроль периметра
Система домофонии
Парковочные системы
Проектирование слаботочных сетей
Аварийный
контроль
Вы находитесь в разделе Типовых решений систем безопасности

Функциональное назначение добавочных средств защиты информации от несанкционированного доступа



Вниманию читателя предлагается цикл статей под общим названием Компьтерная безопасность. В данных работах авторы попытаются изложить свою точку зрения, основанную на собственном опыте разработки добавочных средств защиты информации от несанкционированного доступа (СЗИ НСД) для ОС семейств Windows и Unix, по вопросам актуальности, функционального назначения и корректности реализации СЗИ НСД. Авторы нисколько не претендуют на роль экспертов в этих вопросах, а излагаемые материалы, которые в чем-то могут показаться читателю спорными, приводятся в порядке обсуждения. Поэтому авторы будут благодарны за отзывы и комментарии к данному материалу, готовы поддержать дискуссию на рассматриваемую тему и, по возможности, дать ответы на вопросы читателя, которые следует направлять по адресу: info@npp-itb.spb.ru.

Функциональное назначение добавочных средств защиты информации от несанкционированного доступа (СЗИ НСД) следует из самого понятия добавочные - они вносятся на защищаемый объект с целью добавления к встроенным (как правило, в ОС) механизмам защиты. Однако возникает вопрос – с какой целью вносятся добавочные механизмы защиты, как следствие, каково их функциональное назначение? Дав ответ на эти вопросы, можно судить и об актуальности практического использования СЗИ НСД.

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

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

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

Заметим, что сама по себе задача добавления новых свойств защиты весьма не тривиальна (отнюдь не только в части реализации механизма защиты) и требует серьезных исследований, в первую очередь, принципов построения самой ОС. В качестве примеров возникающих проблем, например, для упоминавшихся выше механизмов защиты, можем отметить следующее. Если речь идет о мандатном управлении доступом к ресурсам, можно говорить о проблемах назначения меток безопасности иерархическим объектам, о включении в иерархические уровни – уровня система (как субъекта, так и объекта доступа), о необходимости разделения средствами СЗИ НСД файловых объектов, не разделяемых системой и приложениями , без чего, на наш взгляд, вообще нельзя говорить о корректности реализации полномочного принципа контроля доступа, и т.д. Если, например, рассматриваем вопросы гарантированного удаления остаточной информации, то должны учитывать, что при сохранении информации небольшого объема (где-то менее 1Кб), она располагается ОС не только в соответствующем файле, но и в таблице MFT (NTFS), и в журналах изменений.

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

Обобщая сказанное выше, можем определить следующее функциональное назначение добавочных СЗИ НСД:
  1. Дополнение встроенной защиты новыми механизмами, с целью выполнения требований к защите информации соответствующего уровня конфиденциальности, заданных в нормативных документах в области защиты информации.
  2. Дополнение встроенной защиты новыми возможностями, не регламентируемыми нормативными документами в области защиты информации, в большинстве случаев, это относится к подключению дополнительных устройств аутентификации пользователя – электронные ключи, Flash-устройства и др., а также контроля действий пользователя на защищаемых объектах (в дополнение к решению задач аудита).
  3. Для ряда приложений, к добавочным СЗИ НСД выдвигается требование по реализации своими собственными средствами всех механизмов защиты, регламентируемых нормативными документами (без учета встроенных в ОС механизмов).


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

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

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

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

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

Устранение архитектурных недостатков встроенных в ОС механизмов защиты, с целью противодействия, атакам, использующим как известные, так и потенциально возможные уязвимости ОС и приложений.

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

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

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

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

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

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

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

Предлагаемое нами запатентованное решение (Патент № 220761 состоит в следующем. В общем случае при управлении доступом к ресурсам следует различать два самостоятельных субъекта доступа – пользователь и процесс.

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


Укрупненный алгоритм анализа прав доступа к ресурсу при реализации данной технологии, приведен на рис.1.1

Таким образом, применение данного подхода позволяет устанавливать и анализировать для субъекта процесс права доступа к ресурсам, как для самостоятельного субъекта доступа.

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

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

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

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

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



Рис.1.1 Укрупненный алгоритм анализа прав доступа к ресурсам

Установка запрета доступа на запись к системному диску и к значимым ветвям и ключам реестра ОС для пользователя System связано с включением в схему разграничения прав доступа привилегированных процессов – здесь системных процессов и процессов СЗИ НСД, для которых устанавливаются права доступа вне прав пользователя, в частности, этим системным процессам и процессам СЗИ НСД для корректного функционирования системы и СЗИ НСД вне прав пользователя System разрешается запись на системный диск.

Пример настройки механизма управления доступом к файловым объектам для виртуального пользователя System для ОС Windows технологии NT представлен в Табл.1.1

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

Настройки выполнены в следующих предположениях: системным является диск C:\, исполняемые файлы программ, разрешенных для выполнения, располагаются в каталогах: C:\Winnt (WINDOWS) – системные процессы, C:\Program Files – каталог, в который администратором инсталлируются разрешенные пользователям для выполнения программы. СЗИ НСД установлена на системный диск в каталог: C:\СЗИ НСД.

Таблица 1.1



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

Аналогично могут быть сформированы и права доступа к объектам реестра ОС. Пример настройки механизма управления доступом к объектам реестра ОС для виртуального пользователя System (где также необходимо вводить привилегированные процессы) для ОС Windows технологии NT представлен в Табл.1.2

Таблица 1.2



Замечание. Заметим, что выделенным привилегированным процессам (системным процессам и процессам СЗИ НСД) в наших настройках (см. Табл.1. права доступа к объектам реестра ОС не ограничены. При необходимости, можно проанализировать (это можно осуществить с использованием средств аудита СЗИ НСД), к каким конкретно объектам реестра ОС необходимо разрешить обращаться привилегированным процессам и разрешить им доступ (вне прав пользователей) только к этим объектам. Проиллюстрируем сказанное примером. Представленные разграничения для процесса Lsass.exe обеспечивают запрет работы с учётными записями пользователей. Наиболее распространенные действия злоумышленника при получении системных прав сводятся к заведению новой учетной записи в системе в группе администраторов, с последующим доступом в систему под этой учетной записью. При данных разграничениях завести нового пользователя в системе, имея права System, становится невозможным.

Из Табл.1.1 и Табл.1.2 видим, что при данных настройках системы защиты теряется какой-либо смысл атак на расширение привилегий, т.к. у пользователя System становится прав на доступ к ресурсам меньше, чем у любого другого пользователя, зарегистрированного в системе.

В качестве замечания отметим, что, во-первых, рассмотренные в статье решения (в частности, приведенные настройки механизма защиты) апробированы при создании семейства СЗИ НСД – КСЗИ Панцирь (для ОС семейств Windows и Unix) - разработка НПП Информационные технологии в бизнесе, во-вторых, они либо уже запатентованы, либо находятся в стадии патентования, поэтому без нарушения авторских прав, рассмотренные в работе технологии не могут быть реализованы в разработках иных производителей.

В порядке иллюстрации, покажем, как выглядит интерфейс настройки механизма контроля доступа к файловым объектам для субъекта процесс в КСЗИ Панцирь для ОС Windows 2000/XP/2003, см. рис.1.2 (настройками, представленными на рис.1.2, выделяются привилегированный процессы – процессы могут быть заданы полнопутевым именем хранения их исполняемых файлов, полнопутевым именем папки (тогда для всех процессов, исполоняемые файлы которых хранятся в этой папке, будут действовать установленные разграничения), маской, которым разрешен полный доступ (ничего не запрещено) ко всем ресурсам.

В качестве замечания отметим, что в КСЗИ Панцирь для ОС Windows 2000/XP/2003 процесс, как самостоятельный субъект доступа, включен во все механизмы управления доступом к ресурсам: к локальным и разделенным в сети (по входу и выходу) файловым объектам – на жестком диске и устройствах ввода, включая Flash-устройства, к объектам реестра ОС, к портам, к сетевым ресурсам (задача межсетевого экранирования). Подобный же подход реализован и в наших СЗИ НСД для ОС семейства Unix (HP-UX, Linux, Free BSD).


Рис.1.2 Интерфейс настройки механизма контроля доступа к файловым объектам для субъекта процесс, реализованный в КСЗИ Панцирь для ОС Windows 2000/XP/2003

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

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

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

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

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

Рассмотри возможность противодействия группе атак на сервисы олицетворения - наиболее заметной и существенно прогрессирующей в процентном отношении в последнее время, см. рис.1.3 – зависимость получена на основании бюллетеней безопасности Microsoft (http://www.microsoft.com/technet/security) и архива рассылки NTBugTraq (http://www.ntbagtraq.com, http://security.nnov.ru)).


Рис. 1.3 Динамика изменения во времени процентной доли атак на сервисы олицетворения

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

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

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

С учетом существующей статистики уязвимостей данного типа, можем сделать вывод, что решение задачи контроля корректности олицетворения следует возложить на добавочную СЗИ НСД, которая собственными средствами должна осуществлять разграничения прав доступа к сервисам олицетворения. Для выработки подхода к решению данной задачи, прежде всего, определимся с тем, что является субъектом и объектом доступа в рассматриваемой схеме разграничений. И в этом случае нами предлагается, в качестве самостоятельного субъекта доступа рассматривать процесс, которым порождается поток, а в качестве объекта доступа – права доступа (контекст защиты), задаваемые учетной записью пользователя, которые системой защиты предоставляются, либо нет потоку, запросившему олицетворение. Другие возможные варианты - это рассматривать в качестве субъекта поток (но такой механизм будет невозможно настроить), либо пользователя. Задание в качестве субъекта доступа учетной записи пользователя вообще говоря, можно рассматривать лишь как вариант частного решения задачи (при этом все процессы, причем не только прикладные, далее покажем, что данный механизм может применяться и для контроля работы системных процессов, должны подчиняться единым правилам олицетворения). Ввиду того, что каждая программа в общем случае может затребовать собственных разрешений олицетворения для запускаемых ими потоков, именно процесс предлагается рассматривать в качестве субъекта доступа – для которого задаются разграничения. Получаем следующую схему: для процесса, потоки запускаемые которым, используют сервисы олицетворения задаются права олицетворения (соответственно, для всех потоков, порождаемых данным процессом, они одинаковы). Права олицетворения задаются следующей парой параметров: учетная запись пользователя, под которым запущен процесс, включая пользователя SYSTEM (процесс в общем случае может запускаться под различными учетными записями); учетная запись пользователя, с контекстом защиты которого разрешается олицетворяться потокам, запускаемым процессом, для которого задаются разграничения.

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



Рис. 1.4 Интерфейс настройки механизма контроля олицетворения, реализованный в КСЗИ Панцирь для ОС Windows 2000/XP/2003

Замечание. В процессе работы системы сервисом олицетворения пользуются не только прикладные, но и системные процессы. Рассматриваемый механизм может эффективно быть использован и с целью контроля олицетворения потоков, запускаемых системными процессами, при этом данный механизм позволяет реализовать и принципиально новые свойства защиты. Например, при авторизации пользователя при входе в систему, потоки, запускаемые процессом winlogon, олицетворяются с учетной записью авторизуемого пользователя. При использовании данного механизма (пример настроек приведен на рис.1. можно управлять тем, какие пользователи могут входить в систему. Для настроек, представленных на рис.1.4, это только пользователи Administrator и User Наличие иных учетных записей заведенных в системе, не даст возможности войти под ними в систему.

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

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

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




Читайте далее:
17 - 23 апреля 2006 года
22 - 23 мая 2006 года
25 мая 2006 года
10 - 16 июля 2006 года
1 - 6 августа 2006 года
21 - 31 августа 2006 года
25 - 30 сентября 2006 года
23 - 30 октября 2006 года
13 - 19 ноября 2006 года
Я помню, как все начиналось ,часть 8,
8 - 14 января 2007 года
1 - 4 февраля 2007 года
5 - 11 марта 2007 года