Разработка и реализация мандатного механизма...
TRANSCRIPT
Разработка и реализация мандатного механизмауправления доступом в СУБД MySQL
Денис Колегов, Николай Ткаченко, Дмитрий Чернов
Национальный исследовательский Томский государственный университетКафедра защиты информации и криптографии
( ) 1 / 19
Актуальность
Одной из актуальных задач компьютерной безопасности являетсяразработка и реализация мандатного управления доступом визначально дискреционных СУБД
Недостатки:Отсутствуют формальные модели политик безопасностиуправления доступомКорректность мандатного управления доступом формально необоснованаНе учитываются требования обеспечения безопасностиинформационных потоковМеханизмы мандатного управления доступом не интегрированы вядро СУБД
( ) 2 / 19
Цель работы
Обеспечение безопасности управления доступом и информационнымипотоками в СУБД MySQL путем реализации формальнообоснованного мандатного управления доступом
Для достижения цели решаются следующие задачи:
исследование реализации дискреционного управления доступомразработка формальной модели безопасности мандатногоуправления доступомреализация механизма мандатного управления доступом наоснове построенной моделипроведение тестовых испытаний механизма управления доступом
( ) 3 / 19
Исследование управления доступом в MySQL
Выполнено исследование исходного кода, изучение документации,а также проведены экспериментыИдентифицированы основные механизмы реализацииинформационных потоков по времениВыявлены методы реализации запрещенных информационныхпотоков по памяти в обход монитора безопасности
( ) 4 / 19
Исследование управления доступом в MySQL
Выявлены следующие типы запросов SQL, потенциально приводящиек реализации запрещенных информационных потоков по памяти:
«INSERT INTO . . . VALUES((SELECT. . . ), . . . )»;«INSERT . . . SELECT»;«UPDATE . . . SET . . . = (SELECT . . . )».
( ) 5 / 19
Исследование управления доступом в MySQL
user> insert tab2 values((select col1 from tab1 limit 1));
( ) 6 / 19
Ограничения
Информационные потоки рассматриваются в рамках СУБДРассматриваются только информационные потоки по памяти,порождаемые SQL-операторами SELECT, INSERT, UPDATE иDELETEИнформационные потоки по времени не рассматриваются
( ) 7 / 19
Теория ДП-моделей
П.Н. Девянин, ИКСИ Академии ФСБ РоссииМонография «Анализ безопасности управления доступом иинформационными потоками в компьютерных системах»Основа - модели Take-Grant, Белла-ЛаПадулы, СВС, ИПСУчитываются особенности построения защищенныхотечественных компьютерных системДоверенные субъекты, функция иерархии сущностей,блокирующие доступы, функциональная и параметрическаяассоциированность
( ) 8 / 19
Основные элементы модели
Сущности-объекты O: столбцы COL, процедуры Op, триггеры Ot ,представления Ov и переменные Ov
Сущности-контейнеры C : таблицы TAB , базы данных DB икорневой каталог C0
Субъект-сессии S , учетные записи пользователей UФункция иерархии сущностей H : C ∪ Op ∪ Ot ∪ S → 2O∪C
Функция уровней конфиденциальности сущности-объектаfe : (O \ Ov ) ∪ C → LФункция уровней доступа учетной записи пользователяfs : U → LФункция, определяющая пользователя субъект-сессииuser : S → U
( ) 9 / 19
Основные элементы модели
Множество прав доступов Rr = {readr , writer , appendr , deleter ,alterr , executer , creater , dropr , create_routiner , create_userr ,triggerr , create_viewr}Множества доступов Ra = {reada,writea, appenda}Множество информационных потоков Rf = {writem}Множество прав, которые могут быть переданыGrant ⊆ U × (C ∪ O)× Rr
Состояние модели G = (U, S , E , R , A, H, (fs , fe), user , Grant,execute_as, triggers, owner , operations, var)Σ(G ∗,OP) – система
( ) 10 / 19
Примеры правил преобразования
Правило Исходное состояние Результирующее состоя-ние
create_session(u, s) u ∈ U, s 6∈ S S ′s = Ss ∪ {s}, fs(s)′ =
fs(u), user ′(s) = ucreate_user(s, u, l) s ∈ S , user(s) ∈ Lu ,
u 6∈ U, l ≤ fs(user(s)),(user(s), c0, create_userr ) ∈ R
U′ = U ∪ {u}, f ′s (u) = l
grant_right(s, u, e, α,grant_option)
s ∈ S , u ∈ U, e ∈ C∪O, α ∈ Rr ,grant_option ∈ {true, false},∃c ′ ≥ e : (s, c ′, α) ∈ Rr , ∃c ≥e : (user(s), c, α) ∈ Grant
R′ = R ∪ {(u, e, α)}, ес-ли grant_option = true,то Grant′ = Grant ∪{(u, e, α)}
access_read(s, e) s ∈ S , e ∈ DB ∪ TAB ∪ COL,∃c ∈ C ∪ O, что e < c илиe = c, fs(user(s)) ≥ fe(c) иHLS(e, c) = true, @e1 ∈ O ∪C :fe(e1) < fe(e) и (s, e1, α) ∈ A,где α ∈ {writea, appenda}
A′ = A ∪ {(s, e, reada)},F ′ = F ∪ {(e, s,writem)}
( ) 11 / 19
Утверждение
Определение 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) является безопасной в смысле Белла –ЛаПадулы.
( ) 12 / 19
Структурная схема управления доступом
( ) 13 / 19
Хранение меток безопасности
( ) 14 / 19
Обработка меток безопасности
( ) 15 / 19
Схема мандатного управления доступом
( ) 16 / 19
Сравнение механизмов мандатого управления доступом
( ) 17 / 19
Результаты работы
1) Выявлены методы реализации запрещенных информационныхпотоков в обход механизмов управления доступом СУБД MySQL
2) Разработана формальная ДП-модель мандатного управлениядоступом СУБД MySQL
3) Произведена адаптация построенной модели к механизмам СУБДMySQL
4) Реализован мандатный механизм управления доступом на уровнеядра безопасности СУБД MySQL
( ) 18 / 19
Благодарю за внимание!!!
Денис Колегов,[email protected]
Николай Ткаченко,[email protected]
Дмитрий Чернов,[email protected]
( ) 19 / 19