Безопасность операционных систем. Безбогов А.А - 96 стр.

UptoLike

тификатор группы, начальный текущий каталог и имя исполняемого файла, используемого в качестве интерпретатора ко-
манд. Пароль шифруется, как правило, с использованием DES-алгоритма.
Управление доступом к данным. Операционная система Unix поддерживает для любого файла комплекс характери-
стик, определяющих санкционированность доступа, тип файла, его размер и точное местоположение на диске. При каждом
обращении к файлу система проверяет право пользоваться им. Операционная система Unix допускает выполнение трех ти-
пов операций над файлами: чтение, запись и выполнение. Чтение файла означает, что доступно его содержимое, а запись
что возможны изменения содержимого файла. Выполнение приводит либо к загрузке файла в ОП, либо к выполнению со-
держащихся в файле команд системного монитора Shell. Разрешение на выполнение каталога означает, что в нем допустим
поиск с целью формирования полного имени на пути к файлу. Любой из файлов в ОС Unix имеет определенного владельца и
привязан к некоторой группе. Файл наследует их от процесса, создавшего файл. Пользователь и группа, идентификаторы
которых связаны с файлом, считаются его владельцами.
Идентификаторы пользователя и группы, связанные с процессом, определяют его права при доступе к файлам. По
отношению к конкретному файлу все процессы делятся на три категории:
1)
владелец файла (процессы, имевшие идентификатор пользователя, совпадающий с идентификатором владельца
файла);
2) члены группы владельца файла (процессы, имеющие идентификатор группы, совпадающий с идентификатором
группы, которой принадлежит файл);
3)
прочие (процессы, не попавшие в первые две категории).
Владелец файла обладает одними привилегиями на доступ к нему, члены группы, в которую входит файлдругими,
все остальные пользователитретьими. Каждый файл содержит код защиты, который присваивается файлу при его созда-
нии. Код защиты располагается в индексном дескрипторе файла и содержит десять символов, причем первый символ опре-
деляет тип файла, а последующие девятьправо на доступ к нему. Три вида операций (чтение, запись и выполнение) и три
категории (уровни привилегий на доступ: владельцев, групп и прочих пользователей) дают в совокупности девять возмож-
ных вариантов разрешений или запретов на доступ к файлу. Первые три символа определяют возможности чтения (r), записи
(w) и выполнения (е) на уровне владельца, следующие трина уровне группы, в которую входит владелец, и последние три
на уровне остальных пользователей. Наличие символов r, w и e указывает на соответствующее разрешение.
Если процесс требует доступа к файлу, то сначала определяется категория, в которую по отношению к этому файлу он
попадает. Затем из кода защиты выбираются те три символа, которые соответствуют данной категории, и выполняется про-
верка: разрешен ли процессу требуемый доступ. Если доступ не разрешен, системный вызов, посредством которого процесс
сделал запрос на доступ, отвергается ядром ОС.
По соглашению, принятому в ОС Unix, привилегированный пользователь имеет идентификатор, равный нулю. Процесс,
с которым связан нулевой идентификатор пользователя, считается привилегированным. Независимо от кода защиты файла
привилегированный процесс имеет право доступа к файлу для чтения и записи. Если в коде защиты хотя бы одной категории
пользователей (процессов) есть разрешение на выполнение файла, привилегированный процесс тоже имеет право выполнять
этот файл.
С помощью специальных команд владелец файла (привилегированный пользователь) может изменять распределение
привилегий. Команда Change mode позволяет изменить код защиты, команда Change owner меняет право на владение фай-
лом, а команда Change group – принадлежность к той или иной группе. Пользователь может изменять режимы доступа толь-
ко для файлов, которыми он владеет.
Защита хранимых данных. Для защиты хранимых данных в составе ОС Unix имеется утилита crypt, которая читает
данные со стандартного ввода, шифрует их и направляет на стандартный вывод. Шифрование применяется при необходимо-
сти предоставления абсолютного права владения файлом.
Восстановление файловой системы. Операционная система Unix поддерживает три основных набора утилит копиро-
вания: программы volcopy/labelit, dump/restor и cpio. Программа volсору целиком переписывает файловую систему, проверяя
с помощью программы labelit соответствие меток требуемых томов. Программа dump обеспечивает копирование лишь тех
файлов, которые были записаны позднее определенной даты (защита накоплением). Программа restor может анализировать
данные, созданные программой dump, и восстанавливать отдельные файлы или всю файловую систему полностью. Про-
грамма cpio предназначена для создания одного большого файла, содержащего образ всей файловой системы или какой-либо
ее части.
Для восстановления поврежденной, например, в результате сбоев в работе аппаратуры файловой системы используются
программы fsck и fsdb.
За сохранность файловой системы, адаптацию программного обеспечения к конкретным условиям эксплуатации, пе-
риодическое копирование пользовательских файлов, восстановление потерянных данных и другие операции ответственность
возложена на администратора системы.
Усложненное управление доступом. В составе утилит ОС Unix находится утилита cron, которая предоставляет воз-
можность запускать пользовательские программы в определенные моменты (промежутки) времени и, соответственно, ввести
временные параметры для ограничения доступа пользователей.
Для управления доступом в ОС Unix также применяется разрешение установки идентификатора владельца. Такое раз-
решение дает возможность получить привилегии владельца файла на время выполнения соответствующей программы. Вла-
делец файлов может установить режим, в котором другие пользователи имеют возможность назначать собственные иденти-
фикаторы режима.
Доступ, основанный на полномочиях, использует соответствие меток. Для этого вводятся метки объектов (файлов) и
субъектов (процессов), а также понятия доминанты и равенства меток (для выражения отношения между метками). Созда-
ваемый файл наследует метку от создавшего его процесса. Вводятся соотношения, определяющие права процессов по отно-
шению к файлам.