УДК 004.056.53
К. А. Щеглов, А. Ю. Щеглов
МОДЕЛЬ КОНТРОЛЯ ДОСТУПА К СОЗДАВАЕМЫМ ФАЙЛОВЫМ ОБЪЕКТАМ
Предложены метод контроля доступа к создаваемым файловым объектам, характеризующийся исключением сущности „объект доступа" из разграничительной политики, и модель контроля доступа, с использованием которой разработаны требования к принудительному управлению потоками информации, обеспечивающие построение безопасной системы.
Ключевые слова: защита информации, разграничение доступа, создаваемый файловый объект, контроль доступа, информационный поток.
Введение. Основу защиты обрабатываемой компьютером информации от несанкционированного доступа составляет построение разграничительной политики доступа к файловым объектам, которую обеспечивает диспетчер доступа, перехватывающий и анализирующий все запросы от субъектов к объектам. Диспетчер однозначно выявляет в запросе доступа субъект и объект и на основании анализа заданного правила контроля принимает решение о предоставлении субъекту запрашиваемого доступа.
При назначении разграничений прав доступа первичен объект, поскольку именно он требует защиты от несанкционированного доступа. Однако применительно к решению задачи контроля доступа файловые объекты принципиально различаются — они могут быть подразделены на статичные (в первую очередь, системные) и создаваемые пользователями в процессе работы системы. Системные объекты присутствуют на момент настройки администратором прав доступа субъектов к объектам, а объекты второй группы еще не созданы. Возникает вопрос: как разграничивать доступ к еще не созданным объектам? А ведь эти объекты (прежде всего, файлы), особенно нуждаются в защите от несанкционированного доступа, поскольку содержат защищаемую конфиденциальную информацию.
Известные методы контроля доступа. Контроль доступа к статичным объектам осуществляется посредством назначения им атрибутов (прав доступа субъектов к объекту). Возможны два варианта назначения прав доступа к создаваемым объектам.
1. Права доступа задаются опосредованно, путем включения в систему на момент задания разграничительной политики доступа соответствующих статичных объектов — папок (своего рода „контейнеров"), доступ субъектов к которым, в том числе и по созданию в них новых объектов, разграничивается администратором. Вследствие разграничений пользователь может создавать новые файловые объекты (файлы) только в специально созданных папках. Создаваемые файловые объекты наследуют разграничения доступа от соответствующих включающих объектов (папок).
Как видим, собственно к создаваемым объектам контроль доступа не осуществляется, файл как сущность „исчезает" из разграничительной политики доступа — используются субъект доступа и специально созданный контейнер — объект доступа, что определяет сложность задачи администрирования, многократно возрастающую, если в качестве субъекта доступа рассматривать не только учетную запись (пользователя), но и непосредственно процесс (приложение), без чего эффективную защиту в современных условиях не создать [1].
2. В разграничительной политике доступа используется сущность „Владения", предоставляемая современными универсальными ОС: пользователь, создавший объект („Владелец") наделяется полномочиями разграничивать права доступа к этому объекту для иных пользователей. В этом случае несмотря на то что права доступа в виде атрибутов назначаются именно
статичному объекту (владельцем, уже после создания им объекта), в определенном смысле можно говорить о контроле доступа к создаваемым файлам, поскольку права доступа на созданный файл назначаются пользователем-владельцем уже после задания администратором разграничительной политики доступа к объектам. Таким образом, изменяются собственно схема администрирования, способ задания разграничительной политики — реализуется непрерывное администрирование в процессе функционирования системы.
Однако функции администрирования при этом возлагаются уже не на администратора, а непосредственно на пользователя, что недопустимо в современных условиях.
Модель контроля доступа к статичным файловым объектам. Для оценки безопасности системы, основанной на контроле доступа к статичным файловым объектам, на практике используется модель Харрисона—Уззо—Ульмана [2]. Если считать, что С = {С1,..., С/} и О = {О1,., О^} — соответственно линейно упорядоченные множества субъектов и объектов доступа, а Я = {Я^..., Ят} — конечное множество прав доступа (чтение, запись, удаление, исполнение и т. д.), то разграничительная политика доступа субъектов к объектам описывается матрицей доступа М, где М[С, О] — ячейка матрицы, которая содержит набор прав доступа субъекта из множества С к объекту из множества О. В любой момент времени система описывается текущим состоянием Q = (С, О, М).
Требование к безопасности системы в рассматриваемом случае может быть сформулировано следующим образом: „Для заданной системы состояние Q0 = (Со, О0, М0) следует считать безопасным относительно некоторого права Я, если не существует применимой к Q0 последовательности действий, в результате выполнения которой субъектом С0 приобретается право Я доступа к объекту О0, исходно отсутствующее в ячейке матрицы М0[С0, О0]". Если право Я, отсутствующее в ячейке матрицы М0[С0, О0], приобретается субъектом С0, то можно говорить, что произошла утечка права Я, и относительно Я его система небезопасна.
Поскольку последовательность действий генерирует субъект доступа, пользователь (действия администратора не имеет смысла рассматривать при анализе изменений состояния системы), то для рассматриваемой модели о безопасности системы можно говорить исключительно в предположении, что действия пользователя не приведут к утечке права Я. Однако при реализации сущности „Владения" именно пользователь, создавший объект, наделяет правом доступа Я к этому объекту других пользователей. Как следствие, о безопасности системы в данном случае можно говорить исключительно в предположении, что субъект доступа (пользователь) не несет угрозы генерирования утечки права Я с целью хищения, несанкционированной модификации или удаления обрабатываемой на предприятии информации. Однако в современных условиях, особенно применительно к корпоративным приложениям, где пользователь обрабатывает не собственную, а корпоративную информацию, и понятие „Владелец" (не в технологическом смысле) к нему малоприменимо, нельзя сделать подобное предположение даже с большими оговорками. Например, в исследовании [3] сделан вывод о том, что наибольшую опасность для компаний сегодня представляет именно несанкционированный доступ собственных сотрудников к конфиденциальной информации предприятия.
Вывод. В безопасной системе контролем доступа должно осуществляться принудительное для пользователя управление потоками информации (или информационными потоками), сущность „Владения" должна быть исключена из схемы контроля доступа.
Замечание. Перенос информации от С к О — информационный поток записи, от О к С — информационный поток чтения. Управление потоками — предоставление/изменение права Я генерирования потока информации между С и О.
Правила управления потоками информации. Предлагаемый метод контроля доступа к создаваемым файловым объектам базируется на реализации принципов, изложенных в статье [4]. „Объект" исключается из схемы реализации разграничительной политики — используются две сущности: идентификатор (учетная информация) субъекта, создавшего объект, и
идентификатор субъекта, запрашивающего доступ к созданному объекту. Новым файлом, созданным субъектом, наследуется учетная информация этого субъекта доступа. Учетная информация субъекта доступа, в общем случае используемая при реализации разграничительной политики, определяется следующими сущностями: исходный идентификатор пользователя (учетная запись, под которой осуществлен вход в систему); „полнопутевое" имя исполняемого файла процесса, запрашивающего доступ к ресурсу; эффективный идентификатор пользователя (учетная запись, от которой осуществлен запрос доступа к ресурсу) [1].
При запросе доступа к любому файлу диспетчер доступа анализирует наличие, а при наличии — содержимое унаследованной файлом учетной информации создавшего его субъекта доступа. Матрица доступа здесь приобретает совершенно иной вид, поскольку из разграничительной политики доступа исключена сущность „Объект". Если считать, что С = {С1, ..., С/} — линейно упорядоченное множество субъектов доступа, а Я = {Я^ ..., Ят} — конечное множество прав доступа (г — чтение, w — запись, ё — удаление, х — исполнение и т.д., 0 — отсутствие прав доступа) субъекта Сг к объекту, созданному субъектом С (=1, ..., /,7=1, ..., /) то матрица доступа М, используемая для реализации разграничительной политики методом контроля доступа с принудительным управлением потоками информации имеет следующий вид (условимся в строках матрицы указывать учетную информацию субъектов, запрашивающих доступ к объектам, а в столбцах — учетную информацию субъектов, унаследованную созданными объектами):
С1
С2
м =.
С/ С
/-1
С1
г, w, ё г
С2
w г, w, ё
С о о
о о
0 г
w г, w, ё
В любой момент времени система описывается своим текущим состоянием Q = (С,С,М), М[С,С] — ячейка матрицы, которая содержит набор прав доступа. Разрешение права доступа субъекта С к объектам, созданным субъектом Сг (=1, ..., /;7=1, ..., /, где Я = {х^,Я,ё}), обозначим как С](Я)Сг.
Вывод. Используя предложенный метод контроля доступа к создаваемым файловым объектам, можно построить безопасную систему, поскольку за счет контроля доступа осуществляется принудительное для пользователя управление потоками информации.
Сформулируем основные правила (требования) управления потоками, при реализации которых в системе отсутствует утечка права Я = {х^,г,ё}, что не приводит к несанкционированному обмену информацией между субъектами, который будем обозначать С7[Я]Сг, (субъект С] получает несанкционированный доступ к информации, обрабатываемой субъектом Сг):
1. Недопустимо разрешение пользователям права исполнения (х) файла, созданного в процессе функционирования системы. При выполнении данного требования система безопасна относительно х. Заметим, что выполнение именно этого требования обеспечивает эффективную защиту от вредоносных программ [5]. Как следствие, разрешенные права доступа к создаваемым файловым объектам: Я = ^,г,ё}.
2. При назначении разграничительной политики „по умолчанию" должны быть установлены права доступа: С^,г,ё)Сг (г=1, ..., /). Данное правило обусловливает задание диаго-
нальной („канонической" [1]) матрицы доступа, характеризуемой условием: Ci(w,r,d)Ci; Ci(0)Cj (¡4з, -=1, ..., /,7=1, ..., /). Реализующая каноническую модель доступа система безопасна относительно прав записи и чтения (г).
3. При расширении канонической матрицы доступа правом чтения Ci(r)Cj и при уже разрешенном в матрице праве чтения Ck(r)Ci, одновременно должно также разрешаться право чтения (г): Ck(r)Cj (¿#Д, -=1, ..., /;7=1, ..., /; к=1, ..., /), что предотвращает возможность несанкционированного обмена информацией между субъектами Ck[Я]Cj, из-за возникающей при этом утечки права чтения Ck(r)Cj.
4. При расширении канонической матрицы доступа правом записи Ci(w)Cj, при уже разрешенном в матрице праве записи Cj(w)Ck, одновременно с этим должно также разрешаться право записи Ci(w)Ck (г^^, г=1, ..., /; ]=1, ..., /; k=1, ..., /), что предотвращает возможность несанкционированного обмена информацией между субъектами Ci[Я]Ck, из-за возникающей при этом утечки права записи Ci(w)Ck.
5. При расширении канонической матрицы доступа правом удаления (3) включающих объектов (папок, в которых создаются файлы), должно реализовываться следующее правило управления: любой включающий объект (папка) может быть удален любым субъектом при условии отсутствия включенных в него объектов (в первую очередь — файлов).
Замечание. Поскольку предлагаемый метод контроля доступа не предполагает реализации разграничительной политики доступа к статичным объектам — папкам — любой субъект может удалить любую папку, соответственно и все включенные в нее файлы, что приводит к утечке права удаления (3).
Таким образом, предложенный метод относится к дискреционным с принудительным управлением потоками информации. При реализации сформулированных требований метод позволяет построить безопасную систему.
Заключение. Использование предложенного метода контроля доступа к создаваемым файловым объектам позволяет пересмотреть принципы построения разграничительной политики доступа к защищаемым ресурсам, разделив задачи защиты статичных и создаваемых файловых объектов и способы их решения.
СПИСОК ЛИТЕРАТУРЫ
1. Щеглов А. Ю. Защита компьютерной информации от несанкционированного доступа. СПб: Наука и техника, 2004. 384 с.
2. Harrison M., Ruzzo W., Ullman J. Protection in operating systems // Communication of ACM. 1976. Vol. 19, N 8. P. 461—472.
3. [Электронный ресурс]: <http://www.securitycode.ru/company/news/SC-analytic-2011>.
4. Щеглов К. А. Принципы контроля доступа к создаваемым файловым объектам // Сб. тр. молодых ученых и сотрудников кафедры ВТ. СПб: НИУ ИТМО, 2012. Вып. 3. С. 85—86.
5. Щеглов К. А., Щеглов А. Ю. Защита от вредоносных программ методом контроля доступа к создаваемым файловым объектам // Вестн. компьютерных и информационных технологий. 2012. № 8. С. 46—51.
Сведения об авторах
Константин Андреевич Щеглов — студент; Санкт-Петербургский национальный исследовательский
университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: [email protected] Андрей Юрьевич Щеглов — д-р техн. наук, профессор; Санкт-Петербургский национальный
исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: [email protected]
Рекомендована кафедрой Поступила в редакцию
вычислительной техники 08.02.12 г.