
Защита информации в инфокоммуникационных системах и сетях.-3
.pdf81
данным субъекта КЦ.
Поясним теперь понятие качественного КЦ с точки зрения математических свойств функции КЦ. Предположим, что имеется некоторый объект F и некоторый алгоритм Н,
преобразующий объект F в некоторый объект М, который представляется словом того же языка, но меньшей длины. Этот алгоритм таков, что при случайном равновероятном выборе двух объектов F1 и F2 из множества возможных соответствующие им объекты MI=H(F1) и
M2==H(F2) с высокой вероятностью различны. Тогда проверка целостности данных строится так: рассматриваем объект F, по известному алгоритму Н строим K=H(F) и сравниваем М,
заранее вычисленное как М = H(F), с К. При совпадении считаем объект неизменным.
Алгоритм Н называют, как правило, хэш-функцией, или реже контрольной суммой, а число М
- хэш-значением.
Качество КЦ определяется в данном случае выполнением следующих условий:
1. По известному объекту M=H(F) нахождение другого объекта G, не тождественного
F, такого, что M==H(G), является задачей с трудоемкостью не менее заданной Th.
2.Объект М должен быть недоступен для изменения.
3.Длина объекта М должна обеспечивать условную вероятность P(H(Fi)=H(F2)/Fi не тождествен F2) не более заданной Рь.
Поясним смысл этих условий. Пусть программа злоумышленника изменила объект F
(статическое искажение). Тогда, вообще говоря, хэш-значение М для данного объекта изменится. Если субъекту злоумышленника доступен для изменения объект М (существует соответствующий поток), то он может по известному алгоритму Н вычислить новое хэш-
значение для измененного объекта и заместить им исходное.
Пусть хэш-значение недоступно, тогда можно попытаться так построить измененный объект, чтобы хэш-значение его не изменилось; принципиальная возможность этого имеется,
поскольку отображение, задаваемое алгоритмом хэширования Н, не биективно
(неоднозначно).
Таким образом, при условии недоступности хэш-значения для изменения и доступности для изменения объекта-источника трудоемкость нарушения ИПС с КЦ объектов-
источников (т. е. возможность породить субъект из объекта-источника, не тождественного исходному объекту) совпадает с Tн. При однократной попытке инициировать субъект из случайно равновероятно выбранного объекта-источника вероятность нарушения ИПС
(успешное порождение субъекта) не превосходит Ph. Итак, «качество» ИПС определяется свойствами хэш-функции Н, а именно: величинами Tн и Рн.
Обобщим приводимые выше рассуждения в методе "безопасной загрузки", или ступенчатого контроля. Он заключается в постепенном установлении неизменности
81
82
компонент программно-аппаратной среды:
1.Сначала проверяется неизменность программ ПЗУ, при положительном исходе через проверенные на целостность программы ПЗУ считывается загрузочный сектор и драйверы операционной системы (по секторам) и их неизменность также проверяется, кроме того, проверяется целостность объекта, определяющего последовательность активизации компонент;
2.Через функции чтения, проверенной ОС, инициируется процесс контроля порождения процессов (реализация МБС);
3.Инициирование процесса контроля доступа к объектам завершает проектирование гарантировано защищенной АС.
Рассматривая вопросы программно-технической реализации ИПС, необходимо заметить, что мощность множества субъектов в некотором сегменте АС (выделенном по признаку принадлежности одной ЭВМ) с момента включения питания до момента запуска процессов пользователя увеличивается. Первоначально активизируются субъекты аппаратно-
программного уровня (программы ПЗУ), затем указанные субъекты порождают из объектов-
источников данного уровня (это, как правило, сектора внешних носителей информации)
субъектов уровня операционной среды.
Субъекты уровня операционной среды, как уже отмечалось, также делятся на два подуровня: нижний уровень — субъекты — первичные загрузчики ОС (работающие с информацией уровня секторов) и верхний уровень - субъекты-драйверы (порождаемые субъектами - первичными загрузчиками из объектов-секторов), работающие с объектами уровня «файл» (последовательности секторов). На этапе перехода от субъектов-загрузчиков к субъектам-драйверам происходит переход и к другой декомпозиции АС на объекты (от секторов к файлам). Указанная иерархия действует в любой известной на сегодняшний день АС и естественным образом предопределяет архитектуру, в рамках которой формируется и функционирует ИПС.
Например, аппаратная архитектура ПЭВМ типа IBM PC задает следующие этапы активизации различных субъектов АС. При включении питания ПЭВМ происходит тестирование ОП, инициализация таблицы векторов прерываний и поиск расширений BIOS.
При их наличии управление передается на них. После отработки расширений BIOS в память считывается первый сектор дискеты или винчестера и управление передается на него
(образуется код загрузчика), затем код загрузчика считывает драйверы операционной системы, далее интерпретируются файлы конфигурации, подгружается командный интерпретатор и выполняется файл автозапуска.
При реализации ИПС на нее должна быть возложена функция контроля запусков
82
83
программ и контроля целостности.
При описании методологии проектирования ИПС упоминалась проблема контроля реальных данных. Эта проблема состоит в том, что контролируемая на целостность информация может представляться по-разному на разных уровнях.
Внедренный в систему субъект может влиять на процесс чтения-записи данных на уровне файлов (или на уровне секторов) и предъявлять системе контроля некоторые другие вместо реально существующих данных. Этот механизм неоднократно реализовался в STELS-
вирусах. Однако верно утверждение.
Утверждение 7 (достаточное условие чтения реальных данных)
Если субъект, обслуживающий процесс чтения данных (т. е. указанный субъект инициируется запрашивающим данные субъектом и участвует в потоке), содержал только функции тождественного отображения данных на ассоциированные объекты-данные любого субъекта, инициирующего поток чтения, и целостность объекта-источника для этого субъекта зафиксирована, то при его последующей неизменности чтение с использованием порожденного субъекта будет чтением реальных данных.
Доказательство. Верность утверждения следует из определения тождественности субъекта и из условия утверждения, гарантирующего неизменность объекта-источника.
Необходимо и здесь сделать оговорку о вероятностном характере установления неизменности и говорить, что чтение реальных данных возможно с вероятностью,
определяемой алгоритмом КЦ.
Метод ступенчатого контроля не противоречит утверждениям 4 и 5 и предусматривает разделение последовательности активизации компонент ZL на подпоследовательности с одинаковым уровнем представления информации.
Реализация метода ступенчатого контроля целостности должна удовлетворять условиям утверждения 4.
Опишем практическую реализацию сформулированных методов.
Выше было сказано о том, что субъект контроля неизменности объектов, входящих в процедуры активизации АС и объектов, описывающих последовательность активизации компонент, должен быть активен уже на этапе работы субъектов аппаратно-программного уровня, но его объект-источник технически не может быть проверенна неизменность. В связи с этим подчеркнем весьма важный факт для любых реализаций ИПС.
Аксиома 5. Генерация ИПС рассматривается в условиях неизменности конфигурации тех субъектов АС, которые активизируются до старта процедур контроля целостности объектов Oz и последовательности ZL. Неизменность данных субъектов обеспечивается внешними по отношению к самой АС методами и средствами. При анализе или синтезе
83
84
защитных механизмов свойства указанных субъектов являются априорно заданными.
При решении практических вопросов генерации ИПС можно выделить три самостоятельных направления.
Первое из них связано с использованием внешних по отношению к АС субъектов (как правило, размещенных на внешнем носителе), целостность которых гарантируется методами хранения или периодического контроля. Предопределенность активизации субъектов,
локализованных на внешних носителях, обеспечивается свойствами субъектов аппаратно-
программного уровня (например, возможно установить такую аппаратную конфигурацию ПЭВМ, при которой будет происходить загрузка операционной системы с ГМД).
Второе направление связано с локализацией ИПС в рамках территориально ограниченного рабочего места (как правило, ПЭВМ) и использует аппаратную поддержку для задания предопределенной последовательности активизации субъектов. Данное направление,
как правило, включает и аппаратную поддержку аутентификации пользователей.
Третье направление связано с реализацией метода доверенной загрузки операционной среды с использованием уже имеющихся в ней механизмов реализации и гарантирования ПБ.
Необходимо заметить, что в различные интервалы активности АС субъектами могут управлять различные пользователи, для которых множество разрешенных субъектов Е различно, в связи с этим будем говорить о множестве Ei для i-го пользователя АС.
Будем также подразумевать, что перед установлением однозначного соответствия множества Ei пользователю i происходит процедура его аутентификации.
Ниже будут кратко рассмотрены все способы реализации ИПС. Говоря о первом из них необходимо отметить, что в его рамках можно рассматривать конфигурацию ИПС в двух вариантах:
при локализации всех объектов-источников для порождения ИПС в рамках одного или нескольких внешних носителей;
при локализации части объектов-источников на внешнем носителе, а части - во внешней памяти рабочего места.
Вторая конфигурация характеризуется потенциальной возможностью нарушения изолированности, состоящей в том, что активизация субъектов из объектов-источников, не принадлежащих внешнему носителю, может производиться вне рамок ИПС. В качестве примера можно рассмотреть ситуацию, когда программы запускаются в рамках операционной среды, загруженной с дискеты. С другой стороны, запуск указанных программ возможен и при загрузке ОС с другого носителя (в частности, с носителей рабочего места), и при этом возможна активизация и тех модулей, которые находятся на дискете.
Следовательно, основной задачей при использовании внешнего носителя для
84
генерации ИПС является обеспечение невозможности активизации объекта-источника внешнего носителя вне рамок зафиксированной последовательности активизации компонент ИПС.
Наиболее ранний описанный способ проектирования ИПС в рамках подхода с использованием внешнего носителя получил название «невидимой дискеты». Этот способ заключается в том, что все объекты, принадлежащие множеству Oz, и объекты, описывающие последовательность ZL, помещаются на внешний носитель, с которого может быть произведена загрузка операционной системы (обычно дискета). Неизменность объектов обеспечивается физической защитой носителя от записи.
Кроме того, использование специальной технологии не позволяет использовать объекты (в том числе и обеспечить выполнение программ) без загрузки ОС именно с этой дискеты. Практически такая дискета выглядит достаточно нетривиально: будучи помещенной в дисковод ПЭВМ она выглядит как неформатированная (или, вином варианте, пустая). После загрузки с такой "пустой" дискеты пользователь сразу «погружается» в заданную программу и работает с ней, обращаясь в том числе и к данным на винчестере и запуская программы с локальных несменяемых носителей рабочего места с предварительным контролем неизменности соответствующих им объектов-источников (исполняемых файлов).
Предлагаемый способ позволяет исключить использование изготовленной дискеты без загрузки с нее. Дополнив загружаемую с такой дискеты операционную среду программами проверки целостности, можно добиться соблюдения всех требований изолированности программно-аппаратной среды.
Как следует из утверждения 5, одним из важнейших условий поддержания ИПС является невозможность изменения последовательности активизации компонент.
В данном случае целостность объектов, содержащих последовательность активизации компонент, гарантируется физическим запретом записи на дискету,
Важной проблемой является невозможность прерывания процесса активизации компонент, В ряде операционных сред для этого имеются штатные возможности,
предусмотренные для обеспечения защиты от ошибок пользователя, сформировавшего некорректную последовательность активизации компонент ОС. В связи с этим должны быть приняты меры, гарантирующие пассивность органов управления в период отработки последовательности ZL (например, аппаратная блокировка клавиатуры с момента активизации модифицированного BOOT до момента окончания активизации субъектов множества Sz).
Описанный метод позже был реализован во внешних носителях типа CD-ROM,
которые позволили значительно (на два порядка) увеличить информационную емкость
85
86
носителя и загружать с него развитые операционные среды типа OS/2. Однако однократность записи существенно снижает гибкость построения ИПС таким методом.
Неудобство использования загрузочной дискеты и ее быстрый износ обусловили возникновение следующего способа проектирования ИПС.
Откажемся от рассмотрения загрузочной дискеты и рассмотрим ПЭВМ с загрузкой ОС с устройства локального хранения (винчестера) и дополнительным аппаратным устройством изолирования среды.
Рассмотрим два этапа - этап установки ИПС и этап эксплуатации ИПС. Предположим существование N пользователей, каждый i-ный из которых характеризуется некоторой персональной информацией Кi, не известной другим пользователям и хранящейся на некотором материальном носителе (например, устройстве сенсорной памяти типа Touch Memory). Существует также администратор системы с ИПС, который знает все Ki и
единолично проводит этап установки. Пользователи (владельцы Ki) же участвуют только в этапе эксплуатации.
Процесс установки ИПС состоит из следующих действий:
1. В ПЭВМ устанавливается аппаратный модуль, включающий в себя устройство и программы ПЗУ данного устройства (субъекты аппаратно-программного уровня),
реализующие:
операции сервиса аутентифицирующего носителя пользователя Ci (как минимум его чтение);
аутентификацию пользователя с номером inc введенному им Ki; 1- чтение массива данных, содержащего множество доступных для пользователя i объектов-источников
(исполняемых модулей) Fil, Fi2, …,Fim, составляющих Oz, а также объект, содержащий ZL;
вычисление информации Mil, Mi2, ... Mim, фиксирующей целостность объектов-
источников Fil, ..., Fim каждого объекта-источника (информация Mij должна удовлетворять требованиям хэш-значений и, возможно, зависеть от Ki), Mij=H(Ki, Fj)
блокирование устройств управления и предотвращение загрузки операционной среды с внешнего носителя.
2.Администратор определяет для пользователя i набор потенциально возможных для активизации субъектов Ei, Ei={Pil, ..., Pimi}, i==l, ...,N. Create (Pik, Fj)->Pij, mi - число разрешенных к запуску задач для i-го пользователя.
3.Администратор формирует (и заносит на носитель) или считывает с носителя для i-
го пользователя ero Ki и вычисляет значения для последующего контроля целостности Мijr==
Н(Кi, Fjr) где Н- функция КЦ (хэш-функция).
4. Администратор проделывает действия 2 и 3 для всех N пользователей.
86
87
5.Администратор устанавливает в АС МБС с объектом-источником Fипс и фиксирует его целостность. Установка модуля происходит с учетом условий утверждения 5.
6.Администратор фиксирует целостность объекта, содержащего ZL.
Процесс эксплуатации состоит из следующих действий.
1.Включение питания и активизация аппаратного модуля:
а) Идентификация пользователя i по Ki.
При успехе выполняется п. б), при неудаче ПЭВМ блокируется.
б) Проверка целостности всех установленных в ПЭВМ ПЗУ. При положительном исходе выполняется п. в), при неудаче ПЭВМ блокируется.
в) Чтение по секторам файлов операционной среды и проверка их целостности.
г) Чтение как файла Fипс (с помощью функций операционной среды) и проверка его целостности. Вариантом может быть чтение Fипс по секторам.
д) Активизация процесса контроля Рипс. Сгeatе(Sх,Fипс)->Fипс. Активизация МБО.
е) Запуск избранной задачи i-го пользователя (может не выполняться). 2.РаботавИПС.
Запуск каждого процесса Ps сопровождается проверками:
а) Принадлежит ли Ps к множеству разрешенных для i (Еi) если да, то выполняется п.
б), иначе запуск игнорируется.
б) Совпадает ли G==Н(Кi, Fs,) с M=H(Ki, Fs), вычисленной администратором.
в) При положительном исходе б) задача запускается, иначе запуск игнорируется.
Легко видеть, что условия изолированности среды выполнены. Кроме того, в данном случае реализован механизм ступенчатого контроля, обеспечивающий чтение реальных данных.
При дополнении в ИПС реализации МБО и выполнении условий, предъявленных выше, к субъектам, входящим в ИПС, сформированная программная среда будет гарантированно защищенной в рамках политики безопасности, реализованной в МБО.
Используя утверждение 4, об одинаковости состояний АС после активизации проверенных на неизменность субъектов в неизменной последовательности, можно описать метод доверенной загрузки компонент операционной среды (кратко «метод доверенной загрузки»).
Пусть предопределен порядок загрузки компонентов ОС (под загрузкой компонентов ОС понимается активизация различных субъектов ОС из соответствующих объектов-
источников различного уровня иерархии). Процедуру загрузки ОС назовем доверенной, если:
установлена неизменность компонент ОС (объектов), участвующих в загрузке
(иными словами - объектов, принадлежащих множеству Oz), причем неизменность
87
88
установлена до порождения первого субъекта из ZL;
установлена неизменность объектов, определяющих последовательность активизации компонент ОС (с учетом нескольких уровней иерархии), неизменность обеспечена в течение заданного интервала времени; состояние указанных объектов не может быть изменено никем, кроме предопределенного пользователя (пользователей) АС (это условие соответствует неизменности последовательности ZL).
Легко видеть, что процедура доверенной загрузки обеспечивает одинаковое состояние АС после выполнения загрузки (согласно утверждению 4).
Основная техническая проблема при реализации доверенной загрузки состоит в доступе к объектам высшего уровня иерархии ОС (файлам) до загрузки ядра данной ОС
(загружаемую ОС далее будем называть пользовательской). Однако при возможности генерации ИПС для какой-либо иной ОС (далее будем называть ее базовой) можно предложить итеративную реализацию доверенной загрузки с использованием ресурсов указанной ОС.
Рассмотрим реализацию доверенной загрузки ОС на основе генерации ИПС для одной из операционных сред вычислительной системы. Предположим, что имеется базовая операционная система, для которой возможна полноценная генерация ИПС. Пусть в вычислительной Системе существуют еще операционные системы Os1, 0s2, ..., OSn. Ставится задача доверенного запуска операционной среды OSj. Пусть в базовой операционной системе имеется некоторое условно называемое "шлюзовое ПО" между базовой операционной системой и OSj. Функции шлюзового ПО заключаются в обеспечении доступа к файловой системе операционной системы OSj (т. е. объектам уровня R).
Пусть также пользователь i имеет физический доступ к комплекту технических средств
(рабочему месту) сети (ЭВМ) Тm, на котором установлена операционная система OSj. При использовании комплекта Тm пользователем i.
1.Происходит аутентификация пользователя i (по его индивидуальной информации).
2.Проверяются права пользователя по использованию аппаратной компоненты комплекта Тm.
3.Контролируется целостность (на основе информации пользователя Ki либо без нее)
всех объектов базовой ОС, размещенных на некотором носителе, локально или удаленно
(через технические средства ЛВС) связанном с Тт.
4.Загружается базовая операционная система и контролируется целостность шлюзового ПО.
5.Загружается шлюзовое ПО (при этом становится доступной как минимум в режиме чтения файловая структура OSj, размещенная локально на Тm).
88
89
6.Контролируется целостность объектов уровней, меньших Rj (Rj - максимальный уровень представления объектов в OSj) для OSj (см. выше).
7.Контролируется целостность объектов уровня Rj (файлов) OSj.
8.Контролируется целостность объекта, задающего последовательность загрузки компонент.
9.Осуществляется принудительная загрузка (инициируется предопределенный в силу целостности объектов Oz и последовательности ZL порядок загрузки компонент ОС)
проверенной на целостность OSj.
Утверждение 8 (условия генерации ИПС при реализации метода)
Пусть ядро ОС содержит МБО и МБС, инициируемые в ОС субьекты попарно корректны, их объекты-источники принадлежит множеству проверяемых на неизменность в ходе доверенной загрузки, МБО запрещает изменение любого объекта-источника и выполнена процедура доверенной загрузки ОС. Тогда после инициирования ядра ОС генерируется ИПС.
Доказательство. Процедура доверенной загрузки по построению обеспечивает неизменность Oz и ZL, по условию утверждения для порождения субъектов разрешены только объекты-источники, принадлежащие 0z, неизменность объектов-источников по условию гарантируется свойствами МБО. Следовательно, выполнены условия утверждения 5
и генерируется ИПС. Утверждение доказано.
4. Математические модели информационной безопасности
Модель информационной безопасности - формальное выражение политики безопасности.
Формальные модели необходимы и используются достаточно широко, потому что только с их помощью можно доказать безопасность системы опираясь при этом на объективные и неопровержимые постулаты математической теории. модели безопасности позволяют обосновать жизнеспособность системы и определяют базовые принципы ее архитектуры и используемые при ее построении технологические решения Основная цель создания политики безопасности информационной системы и описания ее в виде формальной модели — это определение условий, которым должно подчиняться поведение системы,
выработка критерия безопасности и проведение формального доказательства соответствия системы этому критерию при соблюдении установленных правил и ограничений.
Кроме того, формальные модели безопасности позволяют решить еще целый ряд задач возникающих в ходе проектирования, разработки и сертификации защищенных систем,
поэтому их используют не только теоретики информационной безопасности, но и другие
89

90
категории специалистов, участвующих в процессе создания и эксплуатации защищенных информационных систем (производители, потребители, эксперты-квалификаторы).
Производители защищенных информационных систем используют модели безопасности в следующих случаях:
при составлении формальной спецификации политики безопасности разрабатываемой системы;
при выборе и обосновании базовых принципов архитектуры защищенной системы, определяющих механизмы реализации средств защиты;
в процессе анализа безопасности системы в качестве эталонной модели;
при подтверждении свойств разрабатываемой системы путем формального доказательства соблюдения политики безопасности.
Потребители путем составления формальных моделей безопасности получают возможности довести до сведения производителей свои требования в четко определённой и непротиворечивой форме, а также оценить соответствие защищенных систем своим потребностям. Эксперты по квалификации в ходе анализа адекватности реализа ции политики безопасности в защищенных системах используют модели безопасности в качестве эталонов.
Все рассматриваемые модели безопасности основаны на следующих базовых представлениях:
1.Система является совокупностью взаимодействующих сущностей — субъектов
иобъектов. Безопасность обработки информации и обеспечивается путем решения задачи управления доступом субъектов к объектам в соответствии с заданным набором правил и ограничений, которые образуют политику безопасности. Считается, что система безопасна, если субъекты не имеют возможности нарушить правила политики безопасности.
2.Все взаимодействия в системе моделируются установлением отношений определенного типа между субъектами и объектами. Множество типов отношений определяется в виде набора операций, которые субъекты могут производить над объектами.
3.-Все операции контролируются монитором взаимодействий и либо запрещаются, либо разрешаются в соответствии с правилами политики безопасности.
4. Политика безопасности задается в виде правил, в соответствии с которыми должны осуществляться все взаимодействия между субъектами и объектами. Взаимодействия,
приводящие к нарушению этих правил, пресекаются средствами контроля доступа и не могут быть осуществлены.
5. Совокупность множеств субъектов, объектов и отношений между ними
(установившихся взаимодействий) определяет состояние системы. Каждое состояние
90