Статья опубликована в рамках: Научного журнала «Студенческий» № 13(33)
Рубрика журнала: Информационные технологии
Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3
РАЗРАБОТКА МЕХАНИЗМА ЗАЩИТЫ ОТ ТРОЯНСКОЙ АТАКИ В НОТАЦИИ МОДЕЛИ ХАРРИСОНА-РУЗЗО-УЛЬМАНА
Многие современные операционные системы, такие как семейство Windows, MacOS, многие дистрибутивы Linux, преимущественно используют дискреционные модели разграничения прав доступа для защиты файлов и других системных ресурсов. Механизм дискреционных моделей более дружелюбный и интуитивно понятный для пользователей системы, чем механизм мандатных моделей.
Самый известный наследник дискреционной модели – модель Харрисона-Руззо-Ульмана (Harrison-Ruzzo-Ulman model – HRU). Изначально авторы-разработчики HRU сообщали в своей работе, что данная модель уязвима к троянским атакам, как и все дискреционные модели [1]. В связи с этим, использование HRU в информационных системах - ключевая причина, по которой информация в современных ОС может быть легко скомпрометирована.
В этой работе будет приведен пример модели HRU, которая защищена от троянских атак, но сохраняет все преимущества дискреционных моделей. Предполагается решить эту проблему комбинируя модель HRU с техниками, используемыми в мандатных моделях для отслеживания потоков информации.
Троянский конь (троян) – это вид вредоносного программного обеспечения, которое в дополнение к своему полезному функционалу имеет скрытые вредоносные возможности. После того, как троян запущен на компьютере жертвы, атакующий может получить доступ к ресурсам будучи, не имея полномочий на них изначально, тем самым получая личную конфиденциальную информацию пользователя.
Троянская атака в модели HRU осуществляется посредством передачи пользователем некоторому процессу-трояну прав доступа, получив которые «троян» копирует конфиденциальную информацию в некоторую общую для злоумышленника и пользователя директорию. Копирование же происходит посредством создания нового объекта-копии в системе.
Для достижения защиты от троянских атак воспользуемся механизмом типизирования объектов в системе, как это реализовано в мандатной модели Белла-ЛаПадулы, где каждому объекту задается метка безопасности для управления доступом.
В результате, при порождении новых объектов в системе будет декларироваться тип создаваемой сущности с помощью команды Create object O of type T [2]. Рассмотрим такую модель поподробнее. Система представляется множеством сущностей:
- множество объектов О (о1, о2, о3…);
- множество субъектов S (s1, s2, s3…), где S ⊆ O;
- матрица доступа, которая указывает права доступа субъектов к объектам из конечного набора прав доступа R (r1, r2, r3…), т.е. A [s, o] ⊆ R;
- множеством типов T (t1, t2, t3…).
Типы, как и права доступа определяются при инициализации системы, а затем остаются постоянными в процессе работы системы. При этом в множестве всех типов T, отдельно выделяются множество Ts, которыми помечаются исключительно субъекты, Ts ⊆ T.
Функционирование системы рассматривается как изменение матрицы доступа. Возможные изменения описываются шестью примитивными операторами:
- Enter r into A [s, o] – добавляет право r в ячейку A [s, o];
- Delete r from A [s, o] – удаляет право r из ячейки A [s, o];
- Create subject S of type T – создание субъекта типа Т;
- Destroy subject S – удаление субъекта;
- Create object O of type T – создание объекта типа T;
- Destroy object O – удаление объекта;
Состояние системы также, как и в оригинальной HRU, изменяется в виде запросов следующего вида, представленного на рисунке 1.
Рисунок 1. Общий вид команд
Такая модель отличается от оригинальной наличием дополнительной сущности – типы. Каждый объект обязан быть помечен типом при его создании с помощью примитивного оператора Create object (subject) O of type T.
Контролировать создание новых типов объектов, а соответственно и бороться с троянскими атаками, нам поможет определение связи между типами при переходи системы из одного состояние в другое.
Так, назовем тип Т дочерним типом по отношению к другим типам в параметрах команды α, если в теле α имеет место один из элементарных операторов: Create object O of type T или Create subject S of type T.
Введение понятия типов и связей между типами, помогает сформулировать ограничения, накладываемые на команды, при которых могут быть усилены условия безопасности, т.е. монитор безопасности может отклонять выполнение некоторых команд из-за возможного переноса конфиденциальной информации (перенос производится порождением нового объекта) злоумышленнику в результате троянской атаки [3].
Рассмотрим заключительный этап троянской атаки в некоторой системе.
В данной системе существует некоторый злоумышленник Chuck, который имеет тип U (user); конфиденциальный файл secret типа TS (top-secret) и процесс троянской атаки trojan.exe типа A (admin) (т.к. запущен от имени пользователя c типом admin), который имеет доступ на чтение (r) к конфиденциальному файлу, а также доступ на запись (w) в некоторую общую папку для злоумышленника и пользователя, владеющего секретным файлом. Матрица доступа перед выполнением копирования (команда ниже) представлена на рисунке 2.
Рисунок 2. Матрица доступа перед командой копирования
Заключительная команда троянской атаки, представленная на рисунке 3, осуществляет копирование конфиденциального файла.
Рисунок 3. Заключительная команда троянской атаки
В оригинальной модели HRU данной команде, нарушающей конфиденциальность файла secret, ничего не препятствует выполниться, но благодаря понятию типов, мы можем наложить ограничения на выполнения команд.
Установим следующее ограничение на выполнение команд – «запретить выполнять команды, где тип T является дочерним по отношению к типу U». При таком ограничении, команда copy() будет отклонена монитором безопасности, и троянская атака не будет осуществлена, соответсвенно утечки конфиденциальной информации (копирования файла secret), не произойдет.
Таким образом, данный механизм защиты, использующий типы, предупреждает троянскую атаку в модели Харрисона-Руззо-Ульмана.
Список литературы:
- Harrison M. Protection in operating systems / M. Harrison, W. Ruzzo, J. Ulman // Communications of the ACM 19. – 1976. - №8. – С. 461 – 471.
- Sandhu R. The typed access matrix model / R. Sandhu // Proceedings of the 1992 IEEE symposium on security and privacy. – 1992. - №21. – С.122 – 136.
- Гайдамакин Н.А. Теоретические основы компьютерной безопасности: учебное пособие/Н.А. Гайдамакин - УрГУ им. А.М. Горького – Екатеринбург., 2013. – 258 с.
- Цирлов В.Л. Основы информационной безопасности автоматизированных систем / В.Л. Цирлов – М.:Феникс, 2008. – 52 с.
- Почему не срабатывают модели разграничения доступа [электронный ресурс] – URL: https://xakep.ru/2008/11/05/45895 (дата обращения - 10.05.2018).
- Информационная безопасность и управление рисками [электронный ресурс] – URL: http://dorlov.blogspot.ru/2009/07/issp-01_18.html (дата обращения - 11.04.2018).
Оставить комментарий