На  практике  системы разграничения доступа (СРД), базирующиесяна
моделях  матричного  типа,  реализуются обычно в виде специальных
компонент  универсальных  операционных  систем  (ОС)  или  систем
управления   базами  данных  (СУБД).  Зачастую  такие  компоненты
поставляются в виде самостоятельных программных изделий. Например
такие  известные  программные  средства защиты как RACF (Resource
Access  Control  Facility)  фирмы  IBM,  SECURE  фирмы  Boole and
Babbige  и  TOPSECRET  фирмы  CGA Computer Ivc, предназначены для
расширения  функционалных  возможностей  широко  распространенных
операционных  систем  IBM  Sustem/370  MVS  и  VSI  возможностями
аутентификации пользователей и матричного разграничения доступа к
томам  и  наборам  данных  на  магнитных  дисках, томам данных на
магнитной  ленте,  а  также  транзакциям  IMS  и CICS и некоторым
другим   объектам   данных.   В  более  современных  операционных
системах, таких как UNIX и VAX/VMS, функции разграничения доступа
к  элементам  файловой  структуры интегрированы непосредственно в
управляющую  программу.  Существенной  особенностью матричных СРД
для    наиболее   широко   используемых   на   сегодняшний   день
универсальных   операционных   систем   является   принципиальная
децентрализованность  механизмов диспетчера доступа, что приводит
к  невозможности  строгого  выполнения изложенных выше требований
верифицируемости,   защищенности  и  полноты  контроля  указанных
механизмов. В области многоуровневых систем разграничения доступа
доминирующей идеей, в течении последнего десятилетия определившей
основное  направление исследований, является концепция разработки
защищенной   унивесальной   операционной   системы  на  базе  так
называемого   ядра  безопасности  [21].  Под  ядром  безопасности
понимают  локализованную,  минимизируемую,  четко  ограниченную и
надежно    изолированную    совокупность    программно-аппаратных
механизмов, доказательно правильно реализующих функции диспетчера
доступа  (и ряд других сопутствующих служебных функций, например,
доверенных процессов). Демонстрация корректности функционирования
ядра  безопасности проводится путем полной формальной верификации
его программ и пошаговым доказательством их соответствия заданной
математической  модли  защиты  на  всех стадиях разработки. Важно
отметить,  что  сама  концепция ядра безопасности своим рождением
обязана стремлению преодолеть трудности реализации средств защиты
в рамках традиционных операционных систем. В упрощенной трактовке
этот  тезис выглядит следующим образом: - если невозможно создать
верифицируемую  систему защиты для произвольной ОС, то необходимо
создать  специалную ОС (а может и сециальную ЭВМ), средсва защиты
которой  допускали  бы  формальную  верификацию.  Создатели  ядра
безопасности  обеспечивают  выполнение  требований  к  диспетчеру
доступа  за  счет  специфической  структуры  ОС  и  самого  ядра,
применения  специальных  методов  и технологии разработки,а также
при   определенной   архитектурной   поддержке,   реализуемой   а
аппаратных   средствах   ЭВМ.   Стремление  к  снижению  объма  и
внутреннейлогической  сложности  ядра продиктовано необходимостью
выполнения   требований  верифицируемости.  Той  же  цели  служит
специальная  технология  разработки  программ  ядра  и  некоторых
других   компонентов   ОС   (использование   средств   формальной
спецификации    программ    и   автоматизированной   проверки   х
корректности, применение специфических приемов программирования и
специаьных  компиляторов  и  т.п.)  [22]  . Выполнение требования
защищенности     собственных    механизмов    СРД    способствует
использование  специальной  аппаратной  поддержки  и  включение в
состав   контролруемых   ядром   объектов  важнейших  управляющих
структур  самой  ОС.  Последняя мера направлена на предотвращение
возможности    несанкционированного   переходы   пользовательских
процессов   в  привилегированное  состояние  (или,  как  говорят,
"прокола"  ОС).  Для  традиционных универсальных ОС именно задача
доказательства   отсутствия  таких  проколов  является  одной  из
наиболее   трудноразрешимых   (требование  полноты  контроля).  К
аппаратным   средствам   поддержки   защиты   и   изоляции   ядра
безопасности   относятся:   -  многоуровневые,  привилегированные
режимы  выполнения  команд  (с  числом  уровней  больше  двух); -
использование   ключей   защиты   и   сегментирование  памяти;  -
реализация  механизма  виртуальной  памяти с разделением адресных
пространств;  -  аппаратная  реализация  функций ОС; - хранение и
распространение  программ в ПЗУ; - использование новых архитектур
ЭВМ.  Хорошей  идеей структурной организации программных средств,
ориентированной на изоляцию управляющих механизмов и структур ОС,
явилась   концепция   "виртуальной   машины",   нашедшая  широкое
применение  в практике создания безопасных вычислительных систем.
Однако  несмотря  на  значительные усилия и средства, вложенные в
исследования  и  разработку  рпрограммных  и  аппаратных  средств
многоуровневой   защиты,   на  сегодняшний  день  многие  ведущие
специалисты  приходят к выводу, что существующими методами задачу
создания  безопасной  ЭВМ  с операционной системой универсального
приенения  не  удасться решить в рамках ближайшего десятилетия. В
начале   80-х  годов  в  США  появились  специализированные  ЭВМ,
аттестованные   Национальным   Центром   Безопасности   ЭВМ,  как
гарантированно    защищенные,    что   в   классификации   центра
соответствует   оценке  А1.  Широкую  известность,  в  частности,
приобрела  система  SCOMP  фирмы  Honeywell,  предназначенная для
использования   в   центрах   коммутации   вычислительных  сетей,
обрабатывающих   секретную  информацию  [23].  Хотя  эта  система
разработана  на  базе  концепции ядра безопасности, ее создателям
удалось  обеспечить  необходимые характеристикипроизводительности
благодаря  существенному  ограничению функциональных возможностей
данной  специализированной ОС. Необходимо отметить, что хотя опыт
создания  этой,  а  также некоторых других узкоспециализированных
систем  и продемонстрировал специфическую применимость указанного
подхода,  он  с  другой  сторонылишний  раз подтвердил чрезмерную
громодздкость  и  неэффективностьсуществующих  методов разработки
доказательно    корректного    программного    обеспечения,   что
препятствует   созданию   этим   способом  функционально  полных,
универсальных   безопасных  операционных  систем.  Возвращаясь  к
системам разграничения доступа для традиционных неструкуированных
(т.е.  имеющих  ядра безопасности) операционныхсистем, необходимо
отметить,  что  как  показывает  практика,  для  них  оказывается
невозможным  надежно  удостовериться  в  отсутствии (или наличии)
скрытых  каналов  доступа  к  информационным  объектам  состороны
программ,  нарушающих сстемные соглашения. Более того, в таикх ОС
невозможно      гарантировать      отсутствие      путей      для
несанкционированного   перехода   пользовательских   процессов  в
привилегированное  состояние.  Последнее тем более опасно потому,
что    если    прикладной   программе   удасться   в   результате
преднамеренных  действий  получить привилегированный статус, то в
принципе  она  сможет  вообще  отключить  все  средства  защиты и
обеспечить  себе  доступ  к  любым  хранящимся  в  вычислительной
системе    данным.    Причины    такого   положения   кроются   в
децентрализованности механизмов доступа к разнородным объектам, а
также в отсутствии эффективных средств изоляции программ и данных
в  пределах общего адресного пространства основной памяти. В этих
условиях попытка верификации ограниченного подмножества программ,
совокупно реализующих функции распределенного диспетчера доступа,
приводит  к  необходимости анализа почти всех программных модулей
ОС,   что   существующимиметодами   сделать   не   удастся  ввиду
чрезвычайно   большого  суммарного  объема  программ  современных
операционных   систем.   Вследствие  невозможности  количественой
оценки защищенности неструктуированных универсальных ОС, создание
средств  многоуровнего  разграничения  доступа для них становится
нецелесообразным.  Поэтому,  как уже указывалось, для большинства
ОС  коммерческие системыразграничения доступа реализуются на базе
матричных  моделей  защиты  (то  есть  не  превышают уровня О2 по
критериям   4   О"Оранжевой   книги").   Указанные   трудности  в
обеспечении защиты вычислительных систем приводят к необходимости
применения дополнительных объектовых мер организационной защты. В
особо  ответственных применениях разработчики вынуждены прибегать
к   проведению   трудоемкого   инженерногоанализа   ПО,  а  также
существенно  ограничивать  функциональные возможности применяемых
ОС,  порою  "вычеркивая"  из  них  целые  компоненты.  Применение
подобных   мер   приводит   к  существенному  росту  расходов  на
разработку,  эксплуатацию  и  сопровождение  систем, препятствует
нормальному  процессу  их  эволюционного  развития. Использование
криптографических методов открывает новые, уникальные возможности
защиты   данных   в   вычислительных   сетях,   недостижимые  при
использовании   традиционных   методов   разграничения   доступа,
действующих  на  уровне  контроля  обращений к элементам структур
данных.
 

Оставит комментарий