Рис. 1. Схема взаимодействия участников
(1,2 ГГц). В ходе тестирования, согласно данным приложения Android Assistant, использовалось только одно ядро многоядерных процессоров. Тестирование производилось на APK-файлах 5,3 и 76 Мбайт. В таблице для каждого из файлов указано время проверки 10000 ДЦП.
Процессор Файл 5,3 Мбайт Файл 76 Мбайт
Exynos 4412 97,4 с 1241,56 с
Exynos 4210 143,21 с 1785,56 с
ЛИТЕРАТУРА
1. Толюпа Е. А. Механизм антивирусной защиты на базе (n, £)-пороговой ДЦП с арбитром // МАИС. 2014 (в печати).
2. Mambo M., Usuda K., and Okamoto E. Proxy signatures for delegating signing operation // Proc. of 3rd ACM Conference on Computer and Communications Security (CCS’96). ACM Press, 1996. P. 48-57.
УДК 004.94
ДП-МОДЕЛЬ МАНДАТНОГО УПРАВЛЕНИЯ ДОСТУПОМ С КОНТРОЛЕМ ЦЕЛОСТНОСТИ СУБД MySQL
Д. В. Чернов
Работа посвящена разработке механизмов мандатного контроля целостности в мандатной ДП-модели СУБД MySQL. Вводятся основные элементы модели (решётка уровней целостности сущностей, функции избирательности контроля целостности, уровней целостности сущностей и т.д.), с помощью которых обеспечивается мандатный контроль целостности; описываются некоторые правила преобразования состояний системы; определяются состояния системы, в которых не происходит нарушения целостности, и формулируются условия, которые необходимы, чтобы система оставалась в этих состояниях.
Ключевые слова: управление доступом, мандатный контроль целостности, информационные потоки, формальные модели безопасности.
Рассматривается расширение мандатной ДП-модели MySQL [1], включающее в себя мандатный контроль целостности, основанный на модели Биба [2, 3]. Целью мандатного контроля целостности является предотвращение возможности получить доступ на запись сущности с высоким уровнем целостности субъект-сессией с низким уровнем целостности. Разрешается изменять сущность только таким субъект-сессиям, чьи уровни целостности не меньше уровня целостности сущности. Помимо этого, накладывается запрет на вызов процедур, целостность которых ниже целостности пользователя, от имени которого предписано их выполнение. В противном случае решение о возможности выполнить запрос процедуры, который, ввиду его низкой целостности, мог быть изменён третьим лицом, будет выполняться на основе более высокой целостности пользователя. Подобный сценарий может нарушить целостность других сущностей, что, несомненно, является недопустимым.
Для расширения модели мандатным контролем целостности вводятся следующие дополнительные элементы (недостающие специальные термины и обозначения из теории ДП-моделей см. в [3]):
1. Решётка упорядоченных уровней целостности сущностей (LI, ^).
2. Функция HLSI : O U (C \ c0) ^ {true, false} определяет наличие проверок мандатного контроля целостности при доступе к сущности. Если HLSI(e) = true, то доступ к сущности e осуществляется с учётом проверок мандатного контроля целостности, в противном случае — без него. При этом значение функции HLSI(e) наследуется всеми сущностями, которые иерархически подчинены е, т. е.
Ve' < е (HLSI(е') = HLSI(е)).
Предполагается, что если 3e G O U C (HLSI(e) = true), то для всякого e' G Op U U Ot выполняется HLSI(e') = true. То есть если доступ хотя бы к одному объекту или контейнеру осуществляется с учётом мандатного контроля целостности, то так же осуществляется доступ ко всем процедурам и триггерам.
3. Функция ide : OUC ^ LU{0} определяет уровень целостности сущности-объекта или контейнера таким образом, что выполняются следующие условия для e G O U C:
— если HLSI(e) = false, то ide(e) = 0;
— если HLSI(e) = true и —3e' > e(ide(e') = 0), то ide(e') = 0;
— если ide(e) = 0 и 3e' > e(ide(e') = 0), то ide(e) > ide(e').
4. Функция ids : U ^ L U {0} определяет уровень целостности учётной записи пользователя.
Предполагается, что если значение функции ide определено хотя бы для одной сущности e, то функция ids определена для всех пользователей, т. е.
(3e G O U C (ide(e) = 0)) ^ (Vu G U (ids(u) = 0)).
5. Функция ihe : O U C ^ L U {0} задаёт иерархические уровни целостности сущностей. Определена для e G O U C следующим образом:
— если ide(e) = 0, то ihe(e) = ide(e);
— иначе
— если HLSI(e) = true, 3e' > e (HLSI(e') = true, ide(e') = 0, —3e'' (e' > e" > e, ide(e'') = 0)), то ihe(e) = ide(e');
— если HLSI(e) = false, то ihe(e) = 0.
Корректность определения функции ihe обосновывает следующее
Утверждение 1. Если HLSI(e) = true и ide(e) = 0, то
3e' > e (HLSI(e') = true, ide(e') = 0).
В качестве примера приведём следующие правила преобразования состояний расширенной модели (таблица).
Правило Исходное состояние G Результирующее состояние G'
access read(s, e) s G S, e G DB U TAB U COL; если HLSI(e) = true, то —3e'GO U C(HLSI(e') = true, ihe(e')>ihe(e), (s, e', writea)GA) A' = A U {(s, e, reada)}, F' = F U {(e, s, writem)}
access write(s, e) s G S, e G DB U TAB U COL если HLSI(e)=true, то ids(user(s))^ihe(e) и —3e'GOUC(HLSI(e')=true, ihe(e')<ihe(e), (s,e',reada) G A); A' = A U {(s,e,writea)}, F' = F U {(s, e, writem)}
execute proc(s,p) s G S, p G Op; если execute as(p) = as owner, то w = owner (p), иначе w = user(s), ids(w) ^ ihe(p) A' = A U {(s,p, executea)}; если execute as(p) = as owner, то положим user(s) = owner(p), выполним последовательно G=Goh0p!G\\~ ... \~0pkGk =G', где (opi,..., opk) G operations(p). Вернём начальное значение user(s)
Будем говорить, что в состоянии системы не происходит нарушения целостности, если в нём выполняются следующие условия:
— -3(ei,e2,writem) G F, где ei,e2 G E и ie(e\) < ie(e2);
— —3(s,p, executea) G A, где s G S, p G Op и ie(p) < is(s).
Говорим также, что в системе не происходит нарушения целостности, если не происходит нарушения целостности во всех её состояниях на всех траекториях функционирования системы.
Теорема 1. Пусть в начальном состоянии системы не происходит нарушения целостности и начальные множества доступов и информационных потоков пустые. Тогда в системе не происходит нарушения целостности.
ЛИТЕРАТУРА
1. Колегов Д. Н., Ткаченко Н. О., Чернов Д. В. Разработка и реализация мандатных механизмов управления доступом в СУБД MySQL // Прикладная дискретная математика. Приложение. 2013. № 6. С. 62-67.
2. Biba K. J. Integrity Considerations for Secure Computer Systems. Technical Report MTR-3153. MITRE Corp., 1975.
3. Девянин П. Н. Модели безопасности компьютерных систем. Управление доступом и информационными потоками: учеб. пособие для вузов. М.: Горячая линия-Телеком, 2012. 320 c.