SEBECRYPT 2013

РАЗРАБОТКА И
РАЛИЗАЦИЯ МЕХАНИЗМА
МАНДАТНОГО
УПРАВЛЕНИЯ ДОСТУПОМ
В СУБД MySQL

Колегов Денис, Ткаченко Нико...
Введение
•

1

Одной из актуальных задач компьютерной безопасности является
разработка и реализация мандатного управления ...
Терминология
•

•

2

Дискреционное управление доступом (DAC) – управление доступом к
сущностям субъектами-пользователями,...
Виды управления доступом
•

Matt Bishop “Computer Security”
–
–
–

•

NIST “Assessment of Access Control System”
–
–

•

D...
DAC или MAC?

4

Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
Исследование управления доступом в
MySQL
•

•

Идентифицированы
основные
информационных потоков по времени

•

5

Выполнен...
Пример потока по времени

6

Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
Исследование управления доступом в
MySQL

•
•

«INSERT … SELECT»

•

7

«INSERT INTO … VALUES((SELECT…), …)»

«UPDATE … SE...
Пример потока по памяти

8

Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
Ограничения модели
•
•

Рассматриваются только информационные потоки по памяти,
порождаемые SQL-операторами SELECT, INSERT...
Предположения модели
•

•

Если для некоторой сущности eE определено значение fe (e), то оно
определено и для любого конт...
Элементы ДП-модели MySQL
O = Op  Ot  Ov  Ovar  Ogvar  Oc  COL – множество сущностей-объектов:
Op – множество сущност...
Элементы ДП-модели MySQL
S – множество субъект-сессий пользователей: O  S =  и C  S = ,
U – множество учетных записей
...
Элементы ДП-модели MySQL

13

Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
Примеры правил преобразования
Правило
create_session(u, s)

Состояние G
uU, sS

Состояние G’
S’= S{s}, user’(s) = u,
f’...
Теоретическое обоснование
Определение 1. Будем говорить, что в состоянии G системы (G*, OP) доступ (s, e,
)A обладает s...
Элементы реализации

16

Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
Элементы реализации

17

Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
Элементы реализации

18

Разработка и реализация механизма мандатного управления
доступом в СУБД MySQL
Выводы
•

•

Разработана промежуточная ДП-модель MySQL

•

19

Идентифицированы механизмы обработки запросов языка SQL,
пр...
Благодарю за внимание!

Колегов Денис Николаевич
Доцент кафедры защиты информации и криптографии
Томский государственный у...
Upcoming SlideShare
Loading in...5
×

Разработка и реализация механизма мандатного управления доступом в СУБД MySQL (SibeCrypt 2013)

328

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
328
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Разработка и реализация механизма мандатного управления доступом в СУБД MySQL (SibeCrypt 2013)

  1. 1. SEBECRYPT 2013 РАЗРАБОТКА И РАЛИЗАЦИЯ МЕХАНИЗМА МАНДАТНОГО УПРАВЛЕНИЯ ДОСТУПОМ В СУБД MySQL Колегов Денис, Ткаченко Николай, Чернов Дмитрий Кафедра защиты информации и криптографии Томский государственный университет 12 Всероссийская конференция «Сибирская научная школа-семинар с международным участием «Компьютерная безопасность и криптография». Парабель, 2-7 сентября 2013 г.
  2. 2. Введение • 1 Одной из актуальных задач компьютерной безопасности является разработка и реализация мандатного управления доступом в изначально дискреционных СУБД – Отсутствуют формальные модели политик безопасности управления доступом – Корректность мандатного управления доступом формально не обоснована – Не учитываются требования обеспечения безопасности информационных потоков – Механизмы мандатного управления доступом не интегрированы в ядро СУБД Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  3. 3. Терминология • • 2 Дискреционное управление доступом (DAC) – управление доступом к сущностям субъектами-пользователями, имеющими соответствующие права доступа к этим сущностям Мандатное управление доступом (MAC) – управление доступом к сущностям субъектами-администраторами без возможности изменения этого управления любыми субъектами Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  4. 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
  5. 5. DAC или MAC? 4 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  6. 6. Исследование управления доступом в MySQL • • Идентифицированы основные информационных потоков по времени • 5 Выполнено исследование исходного кода, изучение документации, а также проведены эксперименты Выявлены методы реализации запрещенных информационных потоков по памяти в обход монитора безопасности механизмы реализации Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  7. 7. Пример потока по времени 6 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  8. 8. Исследование управления доступом в MySQL • • «INSERT … SELECT» • 7 «INSERT INTO … VALUES((SELECT…), …)» «UPDATE … SET … = (SELECT …)» Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  9. 9. Пример потока по памяти 8 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  10. 10. Ограничения модели • • Рассматриваются только информационные потоки по памяти, порождаемые SQL-операторами SELECT, INSERT, UPDATE и DELETE • 9 Информационные потоки рассматриваются в рамках СУБД Информационные потоки по времени не рассматриваются Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  11. 11. Предположения модели • • Если для некоторой сущности eE определено значение fe (e), то оно определено и для любого контейнера cC, такого, что e < c • 10 Если пользователь обладает правом доступа на контейнер, то он также обладает этим правом доступа на сущности этого контейнера Уровни конфиденциальности сущностей наследуются Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  12. 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. 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
  14. 14. Элементы ДП-модели MySQL 13 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  15. 15. Примеры правил преобразования Правило create_session(u, s) Состояние G uU, sS Состояние G’ S’= S{s}, user’(s) = u, f’s(s) = fs(u) sS, eDBTABCOL, ∃ c(CO), что 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 CO: fe(e1) < fe(e), (s, e1, α)A, α{writea, appenda} 14 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  16. 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
  17. 17. Элементы реализации 16 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  18. 18. Элементы реализации 17 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  19. 19. Элементы реализации 18 Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  20. 20. Выводы • • Разработана промежуточная ДП-модель MySQL • 19 Идентифицированы механизмы обработки запросов языка SQL, приводящие к реализации информационных потоков по памяти Реализован механизм мандатного управления доступом в СУБД MySQL на основе построенной модели Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  21. 21. Благодарю за внимание! Колегов Денис Николаевич Доцент кафедры защиты информации и криптографии Томский государственный университет E-mail: d.n.kolegov@gmail.com Разработка и реализация механизма мандатного управления доступом в СУБД MySQL
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×