Лекции по Вычислительным машинам   

8. Операционные системы

8.5.5. Защитные механизмы операционных систем

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

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

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

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

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

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

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

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

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

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

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

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

Большинство операционных систем реализуют дискреционное управление доступом. Главное его достоинство — гибкость, основные недостатки — рассредоточенность управления и сложность централизованного контроля.

Домены безопасности. Чтобы рассмотреть схему дискреционного доступа более детально, введем понятие домена безопасности. Каждый домен определяет набор объектов и типов операций, которые могут производиться над каждым объектом. Возможность выполнять операции над объектом есть права доступа, каждое из которых есть упорядоченная пара <имя объекта, вид доступа>. Домен, таким образом, есть набор прав доступа. Hапример, если домен D имеет права доступа <file F, {read, write}>, это означает, что процесс, выполняемый в домене D, может читать или писать в файл F, но не может выполнять других операций над этим объектом. Пример доменов можно увидеть на рисунке 8.16.

Специфицирование прав доступа к ресурсам

Рисунок 8.16   Специфицирование прав доступа к ресурсам

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

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

·      каждому процессу может соответствовать домен. В этом случае набор доступных объектов определяется идентификацией процесса;

·      каждой процедуре может соответствовать домен. В этом случае набор доступных объектов соответствует локальным переменным, определенным внутри процедуры.

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

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

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

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

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

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

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

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



*****

© 2009-2017 Банк лекций siblec.ru
Лекции для преподавателей и студентов. Формальные, технические, естественные, общественные, гуманитарные, и другие науки.