АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Классификация ИЗ по размещению в вычислительной системе

Читайте также:
  1. A) к любой экономической системе
  2. IX.4. Классификация наук
  3. MxA классификация
  4. VI. КРАТКАЯ ИСТОРИЯ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ
  5. Аденовирусная инфекция. Этиология, патогенез, классификация, клиника фарингоконъюнктивальной лихорадки. Диагностика, лечение.
  6. Административное право, как отрасль права в системе Российского права.
  7. Акустические колебания, их классификация, характеристики, вредное влияние на организм человека, нормирование.
  8. Анализ прибыли по системе «директ-костинг»
  9. Аналитические методы при принятии УР, основные аналитические процедуры, признаки классификации методов анализа, классификация по функциональному признаку.
  10. Архитектура вычислительной сети и безопасность
  11. АСПЕКТЫ ПРОБЛЕМ В СИСТЕМЕ ОТНОШЕНИЙ ОБЩЕСТВО - ПРИРОДА
  12. Аудит выпуска эмиссионных ценных бумаг банка и операций по их размещению
Размещение в ВС Программное обеспечение ОПЕРАЦИОННАЯ СИСТЕМА Инициализация (загрузка)
Управление выделением памяти
Управление процессами
Управление устройствами
Управление файловой системой
Средства идентификации и аутентификации
Другие
Сервисные программы и утилиты Привилегированные утилиты
Непривилегированные утилиты
Прикладные программы
Аппаратное обеспечение

 

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

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

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

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

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

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

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

Поэтому, ИЗ в операционной системе будем разделять по следующим категориям:

- инициализация (загрузка) системы;

- управление распределением памяти;

- управление устройствами;

- управление процессами;

- управление файловой системой;

- идентификация и аутентификация.

Для ошибок, не попадающих ни в одну из данных категорий, введем дополнительную категорию “другие”.

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

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

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

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

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

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

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

 

Контрольные вопросы

1. Что такое атака?

2. Какие функции операционной системы использует файловая система?

3. Что такое изъян защиты?

4. Какие категории ИЗ выделяют в ОС?

5. Что такое сервисное программное обеспечение?

 


Лекция 4.

ДОВЕРЕННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
ОПЕРАЦИОННЫХ СИСТЕМ

 

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

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

Целесообразно выделить компоненты, отвечающие за поддерж­ку политики безопасности в системе и составляющие доверенное программное обес­печение системы (Trusted Computer Вазе, ТСВ), или ядро защиты. Ядро защиты – это технические, программные и микропрограммные элементы комплекса средств защиты, реализующие концепцию диспетчера доступа.

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

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

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

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

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

 

Рис. 4.1. Доверенное программное обеспечение и программное обеспечение системы в целом

 

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

Данная функциональная зависимость исче­зает, если доверенное программное обеспечение совпадает с программным обеспечением систе­мы в целом. Но это условие никогда не выполняется на практике, и доверенное программное обеспечение обычно много компактнее и проще, чем программное обеспечение системы в целом.

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

 

,

 

где:

· op' – множество всех возможных последовательностей вызовов функции, пре­доставляемых доверенным программным обеспечением системы;

· P() – предикат, определяющий выходную реакцию в системе в зависимости от входного воздействия.

Это выражение является предикатом второго порядка и определяет следующее свойство: любая операция, выполняемая пользовательским программным обеспече­нием, преобразуется в последовательность вызовов функций доверенного программ­ного обеспечения (функций множества ор') и, при условии защиты доверенного про­граммного обеспечения от модификации, свойство Р() является свойством системы в целом (данное свойство не зависит от поведения программного обеспечения, не принадлежащего доверенному программному обеспечению).

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

· свойства безопасности системы должны быть реализованы с помощью дове­ренного программного обеспечения;

· данные свойства должны быть выражены предикатом второго порядка.

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

Для модели системы необходимо доказать следующую теорему, называемую основной теоремой безопасности, в которой говорится следующее: "если система начинает работу в безопасном состоянии и все переходы системы из состояния в со­стояние являются безопасными, то система является безопасной".

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

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


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.006 сек.)