автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.19, диссертация на тему:Управление доступом к ресурсам распределенных информационных систем на основе отношений доверия

кандидата физико-математических наук
Иткес, Александр Александрович
город
Москва
год
2010
специальность ВАК РФ
05.13.19
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Управление доступом к ресурсам распределенных информационных систем на основе отношений доверия»

Автореферат диссертации по теме "Управление доступом к ресурсам распределенных информационных систем на основе отношений доверия"

004694057

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИМЕНИ М.В.ЛОМОНОСОВА

Механико-математический факультет

На правах рукописи

Иткес Александр Александрович

Управление доступом к ресурсам распределенных информационных систем на основе отношений доверия

Специальность 05.13.19 — методы и системы защиты информации, информационная безопасность

АВТОРЕФЕРАТ Диссертации на соискание ученой степени кандидата физико-математических наук

Москва 2010

1 7 ИЮН 2010

004604057

Работа выполнена на Механико-математическом факультете и в Институте проблем информационной безопасности Московского государственного университета имени М. В. Ломоносова.

Научный руководитель:

доктор физико-математических наук, профессор Васепин Валерий Александрович.

Официальные оппоненты:

доктор технических наук, профессор Бородюк Виталий Павлович;

кандидат физико-математических наук Сергеев Игорь Сергеевич.

Ведущая организация:

Государственный научно-исследовательский испытательный институт проблем технической защиты информации ФСТЭК РФ, г. Воронеж.

Защита диссертации состоится 16 июня 2010 г. в 16 час. 45 мин. на заседании диссертационного совета Д 501.002.16 при Московском государственном университете имени М. В. Ломоносова по адресу: Российская Федерация, 119991, Москва, ГСП-1, Ленинские горы, д. 1. Московский государственный университет имени М. В. Ломоносова, Механико-математический факультет, ауд. 14-08.

С диссертацией можно ознакомиться в библиотеке механико-математического факультета Московского государственного университета имени М. В. Ломоносова (Главное здание МГУ, 14 этаж).

Автореферат разослан 14 мая 2010 г.

Ученый секретарь диссертационного совета Д 501.002.16 при МГУ, доктор физико-математических наук

Корнев А. А.

Общая характеристика работы Актуальность работы

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

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

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

Цели и задачи работы

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

1 см., например, работу «Критически важные объекты и кибертерроризм. Часть 2. Аспекты программной реализации средств противодействия.» / О- О. Андреев и др. Под ред. В. А. Васенина. — М.: МЦНМО. — 2008.

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

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

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

Научная новизна

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

Практическая значимость

Результаты диссертации являются основой для разработки и внедрения в практику программных средств обеспечения безопасности распределенных информационных систем, компоненты которых функционируют под управлением ОС Linux. По результатам работы автором спроектирован и реализован прототип программного комплекса Nettrust, предназначенного для управления доступом субъектов к объектам в составе распределенных на сетевой среде сложных информационных систем.

На защиту выносятся следующие основные результаты работы:

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

• математические методы объединения на основе отношений доверия моделей логического разграничения доступа к ресурсам распределенных на сетевой среде сложно организованных информационных систем;

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

пользователе, инициировавшем сетевое соединение и принятие 1>ешения о создании сетевого соединения на основании данной информации.

Публикации

Основные результаты диссертации опубликованы в четырех работах автора. Список этих работ приведен в конце автореферата (1-4|.

Апробация работы

Результаты работы докладывались: на научной конференции «Математика и безопасность информационных технологий» в 2005 году; На конференции «Ломоносовские чтения» в МГУ в 2006 и 2009 годах, на семинаре «Проблемы современных информационно-вычислительных систем» под руководством д.ф.-м.н., проф. В. А. Васенина (механико-математический факультет МГУ имени М. В. Ломоносова) в 2005 и 2010 годах.

Структура и объем работы

Работа состоит из введения, четырех глав, заключения, списка литературы и девяти приложений. Общий объем диссертации составляет 122 страницы (вместе с приложениями - 151 страницу). Список литературы включает 38 наименований.

Краткое содержание работы

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

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

• Ролевые модели ЛРД, использующиеся с 1990-х годов для управления доступом субъектов к объектам информационных систем широкого спектра применения.

• Многоуровневые модели ЛРД, разработанным в целях защиты секретной информации.

• Модели ЛРД принудительной типизации, которые, как и ролевые модели ЛРД, используется для контроля доступа субъектов к объектов в информационных системах различного назначения. Подобные модели ЛРД служат основой для программного пакета БЕЕлних. и некоторых других инструментальных средств контроля доступа субъектов к объектам информационных систем. В работе представлены два данных автором определения модели ЛРД принудительной типизации и доказывается их эквивалентность.

После рассмотрения математических моделей ЛРД в главе 1 следует описание активно используемых на практике и важных в контексте целей настоящей работы программных средств управления логическим разграничением доступа субъектов к объектам в информационных системах на основе ОС Linux. Рассматриваются следующие программные механизмы управлениям доступом.

• Базовые механизмы разграничения доступа, использующиеся в UNIX-подобных операционным системам, к которым относится Linux.

• Программная система SELinux, разрабонанная Агентством национальной безопасности США для повышения защищенности информационных систем функционирующих под управлением ОС Linux. В настоящее время SELinux включен в большинство дистрибутивов ОС Linux и не требует дополнительной установки.

• Программный модуль GRSecurity, используемый для поддержки модели ЛРД принудительной типизации в информационных системах под управлением Linux.

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

Следует отметить, что модели ЛРД, поддерживаемые перечисленными программными средствами, можно разделить на две группы. Первая группа включает модели ЛРД, при использовании которых права доступа субъектов к объектам задаются по «жестким» правилам, изменять которые может только системный администратор. Такие модели ЛРД называются мандатными в широком смысле. При использовании моделей ЛРД второй группы каждый объект имеет пользователя-владельца, который может изменять права доступа к «своим» объектам произвольно. Данная группа объединяет модели ЛРД, которые именуются дискреционными в широком смысле.

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

• Iptables - встроенная программа ОС Linux, предназначенная для управления поведением межсетевого экрана. В Iptables реализована возможность преобразования исходящего сетевого пакета в зависимости от пользователя-отправителя.

• Netlabel - дополнительный модуль ядра Linux, реализующий передачу информации о владельцах сетевых пакетов по протоколу CIPSO.

Ролевые модели ЛРД используются в различных информационных системах с 1970 года. Однако, в течении многих лет отсутствовал единый стандарт применения подобных моделей. По этой причине в настоящее время существует большое количество различных определений ролевой модели ЛРД. В разных работах можно встретить различающиеся между собой определения данной модели. С учетом этого обстоятельства, автор выбрал определение, в большей степени соответствующее целям данной работы. Согласно представленному в диссертации определению ролевой модели, в подконтрольной информационной системе задаются четыре множества. К их числу относятся: множество привилегий Р; множество ролей R; множество пользователей U; и множество субъектов S. Каждому пользователю при этом соответствует множество

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

Модель принудительной типизации является мандатной в широком смысле моделью логического разграничения доступа. Она обладает такими же преимуществами, как и ролевая модель ЛРД, а именно - простотой описания и высокой степенью выразительности в плане представления требований безопасности. Данная модель ЛРД разработана в 1990-е годы, она является более «молодой» по сравнению с другими рассматриваемыми моделями ЛРД. В силу этого обстоятельства, указанная модель ЛРД несколько менее известна по сравнению с остальными и ее оригинальное английское название Type-Enforcement не имеет общепринятого перевода на русский язык. В данной работе используется термин «модель принудительной типизации». Модель принудительной типизации реализуется многими дополнительными к традиционно используемым инструментальными средствами контроля доступа субъектов к объектам под контролем ОС Linux, которые перечислены в других разделах первой главы.

В различных работах можно встретить несколько отличающихся определений модели принудительной типизации. В настоящей работе используются два определения, представленные автором. Согласно первому из них, в системе заданы множества объектов О и субъектов SCO, а также множество типов Т, множество доменов D С Т, множество классов С и множество видов доступа А. Каждому объекту о соответствует некоторый класс с(о) и тип £(о), причем типы субъектов и только они являются доменами. Кроме того, в системе заданы два отображения: Allow :DxTxCxA—> {yes, по] и Assign : D хТ х С —» Т. При этом, субъекту s разрешается доступ а к объекту о в том и только том случае, если Allow(t(s),t(o),c{o),a) = yes. Функция Assign используется для присваивания типа динамически создаваемым объектом подконтрольной системы.

Второе определение модели принудительной типизации отличается от первого тем, что множество доменов не включено в множество типов. Вместо этого, каждый субъект подконтрольной информационной системы имеет как тип, который используется при доступе других субъектов системы к этому субъекту, так к домен, который используется при доступе этого субъекта к объекту подконтрольной системы, причем тип и домен субъекта не зависят друг от друга. Также как и при использовании первого из представленных в работе определений, в системе задаются два отображения: Allow :DxTxCxА —> {yes, по} и Assign : D хТ хС —> TuTx D. Функция Allow используется таким же образом, как и в первом определении, а функция Assign задает не только тип динамически создаваемого объекта, но и его домен в случае, если создаваемый объект является субъектом.

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

Первая из многоуровневых моделей ЛРД была разработана Баллом и Лападулой в 1970-е годы для защиты информации в сетях военного ведомства (Department of Defence, DoD) США. В связи с этим обстоятельством, формальные описания данной модели длительное время оставались засекреченными, что привело к появлению большого количества различных вариаций определения данной модели. Простейшая многоуровневая модель ЛРД, рассмотренная в данной работе, может быть использована для обеспечения секретности, либо целостности данных, но не обоих названных свойств одновременно. Вместе с тем, данная модель ЛРД отличается повышенной устойчивостью к некоторым видам атак, например, «троянским коням», благодаря жестким ограничениям на действия не только потенциального злоумышленника, но и потенциального объекта деструктивного воздействия.

Использование многоуровневой модели ЛРД в подконтрольной информационной системе означает задание некоторая решетка L, - частично упорядоченное множество с некоторыми дополнительными свойствами. Каждому объекту подконтрольной системы соответствует определенный уровень этой решетки. При этом, каждый субъект подконтрольной системы обладает: правом доступа на чтение г ко всем объектам более низкого уровня, и только им; правом доступа на запись w ко всем объектам более высокого уровня, и только им.

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

В дальнейших разделах первой главы рассматриваются используемые на практике модели и реализующие их механизмы ЛРД субъектов к объектам информационных систем под управлением ОС Linux. Данная операционная система, одна из UNIX-подобных ОС, выбрана автором по причине ее широкого использования на практике а также доступности полных исходных кодов ядра ОС и приложений. Это обстоятельство значительно упрощает анализ свойств формальных моделей и реализующих их программных механизмов средств управления доступом к ресурсам в информационных системах, функционирующих под управлением данной ОС, а также позволяет эффективно включать в ядро ОС новые функции.

Традиционно в UNIX-подобных операционных системах применяются дискреционные модели логического разграничения доступа. Наиболее распространенным примером дискреционной модели ЛРД является стандартная модель ЛРД UNIX-подобных ОС, которая также называется усеченной дискреционной моделью ЛРД. Эта модель рассматривается в диссертации достаточно подробно как наиболее активно используемая на практике из дискреционных моделей ЛРД.

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

После рассмотрения усеченной дискреционной модели ЛРД в первой главе представлен обзор программных средств, реализующих в ОС Linux мандатные модели ЛРД. Рассмотрены три таких программных комплекса - SELinux, GRSecurity и RSBAC- Во второй главе показано, что все три перечисленных программных средства реализуют в подконтрольной информационной системе модель ЛРД принудительной типизации.

В дальнейших разделах первой главы описываются и анализируются механизмы управления доступа субъектов к удаленным объектам в распределенных информационных системах, в отличие от SELinux, RSBAC и GRSecurity, которые предназначены для управления доступом субъектов к объектам в пределах локального узла. Из средств управления доступом субъектов к удаленным на сетевой среде объектам рассматривается стандартный межсетевой экран ОС Linux, а также дополнительный программный модуль, именуемый Netlabel.

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

Программный комплекс Netlabel предназначен для объединения многоуровневых моделей ЛРД с помощью протокола Commercial Internet Protocol Security Option (CIPSO), разработанного военным ведомством США для передачи в сетевых пакетах информации об уровне субъекта в многоуровневой модели. В работе отмечено несколько обстоятельств, затрудняющих реализацию многоуровневой модели ЛРД в информационных системах под управлением ОС Linux. Кроме того, как показано автором во второй главе диссертации, многоуровневые модели составляют более узкий класс моделей ЛРД по сравнению с ролевыми моделями ЛРД и моделями принудительной типизации. С учетом изложенного выше, программный комплекс Netlabel может использоваться для управления доступом субъектов к удаленным на сетевой среде объектам только в некоторых, специальным образом спроектированных распределенных информационных системах.

Последние разделы первой главы посвящены рассмотрению протоколов Netlink и Generic Netlink, которые используются в ОС Linux для управления сетевыми конфигурациями в ядре ОС. В диссертации отмечено несколько причин, по которым применение Netlink для управления подсистемами ядра является более предпочтительным по сравнению с альтернативными методами взаимодействия с ядром ОС. С учетом этого обстоятельства протоколы Netlink и Generic Netlink используются для управления модулем ядра Nettrust, представленным в главе 4. По этой причине функционирование данных протоколов подробно рассматривается в предлагаемой диссертационной работе.

По итогам исследования и сравнительного анализа свойств используемых на практике программных средств управления доступом субъектов к удаленным на сетевой среде объектам автором делается вывод, о том, что для реализации программных механизмов на основе достаточно сложных математических моделей ЛРД в распределенных информационных системах, функционирующих под управлением ОС Linux, необходимо разработать новые инструментальные средства, которые должны устранить отмеченные недостатки. Таким средством, созданным автором по результатам исследований, представленных в главах 2 и 3 диссертации, является программный комплекс Nettrust, подробно рассмотренный главе 4.

Во второй главе автор рассматривает вопросы представления одних моделей ЛРД, описанных в главе 1, в терминах других. В начале главы дано обоснование актуальности данной задачи в контексте основных целей настоящей работы. Одной из таких целей является исследование и разработка математических методов и программных механизмов логического разграничения доступа к ресурсам распределенных на сетевой среде информационных систем на основе отношений доверия. Разработка математических методов и программных средств на их основе предполагает исследование вопросов построения модели ЛРД субъектов к объектам распределенной на сетевой среде сложной информационной системы путем объединения моделей ЛРД к объектам составляющих ее подсистем с помощью отношений доверия, а также создание программных средств управления доступом на основе таких отношений. Исследованию вопросов объединения различных моделей ЛРД к ресурсам информационных систем с помощью отношений доверия посвящена глава 3, в которой автор формулирует и доказывает необходимые и достаточные условия, гарантирующие возможность такого объединения. Собственно программные механизмы управления доступом субъектов к объектам на сетевой среде на основе таких отношений, рассматривается в главе 4.

Прежде чем перейти к рассмотрению условий, гарантирующих возможность объединения моделей ЛРД с помощью отношения доверия, необходимо исследовать вопросы представления одних моделей ЛРД, представленных в главе 1, в терминах других моделей ЛРД. Кроме того, для доказательства корректности функционирования программных средств управления доступом субъектов к объектам на сетевой среде необходимо рассмотреть вопросы представления моделей ЛРД, реализуемых программными механизмами управления доступом субъектов к объектам информационных систем под управлением ОС Linux, в терминах базовых математических моделей ЛРД. Такая необходимость обусловлена тем, что программные средства управления доступом субъектов к объектам сложных, распределенных на сетевой среде информационных систем, описанные далее в главе 4, реализуют в подконтрольной распределенной информационной системе модель ЛРД, построенную с помощью отношений доверия на основе «локальных» моделей ЛРД. Эти модели ЛРД, в свою очередь, реализуются механизмами управления доступом субъектов к объектам, которые используются в отдельных компонентах подконтрольной информационной системы.

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

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

При использовании модели ЛРД принудительной типизации привилегией называется тройка р = («, с, а), где t - один из типов подконтрольной информационной системы, с - один

из ее классов, а - один из видов доступа. Будем считать, что домен d, обладает привилегией р = (í,c, а), если Allow(d,t,c,a) = Yes, где функция Allow определена в первой главе диссертации и соответсвующем разделе автореферата. Будем считать, что субъект s обладает привилегией р = (í,c, а), если соответсвующий этому субъекту домен обладает данной привилегией.

При использовании многоуровневой модели ЛРД привилегией называется пара р = (1,а), где I € L - один из уровней решетки ценностей подкотролыюй информационной системы, а £ {г,ш} - один из регламентируемых видов доступа. Будем считать, что субъект s обладает привилегией р = (1,т), если уровень субъекта s выше уровня /, или равен ему. Будем считать, что субъект s обладает привилегией р = (i, tu), если уровень субъекта s ниже уровня /, или равен ему.

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

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

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

Основным результатом исследований, представленных во втором разделе главы 2, является модель гибкой типизации. Данная модель ЛРД является дискреционной в широком смысле и при этом определяющие ее множества аналогичны соответствующим множествам, используемым в модели принудительной типизации. Этот факт означает, что в подконтрольной информационной системе определяются множества: 5 - множество субъектов; О - множество объектов; D - множество доменов; Т - множество типов; С - множество классов; А - множество видов доступа. Кроме того, в подконтрольной системе задаются отображения Allow и Assign., используемые для тех же целей, что и одноименные отображения для модели принудительной типизациии, а также множество пользователей U и отображение Owner : Т U D —> U и множество разрешенных переходов между типами AT С ТхТхС. Отличие данной модели от модели принудительной типизации заключается в том, что владелец объекта системы имеет право изменять его тип по своему усмотрению, в соответствии с правилами, задаваемыми множеством AT.

Материалы раздела доказательно показывают, что усеченная дискреционная модель ЛРД, используемая в UNIX-подобпых ОС, может быть выражена в терминах модели гибкой типизации. Отмеченный факт позволяет в главе 3 получить условия, гарантирующие возможность

объединения моделей гибкой типизации с помощью отношений доверия.

В третьем разделе главы 2 рассмотрены вопросы представления моделей ЛРД, реализуемых программными системами SELinux, GRSecurity и RSBAC, в терминах базовых математических моделей ЛРД. Автором доказана теорема о возможности представления модели ЛРД, реализуемой SELinux, в терминах модели ЛРД принудительной типизации, а значит, и ролевой модели ЛРД. Из данного факта следует, что модели ЛРД, реализуемые RSBAC и GRSecurity, также могут быть выражены в терминах модели принудительной типизации, так как возможность представления моделей ЛРД RSBAC и GRSecurity в терминах SELinux является известным фактом2. Результаты, полученные в этом разделе, позволяют обосновать корректность взаимодействия программного комплекса Nettrust, разработке которого посвящена четвертая глава, к программными средствами SELinux, RSBAC и GRSecurity.

К числу основных результатов, полученных во второй главе, относятся следующие.

• Многоуровневая модель ЛРД может быть представлена в терминах ролевой модели и модели принудительной типизации.

• Модель ЛРД принудительной типизации может быть представлена в терминах ролевой модели ЛРД.

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

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

• Доказано, что модели ЛРД, реализаемые программными системами SELinux, GRSecuriy и RSBAC, могут быть выражены в терминах модели принудительной типизации. Данный факт необходим для обоснования корректности функционирования разработанных автором программных средств управления доступом к ресурсам распределенных на сетевой среде информационных систем, представленных в главе 4 диссертации.

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

2 см., например, работу К. А. Шапченко. К вопросу о средствах ОС Linux для управления доступом при использовании ролевых политик безопасности. Материалы конференции МаБИТ-2005. М., МЦНМО, 2006.

В первом разделе четвертой главы представлено определение отношения доверия.

Определение 1. Отношением доверия между информационными системами А и В называется подмножество TAj¡ С 5(А) х S(B).

Смысл указанного отношения в том, что если пара (а, Ь) принадлежит Тл в, то субъект а может получить доступ к объектам системы В посредством субъекта 6. В этом случае будем считать, что субъект 6 доверяет субъекту а. Например, при загрузке файла по протоколу НТТР серверное приложение доверяет браузеру, поскольку браузер осуществляет доступ на чтение к удаленному объекту посредством сервера.

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

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

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

Теорема 1. Пусть информационные системы А и В имеют политики безопасности, основанные на модели ЛРД RBACq. Пусть система С состоит из объектов систем А и В, и также имеет политику безопасности, основанную на модели ЛРД RBAC<¡■ Пусть множество привилегий системы С имеет вид Р[С) = Р(А) U Р(В), и ограничение модели ЛРД системы С на каждую из подсистем совпадает с локальной моделью ЛРД этой подсистемы. В этом случае объединение моделей ЛРД систем А и В в модели ЛРД системы С может быть выражено с помощью отношений доверия тогда и только тогда, когда для любой роли гс системы С набор ее привилегий Р(г) имеет вид Р(г) = Ра(г) \-¡Pjj(r), где множества привилегий Рл(г) = Р(г) П Р(А) и Рв(г) — Р(г) П Р{В) корректны с позиций локальных моделей ЛРД систем А и В.

Аналогичный факт сформулирован и доказан автором и для моделей принудительной типизации.

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

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

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

Под корректной интеграцией многоуровневых моделей ЛРД подразумевается следующее определение.

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

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

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

При использовании обобщенной многоуровневой модели ЛРД, в подконтрольной информационной системе определяется решетка ценностей L (множество меток безопасности, как категорий доступа или уровней секретности) и конечное множество D, называемое множеством разделов. При этом, каждому объекту о соответствует подмножество D{o) С D. Доступ па чтение или запись субъекта s к объекту о разрешается в том и только том случае, если D(o) С D(s) и уровень (метка безопасности) субъекта s выше уровня объекта о для доступа на чтение и ниже его - для доступа на запись.

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

Далее в работе получен критерий, определяющий возможность корректной интеграции обобщенных многоуровневых моделей ЛРД, аналогичный соответствующим критериям для ролевой модели ЛРД и модели принудительной типизации. Определяются понятия привилегии и корректного множества привилегий для обобщенной многоуровневой модели ЛРД. Привилегией при использовании обобщенной многоуровневой модели ЛРД называется тройка (уровень,раздел,вид доступа). Считается, что субъект s обладает привилегией р = (l,d,a) в том и только том случае, если d. € D(s) и I < l(s) и а = г, либо I > í(s) и а = w.

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

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

Теорема 3. Пусть информационные подсистемы А и В имеют политики безопасности, основанные на обобщенной многоуровневой модели ЛРД. Пусть система С, состоящая из объектов подсистем А и В, также имеет политику безопасности, основанную на обобщенной многоуровневой модели ЛРД, причем ограничение модели ЛРД системы С на каждую из подсистем совпадает с локальной моделью ЛРД этой подсистемы. Кроме того, пусть в каждой из подсистем может существовать информационный поток между любыми двумя объектами, лежащими на одном уровне. Пусть также ни в одной из подсистем не может возникнуть информационных потоков «снизу вверх» с использованием объектов другой подсистемы. При указанных условиях объединение моделей ЛРД подсистем А и В может быть выражено с помощью отношений доверия между ними в том и только том случае, когда права доступа каждого субъекта системы С к объектам каждой из подсистем могут быть выражены корректным набором привилегий этой подсистемы.

Таким образом, автором доказано, что обобщенные многоуровневые модели ЛРД могут быть объединены с помощью отношений доверия в достаточно широком наборе случаев.

Далее в главе 3 изложены результаты исследований, направленные на объединение дискреционных моделей ЛРД с помощью отношений доверия. Большинство информационных систем, функционирующих на базе ОС Linux, используют для управления доступом субъектов к объектам дискреционные модели ЛРД, которые реализуются механизмами ЛРД UNIX-подобных ОС. По этой причине исследование возможностей объединения дискреционных моделей ЛРД имеет важное значение для обоснования корректности функционирования программных средств управления доступом субъектов к удаленным объектам в составе распределенных информационных систем, в том числе - для обоснования корректности функционирования программного комплекса Nettrust, результаты разработки которого представлены в четвертой главе диссертации.

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

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

Данная теорема служит обоснованием для анализа корректности функционирования рассмотренного в главе 4 программного комплекса Nettrust, в составе распределенных на сетевой среде информационных систем в случае, если компоненты этих систем используют для управления доступом субъектов к объектам модель гибкой типизации, частным случаем которой является усеченная дискреционная модель ЛРД UNIX-подобных ОС, представленная в первой главе.

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

Множество субъектов, обладающее указанными свойствами будем называть доменом. В диссертации представлено строгое определение домена и определение правильного множества доменов. Согласно этому определению домены не должны пересекаться и каждый субъект должен иметь домен. Отметим, что при использовании многоуровневой модели ЛРД доменом является множество субъектов, относящихся к одному уровню, а при использовании ролевой модели ЛРД - множество субъектов,обладающих одинаковым набором ролей.

Далее определяется введенное автором контекстное отношение доверия как подмножество СТа В С D(A) х D(B), где D(A) и D(B) - правильные множества доменов систем А а В. Суть указанного отношения в том, что если пара (а,Ь) принадлежит СТа,в, т° субъект домена а системы А может получить доступ к объектам системы В посредством некоторого субъекта домена Ъ системы В. В этом случае будем считать, что субъект Ь доверяет субъекту а.

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

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

Определение 3. Пусть А и В - информационные системы, и S(B) - множества субъектов этих систем, D(B) - множество доменов системы В. Двухуровневым отношением доверия между системами А и В называется множество Т2д в С S(A) х S(B) х D(B) х {0,1,2} такое, что для любых субъектов а € S(A) и Ь 6 S(B) существует не более одной пары (d,k) е D(B) х {0,1,2} такой, что (a,b,d,k) е Т2А-В. При этом число к называется уровнем доверия для пары субъектов a ub и обозначается как TL(a, !>).

Смысл двухуровневого отношения доверия в том, что, если TL(a, Ь) = 0, то 6 не принимает от а никаких запросов, если TL(a, 6) = 2, то 6 доверяет а в обычном смысле. В случае, если TL(a, b) = 1 субъект Ь принимает запросы от субъекта а, однако не выполняет их, а порождает другой субъект Ь' с меньшими привилегиями, имеющий те же функциональные возможности, что и 6, и доверяющий субъекту а в обычном смысле. При этом субъект 6 получает домен d такой, что (a,b,d, 1) 6 Т2д в• Такой домен d называется доменом по умолчанию для субъектов а и Ь.

В работе дано также определение двухуровневого контекстного отношения доверия, как множества СТ2А<В С D{/1) х D(B) х {0,1,2} х D(B), где D(A) и D(B) - множества доменов систем А и В, соответственно.

Использование для интеграции моделей ЛРД двухуровневого контекстного отношения доверия в большей степени отвечает требованиям практики, чем использование других представленных в главе 3 видов отношения доверия. Так, например, SSH-сервср при получении запроса от клиента порождает субъект с меньшими привилегиями, который и выполняет клиентские запросы, то есть имеет место двухуровневое отношение доверия.

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

В четвертой главе представлены результаты исследований, направленных на разработку дополнительного модуля к ядру ОС Linux, предназначенного для управления логическим разграничением доступа субъектов к объектам информационной системы, распределенной на сетевой среде, с помощью отношений доверия. Как отмечено в главе 1, существующие программные решения могут быть использованы лишь для относительно узкого набора информационных систем. Принимая во внимание это обстоятельство, автором разработан альтернативный программный комплекс для контроля доверия между различными субъектами распределенных информационных систем, получивший название Nettrust. Принципы работы данного программного средства основаны на математических методах объединения моделей ЛРД, изложенных в главах 2 и 3. Личный вклад автора заключается в разработке архитектуры программного комплекса Nettrust, реализации его компонент и проведении тестовых испытаний.

Перечислены следующие требования, предъявляемые к программному комплексу Nettrust.

• Поддержка большого числа различных моделей ЛРД. Данное требование должно выполняться путем взаимодействия Nettrust с различными подсистемами управления ЛРД на узлах распределенной системы. Комплекс должен поддерживать использование как традиционных механизмов ЛРД ОС Linux, так и дополнительных механизмов SELinux, GRSecurity и RSBAC.

• Возможность эксплуатации комплекса в составе распределенной на сетевой среде информационной системы. Должно обеспечиваться управление доступом субъектов к объектам такой системы, разные узлы которой используют разные программные средства обеспечения безопасности и реализуют различные модели ЛРД.

• Возможность взаимодействия с «внешними» узлами, па которых Nettrust не используется.

• Возможность изменения настроек доверия между узлами подконтрольной информационной системы без перезагрузки ее подсистем.

• Возможность эксплуатации комплекса Nettrust без существенной модификации приложений в составе подконтрольной информационной системы. Контроль отношений доверия между субъектами распределенной информационной системы должен возлагаться на специальный модуль ядра.

• Отсутствие центрального сервера управления настройками доверия, компрометация которого привела бы к компрометации всей распределенной информационной системы.

• Возможность реализации двухуровневых отношений доверия с использованием программного комплекса Nettrust.

Изложены основные положения разработки программного комплекса Nettrust, к числу которых относятся следующие.

• Nettrust не использует центрального сервера. Все узлы, использующие Nettrust, считаются равноправными. Настройки доверия субъектов узла В к субъектам узла Л хранятся в памяти узла В.

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

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

• Для управления настройками доверия в ядре ОС используется протокол Netlink, который традиционно применяется в ОС Linux для управления настройками сетевой подсистемы ядра ОС. Использование Netlink имеет несколько преимущество перед синхронным обменом сообщениями. Одно из них - это возможность выполнения приложением различных функций во время ожидания данных от ядра ОС. Второе преимущество заключатся в том, что структура сообщений Netlink позволяет при модицикации настроек не передавать ядру данные, не нуждающиеся в изменении, что позволяет не использовать выделенное значение, означающее «оставить без изменений».

• Nettrust позволяет также использовать двухуровневые отношения доверия для контроля доступа субъектов к удаленным объектам. Для этого, однако, доверяющее приложение должно быть особымым образом модифицировано и вызывать специальную функцию accept_nt, которая представляет собой аналог комбинации системных вызовов accept,

fork и setuid/setgid. При этом в вызвавшем процессе дескриптор установленного соединения закрывается, так что субъект не может напрямую взаимодействовать с удаленным субъектом, которому доверяет не полностью. В настоящее время данная функция реализована в модуле ядра Nettrust в качестве системного вызова и работает только для TCP-соединений. Отметим, что реализация одноуровневых отношений доверия с помощью Nettrust не требует существенной модификации приложений в составе подконтрольной информационной системы.

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

• идентификатор подсистемы-собеседника, к которой относится запись;

• идентификаторы получателя и отправителя согласно используемой таблицей соответствия доменов;

• уровень доверия и домена по умолчанию для данной пары доменов.

Для управления Nettrust можно использовать как подсемейство Netlink, обозначаемое NETLIKK_TRUST, так и подсемейство протокола Generic Netlink. Первый способ считается устаревшим и реализован в целях обратной совместимости с первым прототипом Nettrust.

В обоих случаях для управления модулем Nettrust используется 11 команд, две из которых служат для изменения и получения типа используемой локальной подсистемы контроля доступа субъектов к объектам. Остальные девять команд разделены на три группы и служат для изменения, удаления или получения записей из трех перечисленных выше групп таблиц.

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

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

Файл на языке TrustML состоит из следующих четырех секций.

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

• Вторая секция содержит определения используемых таблиц соответствия между локальными и сетевыми метками безопасности.

• Третья секция содержит определения используемых таблиц доверия между субъектами

данного узла и субъектами других узлов распределенной информационной системы.

• В четвертой секции размещается некоторая информация о способах взаимодействия с

узлами, не описанными в третьей секции.

В диссетрационной работе подробно рассматривается синтаксис языка TrustML и представлено несколько примеров отношений доверия, описанных на этом языке.

Вторая прикладная утилита называется TrustCTL и используется для проведения незначительных изменений в настройках доверия.

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

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

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

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

В качестве иллюстрирующего можно рассмотреть следующий пример. Пусть некоторая организация получена объединением двух более мелких. Пусть в локальной сети первой организации учетным записям сотрудника Иванова соответствует сетевая метка безопасности, равная 100. Пусть в локальной сети второй организации учетным записям того же сотрудника соответствует сетевая метка безопасности, равная 1500. Пусть узел А подключен к первой сети, С -ко второй, а В - сразу к обеим. В этом случае узел В должен иметь учетную запись ivanov и две разных таблицы соответствия типов, используемых для взаимодействия с двумя разными подсетями. В первой из этих таблиц записи ivanov соответствует сетевая метка 100, а во второй 1500.

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

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

мы должны были бы иметь несколько таблиц соответствия доменов для корректной реализации модели ЛРД распределенной информационной системы.

Далее в главе 4 описаны испытания Nettrust, демонстрирующие его функциональные возможности и подтверждающие корректность работы. Кроме испытаний на локальной машине, проведены испытания в тестовой сети, построенной с использованием виртуальных машин на основе программного модуля User-Mode Linux (UML).

В заключении диссертационной работы перечислены ее основные результаты.

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

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

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

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

Благодарности

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

Публикации по теме работы

[1| А. А. Иткес, В. Б. Савкин. Механизмы протокола Netlink для управления сетевой подсистемой ОС Linux. Информационные технологии, по. 8, 2006, стр. 26-32.

[2] А. А. Иткес. Объединение моделей логического разграничения доступа для сложнооргани-зованных распределенных информационных систем. Проблемы информатики, no. 1, 2010, стр. 85-95.

[3] А. А. Иткес, В. Б. Савкин. К развитию механизмов логического разграничения доступа в распределенных информационных системах. Материалы конференции МаБИТ-2005. М.: МЦНМО, 2006. - 318 с. С. 232-242.

[4) К. А. Шапченко, О. О. Андреев, В. Б. Савкин, А. А. Иткес. Специализированные дистрибутивы операционной системы Linux с повышенным уровнем защищенности, // Критически важные объекты и кибертерроризм. Часть 2. Аспекты программной реализации средств противодействия. / О. О. Андреев и др. Под ред. В. А. Васенина. — М.: МЦНМО. — 2008. - 607 с. - С. 168-216.

Подписано в печать 13.05.10 Формат 60x88 1/16. Объем 1 п.л. Тираж 100 экз. Заказ № 956 Отпечатано в ООО «Соцветие красок» 119991 г.Москва, Ленинские горы, д.1 Главное здание МГУ, к. А-102

Оглавление автор диссертации — кандидата физико-математических наук Иткес, Александр Александрович

Введение

1 Модели и механизмы логического разграничения доступа в распределенных информационных системах

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

1.2 Многоуровневые модели логического разграничения доступа.

1.3 Модель принудительной типизации.

1.4 Традиционные механизмы разграничения доступа в операционной системе Linux

1.5 Модуль безопасности SELinux.

1.6 Модуль безопасности GRSecurity

1.7 Модуль безопасности RSBAC.

1.8 Разграничение доступа к объектам на сетевой среде с помощью IPTables

1.9 Программная система Netlabel.

1.10 Протокол Netlink.

1.11 Протокол Generic Netlink.

1.12 Выводы.

2 Представление одних моделей логического разграничения доступа в терминах других

2.1 Представление базовых моделей логического разграничения доступа.

2.2 Анализ дискреционных моделей логического разграничения доступа.

2.3 Анализ моделей разграничения доступа, реализуемых дополнительными модулях безопасности операционной системы Linux

2.4 Выводы.

3 Отношения доверия и объединение моделей логического разграничения доступа

3.1 Основные понятия.

3.2 Объединение ролевых моделей логического разграничения доступа.

3.2.1 Объединение простейших ролевых моделей.

3.2.2 Объединение иерархических ролевых моделей.

3.3 Объединение моделей принудительной типизации.

3.4 Объединение многоуровневых моделей логического разграничения доступа с помощью отношений доверия

3.4.1 Объединение традиционных многоуровневых моделей логического разграничения доступа.

3.4.2 Обобщенная многоуровневая модель логического разграничения доступа

3.5 Объединение дискреционных моделей логического разграничения доступа . 63 3.5.1 Объединение моделей гибкой типизации.

3.6 Контекстные отношения доверия.

3.7 Двухуровневые отношения доверия.

3.8 Выводы.

4 Программный комплекс Nettrust

4.1 Основные технические решения.

4.1.1 Хранение настроек доверия

4.1.2 Концепция передачи данных.

4.1.3 Дополнительные факторы, влияющие на отношения доверия между компонентами распределенной информационной системы.

4.1.4 Механизм определения доверия для UDP-приложений.

4.1.5 Управление настройками механизмов доверия.

4.1.6 Работа с таблицами доверия в ядре операционной системы.

4.1.7 Дополнительные задачи реализации двухуровневых отношений доверия

4.1.8 Вопросы, связанные с использованием пакетных сокетов.

4.2 Средства управления комплексом.

4.2.1 Управление Nettrust с помощью Netlink.

4.2.2 Управление Nettrust с помощью Generic Netlink.

4.2.3 Права доступа для управления настройками доверия

4.3 Прикладные средства управления настройками доверия.

4.3.1 Программа TrustCtl.

4.3.2 Язык описания отношений доверия TrustML.

4.3.3 Использование библиотеки LibNettrust.

4.4 Дополнительные элементы комплекса.

4.4.1 Конвертер меток безопасности.

4.4.2 Функции утилиты MkTrust.

4.5 Методика тестирования и результаты.

4.5.1 Тестирование базовых функций Nettrust.

4.5.2 Тестирование с использованием различных локальных систем контроля доступа субъектов к объектам.

4.5.3 Тестирование функции сброса привилегий.

4.6 Выводы.

Введение 2010 год, диссертация по информатике, вычислительной технике и управлению, Иткес, Александр Александрович

Актуальность темы

В течение последних десяти лет сфера применения сложных, территориально распределенных информационных систем неуклонно расширяется. Вместе с этой тенденцией возрастает и величина потенциального ущерба, который может быть причинен обществу в результате некорректной работы подобных систем. Сбои в их работе могут возникать случайно, не по злому умыслу, а также в результате намеренных действий как лиц, внешних по отношению к системе, так и администраторов, ответственных за те или иные аспекты ее сопровождения. Диапазон потенциальных нарушителей с точки зрения их целей и возможностей достаточно широк. Он простирается от подростков, желающих показать свои знания в области информационных технологий, до террористических и военно-политических организаций, имеющих целью на длительное время вывести из строя жизненно важные для страны информационные системы [25], причинив государству как можно больший ущерб. Такой ущерб может иметь не только экономические, но и социальные, политические последствия. Отказы или сбои в работе современных информационных систем могут привести к экологическим или техногенным катастрофам, к человеческим жертвам и, учитывая тенденции развития общества и темпы развития телекоммуникаций, в будущем риски подобных событий будут повышаться.

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

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

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

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

Цели и задачи работы

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

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

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

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

Методы исследования

Для решения поставленных в данной работе задач используются:

• математическое моделирование механизмов логического разграничения доступа;

• методы дискретной математики и математической логики;

• методы программной инженерии.

Основные результаты

В работе получены следующие основные результаты.

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

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

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

Научная новизна работы

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

Практическая значимость

Результаты работы создают методологическую основу для разработки программных средств обеспечения безопасности распределенных информационных систем, компоненты которых с открытым исходным кодом функционируют на базе ОС Linux. По результатам работы автором спроектирован и реализован прототип программного комплекса Nettrust, предназначенного для управления доступом субъектов к объектам в распределенных на сетевой среде сложных информационных системах.

Личный вклад автора

Личный вклад автора данной работы заключается в выполнении следующих задач:

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

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

Апробация работы

Результаты работы докладывались: на научной конференции «Математика и безопасность информационных технологий» в 2005 году; На конференции «Ломоносовские чтения» в МГУ в 2006 и 2009 годах, на семинаре «Проблемы современных информационно-вычислительных систем» под руководством д.ф.-м.н., проф. В. А. Васенина (механико-математический факультет МГУ имени М. В. Ломоносова) в 2005 и 2010 годах.

Публикации

По результатам диссертационной работы вышли 4 научных публикации, из которых одна статья [3] - в журнале из перечня ведущих рецензируемых изданий, рекомендованных ВАК. Материалы работы вошли в главу 3 опубликованной в 2008 году коллективной монографии «Критически важные объекты и кибертерроризм. Часть 2. Аспекты программной реализации средств противодействия» под ред. В. А. Васенина. [25].

Структура работы

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