На главную | Содержание | Назад | Вперёд
Наши друзья

 

 

Анализ возможности корректной реализации моделей управления доступом встроенными в ОС механизмами защиты

Анализ возможности корректной реализации канонических моделей управления доступом
Теперь проведем анализ возможности корректной реализации моделей управления доступом встроенными в ОС механизмами защиты. Мандат­ный механизм современными универсальными ОС не реализуется в прин­ципе (данная возможность может быть обеспечена исключительно сред­ствами добавочной защиты). Поэтому остановимся на рассмотрении
реализации дискреционного механизма. При этом будем рассматривать возможность корректной реализации механизмов в ОС, когда «владель­цем» объекта файловой системы является администратор безопасности.
Исследования проведем для ОС семейства Windows (NT/2000/XP) и ОС
семейства UNIX. При этом отметим, что для обеих веток развития ОС
семейста UNIX - System V и BSD возможности дискреционного меха­низма практически совпадают.
Прежде всего отметим принципиальное отличие в реализации механизма для данных семейств ОС (несмотря на внешнюю схожесть). Для ОС семейства Windows разграничение для файла (включаемого объекта) приоритетнее, чем разграничение для каталога, включающего данный файл. Другими словами, если для ОС UNIX установить запрет доступа пользователю к каталогу, то
какие бы атрибуты доступа не были установлены на файл, расположенный в
данном каталоге, доступ к файлу пользователь получить не сможет.
Для ОС Windows в аналогичной ситуации пользователь сможет получить
доступ к файлу (если в файле установлены права доступа к нему пользо­вателем), т.к. разграничения доступа включаемого объекта приоритетнее, чем включающего. Правда, ради справедливости, отметим, что такой доступ возможен посредством программного средства, позволяющего непосредственно обратиться к файлу, минуя процедуру обзора содержи­мого каталога. К таким средствам не относится большинство широко применяемых на практике программ-проводников. Вместе с тем, не пред­ставляется сколько-нибудь сложным написать подобную программу са­мостоятельно. Ниже представлен пример программы, позволяющей об­ращаться непосредственно к файлу, минуя обзор содержимого каталога:
int   main(int   argc,    char* argv[]) {
HANDLE hFile; BOOLEAN bResult;
hFile = CreateFile(argv[l] , GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0) ;
CHAR buf [0x140]; ULONG length=0xl40, nBytesRead, nBytesWrite, keyKbd;
do {
bResult = ReadFile (hFile, buf, length, SnBytesRead, NULL) ; WriteFile (GetStdHandle(STD_OUTPUT_HANDLE),  buf, nBytesRead,
SnBytesWrite, 0) ; keyKbd = getch() ;
}
while   (bResult && nBytesRead && keyKbd!=27); CloseHandle(hFile);
return 0;
I
Теперь остановимся на рассмотрении возможностей по реализации при­веденных моделей встроенными в ОС средствами. Общим здесь будет то, что «владельцем» любого создаваемого файла должен являться «админист­ратор безопасности». Разграничения для пользователей устанавливается включением пользователя в группу и назначением прав доступа группе.
Естественно,       основным объектом разграничения доступа становится
включающий объект файловой системы (например, каталог), т.к. если ус­танавливать разграничения для файлов, то администратор вынужден бу­дет лично (как «владелец») устанавливать права на каждый вновь создава­емый файл. По умолчанию же можно установить только одинаковые права доступа на все создаваемые файлы, что не может быть достаточно.
Таким образом, разграничение доступа устанавливается на включающие объекты (каталоги), а «владельцем» всех каталогов является администра­тор. Созданием групп пользователей и заданием разграничений для них
устанавливаются различные права доступа пользователей к каталогу. В пределе каждый пользователь получает полный доступ к своему катало­гу — реализуется каноническая модель. Далее устанавливается наследо­вание настроек для создаваемых в каталогах файлов.
Рассмотрим, что произойдет в различных ОС при подобных настройках (используемых для задания «владельцем» администратора безопасности).
Общим будет то, что пользователь, создавая новый файл в каталоге, может изменить «владельца», а как следствие, и права доступа к создаваемому файлу. Таким образом, права доступа к включаемому и включающему объектам файловой системы входят в противоречие. В результате пользо­ватель (либо какая-либо программа от его лица) может назначить для файла несанкционированные права доступа. Возможность получения данных прав определяется тем, какие разграничения (к включающему,
либо к включаемому) объекту приоритетны. Как было отмечено ранее, в
этом и состоит принципиальное различие реализации дискреционного механизма для ОС UNIX и Windows.
Для ОС семейства UNIX приоритетны разграничения на включающий элемент, для ОС Windows - на включаемый. Таким образом, в ОС UNIX пользователь не сумеет получить доступа к файлу, в ОС Windows — сумеет.
С учетом проведенного исследования можем сделать следующий вывод: каноническая модель дискреционного доступа может быть реализована встро­енными механизмами защиты ОС семейства UNIX и не реализуема в прин­ципе для ОС семейства Windows.
Анализ возможности корректной реализации моделей управления доступом с каналом взаимодействия субъектов доступа
Выше мы рассматривали возможность реализации канонической модели, характеризуемой полным разграничением доступа. Теперь рассмотрим, какие типы каналов взаимодействия субъектов доступа могут быть реали­зованы для ОС семейства UNIX. Ключевым вопросом здесь является воз­можность реализации атрибута «добавление» встроенными средствами.
Как таковой, атрибут «добавление» в ОС UNIX отсутствует. Кстати говоря, он
существует в ОС Windows, но для этой операционной системы, как показано 1 выше, каноническая модель встроенными средствами не может быть реали­зована в принципе.
«Добавление» встроенными средствами может быть реализовано следую­щим образом. Пользователю, которому должно разрешаться добавление данных в каталог другого пользователя, следует разрешить доступ к этому каталогу «на запись». При этом данному пользователю должен быть зап­рещен доступ «на запись» к уже существующим в данном каталоге фай­лам другого пользователя. Однако, как отмечали ранее, запрет доступа к файлам, расположенным в каталоге, возможно лишь непосредственно пользователем, создавшим эти файлы, что, строго говоря, противоречит тре­бованию «права доступа к объекту файловой системы должны на­значаться (изменяться) только администратором безопасности».
С учетом проведенного исследования можем сделать следующий вывод:
корректно (в рамках рассматриваемых предположений) дискреционный
механизм управления доступом может быть реализован лишь в рамках по­строения модели с физическим каналом взаимодействия субъектов доступа.
Недостатки данной модели были нами рассмотрены ранее.
Отсюда следует вывод о необходимости применения добавочных средств защиты:
для ОС Windows с целью возможной корректной модели дискрецион­ного управления доступом к ресурсам в принципе; ♦ для ОС семейства UNIX с целью эффективной реализации канала
взаимодействия субъектов доступа (реализации виртуального канала)
для дискреционного механизма управления.

 

На главную | Содержание | Назад | Вперёд
 
Яндекс.Метрика