Файл: Алексеева Галина Алексеевна Сертификация информационных систем методические указания.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.12.2023
Просмотров: 38
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Кузбасский государственный технический университет имени Т.Ф. Горбачева»
Кафедра информационных и автоматизированных производственных систем
Составитель
Г. А. Алексеева
СЕРТИФИКАЦИЯ
ИНФОРМАЦИОННЫХ СИСТЕМ
Методические указания к самостоятельной работе
Рекомендовано цикловой методической комиссией специальности СПО 09.02.07 Информационные системы и программирование в качестве электронного издания для использования в образовательном процессе
Кемерово 2018
1
Рецензенты:
Ванеев О. Н. – кандидат технических наук, доцент кафедры инфор- мационных и автоматизированных производственных систем
Чичерин И. В. – кандидат технических наук, доцент кафедры инфор- мационных и автоматизированных производственных систем
Алексеева Галина Алексеевна
Сертификация информационных систем: методические указания к самостоятельной работе [Электронный ресурс] для обучающихся специ- альности СПО 09.02.07 Информационные системы и программирование очной формы обучения / сост. Г. А. Алексеева; КузГТУ. – Электрон. издан.
– Кемерово, 2018.
Приведено содержание самостоятельной работы, материал, необхо- димый для успешного изучения дисциплины.
Назначение издания – помощь обучающимся в получении знаний по дисциплине «Сертификация информационных систем» и организация са- мостоятельной работы.
КузГТУ, 2018
Алексеева Г. А., составление, 2018
2
СОДЕРЖАНИЕ
СОДЕРЖАНИЕ ........................................................................... 2
ВВЕДЕНИЕ ................................................................................. 3 1 ФОРМИРОВАНИЕ И ИЗУЧЕНИЕ СВОЙСТВ МОДЕЛИ
БЕЛЛА-ЛАПАДУЛА .......................................................................... 4 1.1 ЦЕЛЬ РАБОТЫ .................................................................. 4 1.2 ОСНОВНЫЕ РАЗДЕЛЫ ИЗУЧАЕМОГО
МАТЕРИАЛА ................................................................................... 4 1.3 ПРИМЕР ВЫПОЛНЕНИЯ ............................................... 7 1.4 ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ ................................. 10 1.5 СОДЕРЖАНИЕ ОТЧЕТА ............................................... 12 1.6 КОНТРОЛЬНЫЕ ВОПРОСЫ......................................... 12 2 ЭЛЕКТРОННАЯ ЦИФРОВАЯ ПОДПИСЬ ........................ 13 2.1 ЦЕЛЬ РАБОТЫ ................................................................ 13 2.2 ОСНОВНЫЕ РАЗДЕЛЫ ИЗУЧАЕМОГО
МАТЕРИАЛА ................................................................................. 13 2.3 ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ ......................... 17 2.4 КОНТРОЛЬНЫЕ ВОПРОСЫ......................................... 18
3
ВВЕДЕНИЕ
Целью самостоятельной работы обучающихся является по- лучение новых знаний по дисциплине «Сертификация информа- ционных систем».
Самостоятельная работа необходима для формирования у обучающихся способности самостоятельно решать задачи про- фессиональной деятельности, формирования умения и навыков планирования времени, формирования стремления развиваться и совершенствоваться.
Виды самостоятельной работы обучающихся указаны в таб- лице 1.
Таблица 1 – Виды самостоятельной работы
№ п/п
Вид самостоятельной работы
1
Выполнение заданий на самостоятельную работу, при- веденных в данных методических указаниях
2
Оформление отчетов по практическим занятиям
Далее приведены задания на самостоятельную работу.
4 1 ФОРМИРОВАНИЕ И ИЗУЧЕНИЕ СВОЙСТВ
МОДЕЛИ БЕЛЛА-ЛАПАДУЛА
1.1 ЦЕЛЬ РАБОТЫ
Цель работы – овладеть методикой формирования мандат- ных моделей доступа, исследовать возможности мандатных мо- делей доступа.
1.2 ОСНОВНЫЕ РАЗДЕЛЫ ИЗУЧАЕМОГО МАТЕРИАЛА
Дискреционные модели управления доступом позволяют пользователям без ограничений передавать свои права другим пользователям. Это и используется в троянских программах, ко- торые перераспределяют права без уведомления их владельца.
Модели мандатного управления доступом лишены подобного не- достатка. Классической моделью данного типа является модель
Белла-ЛаПадула.
Идеи, лежащие в основе модели Белла-ЛаПадула, взяты из мира бумажных документов, в котором каждому субъекту и объ- екту ставится в соответствие уровень безопасности – от нулевого
(unclassified) до совершенно секретного (top secret). В этом случае для предотвращения утечки информации пользователю с низким уровнем безопасности не разрешается читать документ с более высоким уровнем секретности. Кроме того, запрещено помещать информацию в объекты, чей уровень безопасности ниже, чем у субъекта. Например, право чтения совершенно секретного файла никаким образом не может быть передано неклассифицирован- ному пользователю.
Описание модели Белла-ЛаПадула содержит множества субъектов S, объектов О, прав доступа А и матрицу доступа М.
Однако, в этой модели множества S и О не изменяются при пере- ходе системы из состояния в состояние, и множество А содержит два права доступа:
– read;
– write.
5
В модели Белла-ЛаПадула используется решетка уровней безопасности L и функция F:SUO
L, которая в данном состоя- нии системы сопоставляет субъекту или объекту уровень без- опасности.
Множество V-состояний системы – это множество упорядо- ченных пар (F, М). Система определяется начальным состоянием
v
0
, определенным набором запросов R и функцией переходов
Т:(VxR)
V, которая переводит систему из состояния в состоя- ние при выполнении запроса. Однако самое важное отличие мо- дели Белла-ЛаПадула заключается во введении ряда определе- ний, которые являются необходимыми и достаточными условия- ми безопасности системы:
Определение 1. Правило «нет чтения вверх» NRU (по read up) или простая безопасность. Состояние (F, M) безопасно по чтению тогда и только тогда, когда для
s
S и для
o
O и
read
W[s, о] F(s) ≥ F(o).
Определение 2. Правило «нет записи вниз» NWD (no write down), или *-свойство. Состояние (F, M) безопасно по чтению то- гда и только тогда, когда для
s
S и для
o
O и write
M[s,
о] F(o) ≥ F(s).
Определение 3. Состояние системы безопасно тогда и толь- ко тогда, когда оно безопасно по чтению и по записи.
Безопасность по чтению запрещает доступ низкоуровневого пользователя к чтению высокоуровневых объектов. *-свойство защищает высокоуровневые файлы от копирования информации высокоуровневым троянским конем в файлы, к которым имеет доступ по чтению низкоуровневый пользователь.
Белла и ЛаПадула доказали Основную теорему безопасно- сти.
Теорема: система (v
0
, R, Т) безопасна при следующих усло- виях:
1. Состояние v
0
безопасно.
2. Матрица Т такова, что любое состояние v, достижимое из
v
0
при выполнении конечной последовательности запросов из R, также безопасно.
6 3. Если Т(v, с) = v*, где v = (F, М) и v *= (F*, М*), и перехо- ды (Т)-системы из состояния в состояние подчиняются следую- щим ограничениям (для
s
S и для
o
O):
– если read
M*[s, о] и read M[s, о], то F*(s) ≥ F*(о);
– если read
M[s, о] и F*(s) < F*(о), то read M*[s, о];
– если write
M*[s, о] и write M[s, о], то F*(o) ≥ F*(s);
– если write
M[s, о] и F*(o) < F*(s), то write M*[s, o].
Достоинства модели Белла-ЛаПадула:
– понятность и простота реализации;
– решение проблемы троянских программ.
Недостатками этих моделей являются:
– разрешение доступа, не указанного в модели;
– проблема системы Z;
– нарушение безопасности доверенными субъектами;
– скрытые каналы утечки информации.
Хотя модель Белла-ЛаПадула содержит набор А прав досту- па из двух операций: read
A и write
A, ничто не мешает нарушителю использовать такие виды доступа, как delete или
create. Это не приводит к утечке информации, но может послу- жить причиной ее уничтожения или потери.
Кроме того в модели Белла-ЛаПадула возникает следующая проблема: переход системы из состояния в состояние должен га- рантировать не только безопасность последующих состояний, но и безопасный способ их достижения. В качестве примера можно привести так называемую систему Z, в которой при запросе субъ- ектом доступа к объекту все сущности деклассифицируются до самого низкого уровня, и тем самым доступ разрешается. Это приводит к потере секретности и к деградации системы, хотя со- стояния по-прежнему безопасны, и Z-система удовлетворяет тре- бованиям модели Белла–ЛаПадула и «Основной теореме без- опасности».
Для решения проблемы Z-систем были введены требования сильного и слабого спокойствия. Правило сильного спокойствия гласит, что уровни безопасности субъектов и объектов никогда не меняются в ходе системной операции. Очевидный недостаток применения этого метода – потеря гибкости системы при выпол- нении операций.
7
Правило слабого спокойствия требует следующее условие: уровни безопасности сущностей никогда не меняются в ходе си- стемной операции таким образом, чтобы нарушить заданную по- литику безопасности. Например, уровень объекта не должен ме- няться, когда к нему обращается некоторый субъект.
Отметим, что в описании модели не дается характеристика субъектов. Компьютерные системы обычно имеют администра- тора. Доверенные субъекты могут функционировать в интересах этого администратора или исполнять некоторые критические службы. В системе с реализованной моделью Белла-ЛаПадула доверенные субъекты не смогут работать, не нарушая правил безопасности.
Кроме того, серьезную проблему представляют скрытые ка- налы утечки информации. Рассмотрим систему, в которой суще- ствуют монитор безопасности и низкоуровневый субъект. Субъ- ект пытается записать информацию в несуществующий высоко- уровневый файл, периодически создаваемый и удаляемый высо- коуровневым злоумышленником. Если нарушитель успеет со- здать файл к моменту записи, то субъект не узнает, кому попала его информация, так как он не сможет ее прочитать. Несмотря на то, что скрытые каналы могут быть выявлены другими методами, подобные тесты обычно проводятся на завершающей стадии раз- работки компьютерных систем, когда внесение изменений обора- чивается огромной тратой материальных и интеллектуальных средств.
1.3 ПРИМЕР ВЫПОЛНЕНИЯ
1. Исходные данные
Рассмотрим систему, содержащую два субъекта и два объ- екта:
– S
1
с уровнем безопасности «секретно»;
– S
2
с уровнем безопасности «несекретно»;
– О
1
с уровнем секретности «несекретно»;
– О
2
с уровнем секретности «секретно».
Таким образом, мы можем построить решетку уровней:
1 ------------ S
1
------------ О
2
----------«секретно»
0 ------------ S
2
------------ О
1
----------«несекретно»
8
Очевидно, что S
1
может читать О
1
и О
2
, а S
2
– только О
1
. За- писывать информацию разрешено S
1
в О
2
, а S
2
в О
1
и О
2
. Тогда файл описания модели будет выглядеть следующим образом:
// листинг файла инициализации b_l_m.ini
//1 – секретно; 0 – несекретно
S(1,1,0,0,0,0,0,0,0);
S(2,0,0,0,0,0,0,0,0);
O(1,0,0,0,0,0,0,0,0);
О(2,1,0,0,0,0,0,0,0);
ATTRNAME seclevelS IS ATTRS(1);
ATTRNAME seclevelO IS ATTRO(1);
RULES
READO IF(seclevelS[THISS]>=seclevelO[THISO])
WRITEO IF(seclevelO[THISO]>=seclevelS[THISS])
ENDRULES
Prefile и postfiie не используются.
2. В ходе работы с реализованной моделью Белла-ЛаПадула была проведена проверка на доступ к объектам по чтению и за- писи. Данные операции выполнялись в соответствии с правилами
NRU и NWD: S1 смог читать О1 и О2, а S2 – только О1. Записы- вать информацию было разрешено S1 в O2 , a S2 – в О1 и O2.
Операция, не определенная в модели Белла-ЛаПадула (например, смена атрибутов объекта), разрешена, что нарушает защищен- ность информации в системе.
3. Затем в файл описания модели были внесены изменения, чтобы реализовать проблему Z-системы. Для простоты реализо- ван вариант Z-системы, в котором у запросившего доступ субъек- та изменяется уровень безопасности до уровня объекта, и доступ тем самым разрешается. В этом варианте, так как меняется уро- вень не всех сущностей, а только одного субъекта
// новый вид файла инициализации – b_I_m-z.ini
S(1,1,0,0,0,0,0,0,0);
S(2,0,0,0,0,0,0,0,0);
O(1,0,0,0,0,0,0,0,0);
O(2,1,0,0,0,0,0,0,0);
ATTRNAME seclevelS IS ATTRS(1);
ATTRNAME seclevelO IS ATTRO(1);
RULES
READO
// если второй субъект хочет прочитать второй объект, то его уровень повышается до необходимого
9 if(THISS==2 && THISO==2)
{ make_secret(); // прописываем новые атрибуты субъекта seclevelS[THISS]=AS(1,2), // заносим изменения в массив первого атрибута. Это разрешает чтение второго объекта
}
IF(seclevelS[THISS]>=seclevelO[THISO])
WRITEO
// после чтения второй субъект хочет записать ин- формацию в первый объект. Для этого он понижает свой уровень секретности до уровня объекта № 1 if(THISS==2)
{ make_nonsecret(); seclevelS[THISS]=AS(1,2);
}
IF(seclevelO[THISO]>=seclevelS[THISS])
ENDRULES
Содержимое файла prefile: void make_secret(void)
{
S(2, 1, 0,0,0,0,0,0,0);
} void make_nonsecret(void)
{
S(2, 0, 0,0,0,0,0,0,0);
}
Заполнение массива первых атрибутов субъектов seclevelS[] происходит в файле b_l_m-z.ini, так как данный массив не явля- ется глобальной переменной. Его изменения допустимы только в файле описания модели. Дополнительный файл postfile ничего не содержит.
После внесенных изменений была произведена проверка ра- боты определенной таким образом Z-системы. Второй субъект повысил свой уровень секретности: ему было разрешено читать информацию, хранящуюся во втором объекте, затем он понизил степень доверия, и ему было разрешено произвести запись в объ- ект № 1. Такая последовательность действий не противоречит правилам модели Белла-ЛаПадула, но приводит к утечке инфор- мации.
10 4. Далее, чтобы избежать проблему Z-системы, файл описа- ния был изменен следующим образом:
S(1,1,0,0,0,0,0,0,0);
S(2,0,0,0,0,0,0,0,0);
O(1,0,0,0,0,0,0,0,0);
O(2,1,0,0,0,0,0,0,0);
ATTRNAME secievelS IS ATTRS(1);
ATTRNAME seclevelO IS ATTRO(1);
RULES
READO if(THISS==2 && THISO==2) // для чтения секретного объекта субъект № 2 повышает степень доверия
{ make_secret(); seclevelS[THISS]=AS(1,2);
}
IF(seclevelS[THISS]>=seclevelO[THISO])
WRITEO
// субъект № 2 понижает уровень секретности для записи в несекретный
// объект № 1 if(THISS==2)
{ make_nonsecret(); seclevelS[THISS]=AS(1,2); }
// правило слабого спокойствия: если запись в не- секретный объект № 1, то вернуть субъект на уровень
«секретно» и таким образом не разрешить запись if(THISS==2 &&THISO==1)
{ rnake_secret(); seclevelS[THISS]=AS(1,2);
}
IF(seclevelO[THISO]>=seclevelS[THISS])
ENDRULES
Файлы prefile и postfile остались прежними.
1.4 ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ
1. Получить доступ к набору служебных программ «Мони- тор безопасности», используя следующие программы:
– expert.exe (программа преобразования файла описания мо- дел и в ехе.файл);
11
– security.exe (основная программа «Монитора безопасно- сти»).
2. Создать файл описания модели Белла-ЛаПадула при по- мощи языка описания. Исходные данные для его создания зада- ются преподавателем. Следует определить только права доступа по чтению и записи.
3. Используя программу expert.exe, получить ехе-файл опи- сания.
4. Запустить программу security.exe.
5. Выбрать в меню FILE созданный ехе-файл.
6. Убедиться в защите, предоставляемой моделью Белла-
ЛаПадула. Для этого необходимо выполнить следующие опера- ции:
– чтения и записи для пар «субъект–объект», которые удо- влетворяют правилам NRU и NWD. Убедиться в возможности выполнения таких операций;
– чтения-записи с нарушением правил модели Белла-
ЛаПадула.
Убедиться в невыполнимости такого рода действий.
7. Выполнить одно из неописанных в файле описания моде- ли действий, например, delete object. Убедиться, что оно разреша- ется моделью. Исследовать модель подобным образом для раз- личных операций.
8. Выйти из программы security.exe и вернуться к редакти- рованию файла описания модели.
9. Реализовать в файле описания Z-систему, позволяющую нарушить защиту модели Белла-ЛаПадула. На данном этапе воз- можно использование дополнительных файлов prefile и postfile.
10. Повторить выполнение пунктов 3–5.
11. Убедиться в возможности обхода защиты, предоставля- емой мандатной моделью Белла-ЛаПадула, в системе Z. Для этого необходимо:
– снять атрибуты субъектов и объектов;
– выполнить чтение или запись высокоуровневого объекта;
– снова снять атрибуты сущностей.
12. Выйти из программы security.exe и продолжить редакти- рование файла описания модели.
13. Реализовать правило слабого спокойствия.