Development and Implementation of Mandatory Access Control Policy for RDBMS M...
Разработка и реализация механизма мандатного управления доступом в СУБД MySQL (SibeCrypt 2013)
1. SEBECRYPT 2013
РАЗРАБОТКА И
РАЛИЗАЦИЯ МЕХАНИЗМА
МАНДАТНОГО
УПРАВЛЕНИЯ ДОСТУПОМ
В СУБД MySQL
Колегов Денис, Ткаченко Николай, Чернов Дмитрий
Кафедра защиты информации и криптографии
Томский государственный университет
12 Всероссийская конференция «Сибирская научная школа-семинар с международным
участием «Компьютерная безопасность и криптография». Парабель, 2-7 сентября 2013 г.
2. Введение
•
1
Одной из актуальных задач компьютерной безопасности является
разработка и реализация мандатного управления доступом в изначально
дискреционных СУБД
– Отсутствуют формальные модели политик безопасности управления
доступом
– Корректность мандатного управления доступом формально не
обоснована
– Не учитываются требования обеспечения безопасности
информационных потоков
– Механизмы мандатного управления доступом не интегрированы в
ядро СУБД
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
3. Терминология
•
•
2
Дискреционное управление доступом (DAC) – управление доступом к
сущностям субъектами-пользователями, имеющими соответствующие
права доступа к этим сущностям
Мандатное управление доступом (MAC) – управление доступом к
сущностям субъектами-администраторами без возможности изменения
этого управления любыми субъектами
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
4. Виды управления доступом
•
Matt Bishop “Computer Security”
–
–
–
•
NIST “Assessment of Access Control System”
–
–
•
DAC
NDAC
• MAC
• RBAC
• Temporal constraints
SELinux Notebook
–
–
3
DAC (IBAC)
MAC (RuBAC)
ORCON
DAC
MAC
• MLS
• TE
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
6. Исследование управления доступом в
MySQL
•
•
Идентифицированы
основные
информационных потоков по времени
•
5
Выполнено исследование исходного кода, изучение документации, а
также проведены эксперименты
Выявлены методы реализации запрещенных информационных потоков
по памяти в обход монитора безопасности
механизмы
реализации
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
7. Пример потока по времени
6
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
8. Исследование управления доступом в
MySQL
•
•
«INSERT … SELECT»
•
7
«INSERT INTO … VALUES((SELECT…), …)»
«UPDATE … SET … = (SELECT …)»
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
9. Пример потока по памяти
8
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
10. Ограничения модели
•
•
Рассматриваются только информационные потоки по памяти,
порождаемые SQL-операторами SELECT, INSERT, UPDATE и DELETE
•
9
Информационные потоки рассматриваются в рамках СУБД
Информационные потоки по времени не рассматриваются
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
11. Предположения модели
•
•
Если для некоторой сущности eE определено значение fe (e), то оно
определено и для любого контейнера cC, такого, что e < c
•
10
Если пользователь обладает правом доступа на контейнер, то он
также обладает этим правом доступа на сущности этого контейнера
Уровни конфиденциальности сущностей наследуются
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
12. Элементы ДП-модели MySQL
O = Op Ot Ov Ovar Ogvar Oc COL – множество сущностей-объектов:
Op – множество сущностей-процедур
Ot – множество сущностей-триггеров
Ov – множество сущностей-представлений
Ovar – множество сущностей-переменных
Ogvar – множество сущностей-глобальных переменных
Oc – множество сущностей-курсоров
COL – множество сущностей-столбцов
С = DB TAB {с0} – множество сущностей-контейнеров, при этом множества
контейнеров не пересекаются друг с другом и с множеством сущностей-объектов:
DB – множество контейнеров-баз данных
TAB – множество контейнеров-таблиц
с0 – корневой контейнер, содержащий все базы данных
11
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
13. Элементы ДП-модели MySQL
S – множество субъект-сессий пользователей: O S = и C S = ,
U – множество учетных записей
E = O C S U – множество сущностей
(L, ) – решетка упорядоченных уровней доступа и уровней конфиденциальности,
fe: (O Ov) C L и fs: U L – функции, определяющие уровни
конфиденциальности и доступа соответственно
Rr = {alterr, dropr, readr, writer, appendr, deleter, executer, create_routiner, creater,
create_userr, create_triggerr, create_viewr} – множество видов прав доступа
Ra = {reada, writea, appenda} – множество видов доступа
Rf = {writem} – множество информационных потоков
R U (C O) Rr – множество текущих прав доступа
A S (O C) Ra – множество текущих доступов
F (EU) (EU) Rf – множество информационных потоков соответственно
12
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
15. Примеры правил преобразования
Правило
create_session(u, s)
Состояние G
uU, sS
Состояние G’
S’= S{s}, user’(s) = u,
f’s(s) = fs(u)
sS, eDBTABCOL, ∃ c(CO), что
S’= S{s}, user’(s) = u,
e ≤ c, (fs(user(s)) ≥ f(c) и HLS(e, c) = true)
access_read(s, e)
f’s(s) = fs(u)
или (fs(user(s)) ≥ f(e) и HLS(e, c) = false); ∄
e1 CO: fe(e1) < fe(e), (s, e1, α)A,
α{writea, appenda}
14
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
16. Теоретическое обоснование
Определение 1. Будем говорить, что в состоянии G системы (G*, OP) доступ (s, e,
)A обладает ss-свойством, если =appenda или fs(user(s)) fe(e).
Определение 2. В состоянии G системы (G*, OP) доступы (s, e1, reada), (s, e2,
)A, где {writea, appenda} обладают *-свойством, если fe(e1) fe(e2).
Теорема. Пусть начальное состояние G0 системы (G*, OP, G0) является
безопасным в смысле Белла-ЛаПадулы и A0 = F0 = , тогда система (G*, OP, G0)
безопасна в смысле Белла-ЛаПадулы.
15
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
20. Выводы
•
•
Разработана промежуточная ДП-модель MySQL
•
19
Идентифицированы механизмы обработки запросов языка SQL,
приводящие к реализации информационных потоков по памяти
Реализован механизм мандатного управления доступом в СУБД
MySQL на основе построенной модели
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
21. Благодарю за внимание!
Колегов Денис Николаевич
Доцент кафедры защиты информации и криптографии
Томский государственный университет
E-mail: d.n.kolegov@gmail.com
Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL