Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Булаев Владислав Викторович

Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных
<
Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Булаев Владислав Викторович. Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных : Дис. ... канд. техн. наук : 05.13.11, 05.13.19 : Ростов н/Д, 2004 157 c. РГБ ОД, 61:05-5/1486

Содержание к диссертации

Введение

Глава 1. Анализ уязвимостеи современных систем управления базами данных и современных средств защиты баз данных 12

1.1 Угрозы программному обеспечению и их классификация 12

1.2 Уязвимости систем управления базами данных 19

1.2.1 Уязвимости подсистемы контроля доступа 20

1.2.2 Уязвимости сетевого окружения 23

1.2.3 Возможности несанкционированного сбора информации о системе управления базами данных и нарушение целостности данных 25

1.2.4 Уязвимости сетевого взаимодействия 27

1.2.5 Уязвимости среды функционирования 28

1.2.6 Уязвимости аппаратного обеспечения 31

1.3 Существующие средства защиты информации в системах управления базами

данных 31

1.3.1 Архитектура систем обнаружения сетевых атак 33

1.3.2 лассификация систем обнаружения сетевых атак 37

1.3.3 Методы обнаружения сетевых атак 38

1.3.3.1 Обнаружение нарушения политики безопасности 39

1.3.3.2 Обнаружение аномалий 39

1.3.4 Система оповещения и реакции на сетевые атаки 43

1.3.5 Производительность систем обнаружения сетевых атак 43

1.3.6 Средства анализа защищенности информации в системах управления базами данных 45

1.3.7 Средства защиты информации для систем управления базами данных.. 48

1.4 Постановка задачи 49

Выводы 51

Глава 2. Разработка методов защиты информации в распределенных корпоративных базах данных 52

2.1 Условная политика безопасности 53

2.1.1 Операции над условными отношениями 58

2.1.2 Управление условной политикой безопасностью 60

2.1.3 Реализация условной политики безопасности в СУБД 64

2.2 Защита информации от атак типа "встраивание SQL-кода" 68

2.2.1 Преобразование SQL-выражения в дерево 69

2.2.2 Анализ и модификация дерева запроса 73

2.2.3 Преобразование дерева запроса в текстовый вид 75

Выводы 78

Глава 3. Архитектура системы контроля доступа к распределенным корпоративным базам данных 79

3.1 Общая схема системы контроля доступа к распределенным корпоративным базам данных 86

3.2 Модуль ограничения доступа 91

3.2.1 Модуль обработки запросов 94

3.2.2 Модуль проверки прав доступа 95

3.3 Модуль организации сеансов связи 98

3.4 Модуль сбора информации 106

3.5 Модуль аудита безопасности среды функционирования СУБД 108

3.6 Центр сбора и обработки сообщений 109

3.7 Модуль управления 110

Выводы 112

Глава 4. Программная реализация системы контроля доступа к распределенным корпоративным базам данных 113

4.1 Реализация модуля организации сеансов связи 113

4.1.1 Именование PIPE серверов 115

4.1.2 Взаимодействие служб перехватчика протокола PIPE 117

4.1.3 Настройка системы перехвата 119

4.2 Кодирование данных 121

4.3 Реализация центра сбора и обработки сообщений 123

4.4 Модуль управления 130

4.5 Модуль тестирования 133

Выводы 141

Заключение 142

Список использованных источников

Введение к работе

Многие телекоммуникационные сети промышленных предприятий в настоящее время являются объектами повышенного внимания, применительно к которым имеется реальная опасность осуществления злоумышленниками вредоносного воздействия на наиболее актуальную и конфиденциальную информацию, содержащуюся в корпоративных базах данных. Сегодня существует опасность того, что практически любое рабочее место пользователя корпоративной базы данных в информационно-телекоммуникационной сети является уязвимым к угрозам несанкционированного доступа к информационным ресурсам и специального программно-математического воздействия на них.

Информационные системы находятся в постоянном развитии, в них добавляются новые сегменты и расширяется функциональность. Одной из существенных особенностей современных информационных систем является их распределенный характер. Масштаб таких систем возрастает, они охватывают все больше число точек по всему миру. Кроме этого, современный уровень принятия решений, оперативное управление информационными ресурсами требует все большей их децентрализации. Тенденция децентрализации данных затрагивает как маленькие компании, так и крупные корпорации. Примерами распределенных систем могут послужить системы резервирования билетов крупных авиакомпаний либо производственные корпорации, имеющие разветвленную сеть филиалов.

Основная задача систем управления распределенными базами данных состоит в обеспечении интеграции локальных баз данных, располагающихся в некоторых узлах вычислительной сети. Это необходимо для того, чтобы пользователь, работающий в любом узле сети, имел доступ ко всем этим базам данных как к единой базе. Одним из решений этой задачи является подключение локальных сетей отделов предприятия к глобальным сетям общего пользования. Данные при этом могут находиться на компьютерах различных моделей и производителей, функционирующих под управлением различных операционных систем, доступ к данным осуществляться разнородным программным обеспечением, а сами компьютеры могут быть значительно удалены друг от друга. Эти факторы могут привести к тому, что информация, хранимая в распределенных

корпоративных базах данных, становится уязвимой к угрозам несанкционированного доступа (далее - НСД) и специальных программно-математических воздействий (далее - СПМВ).

Таким образом, необходимость исследований в области защиты информации в распределенных корпоративных базах данных обуславливается, с одной стороны, интенсивным развитием информационно-телекоммуникационной инфраструктуры корпоративных вычислительных сетей, а, с другой стороны, возникновением множества угроз безопасности информации, парирование которых для защиты корпоративных данных является особенно важным.

Анализируя существующее положение дел в области защиты информации можно сделать вывод, что область, связанная с вопросами защиты распределенных корпоративных баз данных, остается в России до настоящего времени неосвоенной, соответствующие исследования не проводились, а регламентирующие документы по этим вопросам отсутствуют.

В связи с этим, актуальность выбранной темы исследования определяется необходимостью повышения уровня защищенности распределенных корпоративных баз данных от несанкционированного доступа и специальных программно-математических воздействий.

Объектом настоящего исследования являются распределенные корпоративные базы данных.

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

Целью исследования является разработка и практическая реализация архитектуры системы контроля доступа к распределенным корпоративным базам данных, позволяющей повысить их защищенность от несанкционированного доступа и специальных программно-математических воздействий. Для достижения поставленной цели в диссертационной работе определены следующие задачи:

- разработать классификацию угроз программному обеспечению, ориентированную на распределенные корпоративные базы данных;

- провести анализ уязвимых мест современных реляционных СУБД для разработки адекватных методов противодействия этим угрозам;

- разработать методы защиты распределенных корпоративных баз данных на основе серверных реляционных СУБД от НСД и СПМВ;

- разработать архитектуру системы контроля доступа к распределенным корпоративным базам данных, реализующую разработанные методы защиты;

- программно реализовать систему контроля доступа к распределенным корпоративным базам данных, обеспечивающую адекватное противодействие угрозам несанкционированного доступа к информации и специальных программно-математических воздействий.

Методы исследования основаны на использовании теории распределенных систем, теории реляционных баз данных и теории информационной безопасности.

Научная новизна заключается в разработке нового подхода к вопросам организации защиты распределенных баз данных, позволяющего обеспечить доступность, целостность и конфиденциальность информации в РКБД путем сочетания средств регламентации доступа к данным и средств мониторинга состояния распределенной корпоративной базы данных.

Практическая ценность исследования заключается в том, что его положения могут быть использованы для обеспечения информационной безопасности в медицинских, финансовых и ведомственных базах данных.

Основные положения, выносимые на защиту. На защиту выносятся следующие положения:

- Классификация угроз программному обеспечению, ориентированная на распределенные корпоративные базы данных и позволяющая выбирать адекватные меры защиты от НСД и СПМВ.

- Условная политика безопасности, вводящая в систему регламентации доступа к данным дополнительный механизм, усиливающий контроль над доступом к информации.

- Методы информационной защиты на основе условной политики безопасности, позволяющие противостоять угрозам несанкционированного доступа к информации, содержащейся в распределенных корпоративных базах данных.

- Методы информационной защиты на основе модификации SQL-выражений, вводящие дополнительный рубеж защиты информации, содержащейся в распределенных корпоративных базах данных.

- Архитектура системы контроля доступа к распределенным базам данных, сочетающая средства регламентации доступа к данным и мониторинга состояния контролируемой РКБД.

- Программная реализация протоколов взаимодействия модулей, входящих в состав системы контроля доступа к РКБД, позволяющая гибко масштабировать систему контроля доступа и наращивать ее функциональность.

Апробация и внедрение результатов работы. Результаты проведенных исследований нашли непосредственное применение при разработке средств обеспечения информационной безопасности распределенных баз данных и были использованы при выполнении следующих научно-исследовательских работ:

- «Штиль-РИ» в ФГУП «Центр космических наблюдений» (г. Москва);

- «Ресурс-БД-2» в Федеральной службе по техническому и экспортному контролю (г. Воронеж);

- «Секретарь-Д» в ГНУ НИИ «Спецвузавтоматика» (г. Ростов-на-Дону).

Основные результаты диссертационной работы докладывались и обсуждались на научных симпозиумах, научно-технических конференциях и семинарах:

- всероссийская научно-техническая конференция с международным участием «Компьютерные технологии в инженерной и управленческой деятельности», Таганрог, 2000;

- всероссийская научно-техническая конференция с международным участием «Компьютерные технологии в инженерной и управленческой деятельности», Таганрог, 2001;

- международная научно-техническая конференция «Интеллектуальные и многопроцессорные системы -2001», Дивноморское, 2001;

- всероссийская объединенная конференция «Технологии информационного общества - Интернет и современное общество», Санкт-Петербург, 2001;

- всероссийская научно-техническая конференция с международным участием «Компьютерные технологии в инженерной и управленческой деятельности», Таганрог, 2002;

- третья международная научно-практическая конференция «Искусственный интеллект - 2002», Украина, 2002;

- международная научно-техническая конференция «СуперЭВМ и многопроцессорные вычислительные системы. МВС 2002», Таганрог, 2002;

- вторая сессия молодежной школы-семинара «Экологическая и промышленная безопасность», Саров, 2002;

- седьмая нижегородская сессия молодых ученых (математические науки), Нижний Новгород, 2002;

- четвертая международная научно-практическая конференция «Искусственный интеллект - 2003», Украина, 2003;

- третья республиканская научно-практическая конференция «Дагинформ-2003», Махачкала, 2003.

Авторство, новизна и полезность принципиальных технических решений защищены двумя свидетельствами об официальной регистрации программных продуктов.

Публикации. По теме диссертации опубликованы 19 печатных работ. Из них 8 научных статей, 9 тезисов докладов и два свидетельства об официальной регистрации программы для ЭВМ.

Диссертационная работа состоит из введения, четырех глав и заключения.

В первой главе на примере СУБД MS SQL Server анализируются уязвимости современных систем управления базами данных, вводится классификация угроз программному обеспечению. Рассматривается классификация систем обнаружения сетевых атак и методы обнаружения сетевых атак. На примере продуктов Database Scanner и SQL Secure Policy рассматриваются существующие средства анализа защищенности систем управления базами данных. Также рассматриваются средства защиты информации в СУБД на примере отечественной разработки программного средства защиты информации (далее - ПСЗИ) «Бастион SQL». Рассматриваются недостатки таких систем и их причины. Осуществляется постановка задачи исследования.

Вторая глава посвящена методам защиты распределенных корпоративных баз данных. Вводится понятие условной безопасности, операции работы с ней, методы управления условной политикой безопасности и критерий безопасности для контролируемой системы. Приводится пример реализации условной политики безопасности для СУБД MS SQL Server. Предлагается алгоритм защиты информации от атак типа "встраивание SQL-кода", построенный на перехвате и модификации SQL-запросов пользователей.

В третей главе содержатся результаты разработки архитектуры системы контроля доступа к распределенным корпоративным базам данных. Рассматриваются построенная по модульному принципу общая схема системы, составляющие модули системы, их функциональность и принципы работы.

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

В заключении обобщены итоги и результаты проведенных исследований.

Возможности несанкционированного сбора информации о системе управления базами данных и нарушение целостности данных

В интегрированном режиме пользователь пытается подключиться к серверу по идентификатору и паролю, введенным при регистрации в сети. Такое подключение выполняется в условиях доверительного (trusted) соединения: сервер считает, что Windows NT выполнила все проверки и только уточняет, есть ли идентификатор пользователя в списке имеющих право на доступ к серверу. При подключении в режиме интегрированной безопасности используется информация из реестра Windows. У подобной интеграции немало слабых мест. Если доступа к реестру нет, пользователю будет отказано в доступе к серверу. Если же он обладает административными правами, то регистрация в SQL Server происходит под именем SA. Определить, кто стоит за конкретным именем, в таком случае невозможно.

В версии 7.0 оставлены только два режима проверки: средствами Windows NT (Integrated Security), когда сервер доверяет пользователю, говорящему, что он -такой-то. Считается, что если пользователь уже зарегистрировался в сети, то он прошел необходимые проверки. Второй режим — Standard Security, когда сервер требует дополнительного ввода идентификатора и пароля. Проверка посредством анализа записи в реестре отменена - информация, ранее хранящаяся в реестре, перенесена в таблицу Syslogins. Помимо прав, назначаемых отдельным пользователям, SQL Server 7.0 позволяет дать разрешение на доступ сразу всей группе Windows NT, при этом члены группы также имеют право доступа. Сервер видит такого пользователя как его учетную запись, а не как учетную запись группы, и все действия этого пользователя можно отследить независимо от его уровня привилегий в домене (администратор или нет).

Определение прав пользователя на доступ к MS SQL Server версии 2000 может работать в одном из двух режимов: - Mixed Mode - позволяет получить доступ к серверу баз данных и пользователям, не имеющим учетной записи в домене Windows NT; - Windows Authentication Mode (режим аутентификации Windows) - более защищенный метод по сравнению с предыдущим, так как аутентификация Windows NT является более защищенной, чем аутентификация SQL Server. Таким образом, если не используется интегрированный режим аутентификации, атакующий может перехватить пароль и имя администратора базы данных (учетная запись - SA), скомпрометировав, тем самым, всю информацию, хранимую в базе. Здесь следует отметить, что учетная запись SA по умолчанию имеет пустой пароль, и многие администраторы баз данных не учитывают этой особенности MS SQL Server. Кроме того, в MS SQL Server учетную запись системного администратора базы данных (SA) невозможно удалить, переименовать или лишить прав.

В MS SQL Server отсутствует механизм блокировки учетной записи, к которой злоумышленник пытается подобрать пароль. Это позволяет осуществлять неограниченное число попыток подключения к базе данных и использовать словарь наиболее распространенных паролей (атака по словарю). Такую атаку может осуществить, к примеру, программа Shadow Security Scanner (http://\v\vw.rsh.kiev.ua/). Аудит попыток входа по умолчанию отключен, поэтому данная атака может остаться незамеченной.

Другим недостатком практически всех СУБД является отсутствие механизма проверки «сильных» паролей, которые не могут быть подобраны в течение короткого промежутка времени. Зачастую в качестве пароля выбирается имя пользователя (идентификатор), знаменательная дата, номер паспорта или телефона и иные легко угадываемые комбинации. Нередко у пользователя совсем отсутствует пароль.

Пользователи могут месяцами не пользоваться базой данных, но, будучи один раз в нее внесенными, они считаются полноправными ее пользователями. В СУБД и многих ОС отсутствует механизмы контроля учетных записей, неиспользованных в течение заданного промежутка времени. Описанные уязвимости приводят к тому, что СУБД становится восприимчивой к атакам типа "подбор пароля" (brute force), что, в случае успеха, может привести к компрометации всей информации, хранимой в базе данных. Согласно введенной классификации данные уязвимости имеют следующие классификационные признаки: - по способу применения: локальные или удаленные; - по результату исполнения: получение терминала с нравами определенного пользователя или администратора; - по степени риска: высокая. Получение злоумышленником управления над базой может повлечь за собой такие действия, как: - выполнение различных команд при помощи хранимой процедуры xp_cmdshell; - использование хранимой процедуры xp_regread позволит читать ключи реестра, включая SAM (если SQL Server выполняется от имени локальной системной учетной записи); - выполнение запросов на связанных серверах; - использование выражения «bulk insert» для чтения любых файлов на сервере; - использование утилиты Ьср для создания текстовых файлов на сервере; - использование хранимых процедур sp_OACreate, sp_OAMethod и sp_OAGetProperty для создания различных OLE-приложений (ActiveX).

Данные уязвимости имеют следующие классификационные признаки: - но способу применения: удаленные; - по результату исполнения: получение доступа к файлам с правами определенного пользователя; - по степени риска: средняя. 1.2.4 Уязвимости сетевого взаимодействия Для подключения к MS SQL Server можно использовать различные сетевые протоколы - TCP/IP, Named Pipes, Multi-Protocol. В первом случае, имя и пароль пользователя, проходящего аутентификацию на сервере базы данных, передаются в открытом виде и могут быть перехвачены при помощи простейшего анализатора протокола (sniffer). Кроме того, использование протоколов TCP/IP позволяет обойти процедуру аутентификации Windows NT. Аналогичным образом, можно поступить и при использовании протокола Named Pipes, в котором пароль посылается в формате UUENCODE, что также не является преградой для злоумышленников. В случае использования Multi-Protocol передаваемая информация может шифроваться или не шифроваться.

Управление условной политикой безопасностью

Системы защиты баз данных, как и большинство систем информационной безопасности, строятся в соответствии со строгой иерархией подчинения. Верхний уровень системы обычно составляет политика безопасности со своими специфическими методами ее установки и анализа. Следующий уровень сверху вниз - основные системы поддержки политики безопасности (нормативный контроль, аудит и т.д.). Затем следует уровень механизмов защиты (криптографические протоколы, криптографические алгоритмы, системы создания защищенной среды, системы синхронизации и хранения ресурсов и т.д.), которые позволяют реализовать системы поддержки политики безопасности. И, наконец, самый низкий уровень - реализация механизмов защиты (виртуальная намять, теговая архитектура, защищенные режимы процессора и т.д.). Целесообразно рассматривать только верхние уровни этой иерархии, так как механизмы защиты базы данных от несанкционированного доступа наиболее эффективно управляются именно на этих абстрактных уровнях.

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

Прежде чем приступить к описанию модели безопасности распределенной корпоративной базы данных, необходимо изложить основные используемые далее положения теории информационной безопасности. Все модели безопасности основаны на следующих базовых представлениях. Информационная система является совокупностью взаимодействия сущностей субъектов и объектов. Все взаимоотношения в системе моделируются установлением отношений определённого типа между субъектами и объектами. Все операции контролируются монитором взаимодействий, при этом они либо запрещаются, либо разрешаются.

Совокупность множеств субъектов, объектов и отношений между ними определяет состояние системы или как говорят конфигурацию системы. Каждое состояние системы является либо безопасным, либо небезопасным в соответствии с используемой моделью критериев безопасности.

Основной элемент модели безопасности - это доказательство утверждения о том, что система находится в безопасном состоянии и не может быть переведена в небезопасную конфигурацию при соблюдении всех установленных правил и ограничений. В современных СУБД обычно поддерживается один из двух (реже - оба одновременно) широко распространенных подходов к организации защиты данных: - дискреционное (в зарубежной литературе - discretionary) или избирательное управление доступом - управление доступом на основе заданного администратором множества разрешённых отношений доступа (например, в виде троек "объект", "субъект", "тип доступа"). - мандатное (mandatory) или нормативное управление доступом - это управление доступом, основанное на совокупности правил предоставления доступа определённых на множестве атрибутов безопасности субъектов и объектов. В обоих случаях единица данных или «объект данных», для которых организуется система защиты, может выбираться из широкого диапазона: от всей базы данных до конкретных компонентов отдельных кортежей.

Субъект контроля (пользователь или программа) инициирует запрос доступа к системе. Этот запрос определяет действие, которое должно быть выполнено над объектом доступа. Система контроля доступа получает запрос и передает его в модуль принятия решений, который в зависимости от правил доступа, заданных политикой управления доступом, определяет, разрешить или запретить выполнение запрошенного действия.

Семантика правил доступа в большинстве существующих систем контроля доступа (например, построенных на классической дискреционной модели безопасности Харрисона-Руззо-Ульмана [18] или мандатной модели Белла-ЛаПадулы [22]), использует обычно кортеж из трех значений: объект, субъект, действие . Результатом применения правил такого вида является разрешение или запрещение субъекту выполнить запрошенное действие над объектом. Однако, механизмы, позволяющие строить такие отношения между субъектами контроля и объектами доступа, которые требуют выполнения нескольких действий, причем действия должны выполняться в каком-то определенном порядке, в существующих системах контроля доступа отсутствуют. Правила такого вида можно описать кортежем из четырех значений: объект, субъект, действие, условные действия . В результате проверки таких правил является разрешение или запрещение субъекту выполнить запрошенное действие над объектом при условии выполнения некоторых условных действий. Так как действия субъекта над объектом требуют выполнения некоторых условий, то такие правила доступа будем называть условными правилами доступа или коротко - условными правилами, отношения между субъектами контроля и объектами доступа в рамках условных правил будем называть условными отношениями, а политику безопасности, основанную на условных отношениях - условной политикой безопасности. Далее в тексте, если этого не будет указываться явным способом, иод терминами «правила», «отношения» и «политика безопасности» будут пониматься соответственно условные правила доступа, условные отношения и условная политика безопасности.

Модуль организации сеансов связи

Для обеспечения защиты распределенной базы данных предлагается систему контроля доступа по функциональности разделить на две составные части: компонент, отвечающий за регламентацию доступа к данным, и компонент, осуществляющий мониторинг контролируемой системы в режиме реального времени.

Модуль ограничения доступа реализует функции регламентации доступа к распределенным корпоративным базам данных. Этот модуль состоит из двух функциональных частей: модуля проверки прав доступа, контролирующего пользователей распределенной базы данных, их права доступа к различным объектам и данным РКБД, и модуля обработки запросов, предназначенного для модификации SQL-выражений путем встраивания в них некоторых операторов, контролирующих правила доступа к информации. Модуль проверки прав доступа предназначен для защиты от уязвимостей, имеющих следующие классификационные признаки: - по способу применения: локальные и удаленные; -по результату исполнения: получение доступа к файлам с правами определенного пользователя или администратора, получение терминала с правами определенного пользователя или администратора. Модуль обработки запросов разработан для защиты от уязвимостей, имеющих следующие классификационные признаки: - по способу применения: удаленные; - по результату исполнения: получение доступа к файлам с правами определенного пользователя или администратора, временное или полное прекращение работоспособности сервиса.

Основной задачей модуля организации сеансов связи является создание защищенного канала обмена данными между клиентом и СУБД. В функции этого модуля входит шифрование сеанса связи с клиентом, проведение его аутентификации.

Данный модуль разработан для защиты от уязвимостей, имеющих следующие классификационные признаки: - по способу применения: удаленные; - по результату исполнения: получение доступа к файлам с правами определенного пользователя или администратора.

Для того, чтобы обеспечить своевременное и адекватное реагирование на угрозы безопасности контролируемой РКБД, предлагается следующий подход. В узлах РКБД должны располагаться модули, позволяющие в реальном времени осуществлять сбор вспомогательной информации, на основании которой принимаются решения по возникающим внештатным ситуациям. Такие модули можно разделить по следующим функциональным признакам: - модули сбора информации, осуществляющие мониторинг сетевого взаимодействия; - модули аудита безопасности среды функционирования СУБД; - центры сбора и обработки сообщений; - управляющие модули.

Данный модуль разработан для защиты от уязвимостей, имеющих следующие классификационные признаки: - по способу применения: локальные; - по результату исполнения: получение доступа к файлам с правами определенного пользователя или администратора, временное или полное прекращение работоспособности сервиса, временное или полное прекращение работоспособности сервера.

Хранение информации о модулях сбора информации и полученных ими данных осуществляется с помощью центров сбора и обработки сообщений.

В системе существует предопределенный пользователь с именем «default», для которого в дескрипторе доступа задаются маски разрешенных и запрещенных действий по умолчанию. Разрешения для этого пользователя начинают применяться только в том случае, если для текущего пользователя никакие разрешения не заданы. Разрешения для пользователей задаются в структуре вида: - userid - локальный идентификатор пользователя; - enable - маска разрешенных действий; - disable - маска запрещенных действий. Следует отметить, что запрещенные действия имеют более высокий приоритет перед разрешенными, то есть, например, если заданы одновременно и разрешение, и запрещение на чтение данных, то чтение данных будет запрещено. В общем случае, возможность доступа определяется но следующим правилам: - если идентификатор безопасности не задан, то любой пользователь может выполнять любые действия кроме «ACCESS» и «CONTROL», так как последние применимы только к существующему дескриптору безопасности; - если для пользователя не заданы никакие права доступа, то в качестве определяющей правил доступа определяются разрешения для пользователя «default». Если нрава доступа не заданы для идентификатора пользователя, но заданы для идентификатора группы безопасности Windows NT или роли SQL Server a, к которым он принадлежит, то этот пользователь обладает правами, заданными для таких группы или роли; - если для пользователя заданы несколько наборов прав доступа, то результирующими правами enable и disable будут являться битовые суммы (операция «логическое суммирование» -«ИЛИ») по соответствующим маскам доступа; - действие является разрешенным, если оно разрешено в маске enable (т.е. соответствующий бит установлен) и не запрещено в маске disable (бит в disable сброшен), в противном случае действие является запрещенным.

Для примера рассмотрим права доступа, заданные таблицей 3. В этом случае, если при подключении пользователя использовалась аутентификация Windows, то все пользователи домена, кроме пользователя «Юра» имеют права «ЛИ», но если при этом пользователь домена еще имеет роль «Db_datareader» то все операции для пользователя запрещены. Все гости домена (в этом случае используются разрешения для пользователя default) имеют право на чтение, изменение и удаление данных, но просмотр или изменение разрешений им запрещены.

Реализация центра сбора и обработки сообщений

На основе разработанной архитектуры системы контроля доступа к распределенным корпоративным базам данных для демонстрации предлагаемых принципов были реализованы программные средства (далее - ПС) контроля доступа к информации. Для разработки данных ПС использовалась платформа Microsoft Windows ХР/2000. Часть программных модулей системы были реализованы на языке программирования C++ с использованием сред разработки Microsoft Visual Studio и Borland C++ Builder в виде исполнимых модулей и динамических библиотек. Другие компоненты системы реализованы для СУБД MS SQL Server на ее диалекте языка SQL - Transact SQL в виде хранимых процедур.

Рассмотрим особенности реализации некоторых модулей, входящих в систему контроля доступа к распределенным корпоративным базам данных подробнее.

В модуле организации сеансов связи реализованы технологии замены драйвера протокола (на примере протокола ODBC) и технология перехвата и подмены трафика (на примере протокола PIPE). Первый способ организации связи применим втом случае, когда клиентское приложение использует для соединения с базой данных протокол ODBC. Этот способ заключается в подмене источника данных вызываемого ODBC-драйвера на собственный. При данном способе организации сеансов связи клиентская часть модуля реализуется в виде динамически подключаемой библиотеки - драйвера ODBC, транслирующего вызовы ODBC-функций на сервер, где они выполняются, и затем возвращающего результаты исполнения пользовательской программе.

В случае успешной попытки соединения вызовы ODBC-функций, запрашиваемые клиентским приложением, представляются в виде некоторого пакета, заголовком которого является код функции и общая длина пакета, а телом -параметры, передаваемые функции. Затем этот пакет передается серверной части модуля и обрабатывается там, после чего результаты работы в ответном пакете передаются клиенту. Таким образом, работа но защищенному каналу осуществляется для клиентского приложения абсолютно прозрачно и требует от пользователя только перенастройки источника данных на использование другого источника данных.

Следует отметить, что драйвер может быть скомпилирован и для локального использования, то есть, в таком случае сетевого взаимодействия не происходит, а драйвер перехватывает вызываемые клиентским приложением ODBC-функции с целью анализа и модификации SQL-выражения для добавления процедур проверки прав доступа. Для разделения локальной и сетевой версий ODBC-драйвера используется конструкция //define DIRECTDRIVER. Если она определена, то используется локальный вариант. При этом параметры вызовов ODBC-функций (возможно, модифицированные) передаются оригинальному ODBC-драйверу MS SQL Server напрямую.

Другой метод организации сеансов связи реализует перехват PIPE протокола. Это обусловлено более сложной адресацией клиентов MS SQL Server a при перехвате TCP протокола. С точки зрения именования для клиентов MS SQL Server перехват PIPE каналов достаточно прозрачный. Далее рассмотрим принципы именования РІРЕ-серверов.

Алиас MS SQL Server a можно создать с помощью штатных средств, например «Client network utility». В качестве имени сервера можно выбрать любое имя, в том числе реальное netbios-имя компьютера назначения, в качестве имени канала следует выбрать имя в формате «\\localhost\pipe\sqlsva\client\hostserver». Заметим, что независимо от алиаса, PIPE будет находится на локальном компьютере, так как это PIPE перехватчика-клиента, строка «pipe\sqlsva» однозначно идентифицирует множество всех PIPE серверов, которые откроет служба PIPE перехватчика-клиента. Далее в имени канала следует реальное netbios-имя компьютера назначения. Таким образом, пользователь может настроить алиас так, чтобы, во-первых, он указывал на перехватчика-клиента, а во-вторых однозначно идентифицировал сервер назначения. При таком способе реализации для перехватчика-клиента не требуется дополнительной настроііки при изменениях в алиасах, так как служба перехватчика-клиента опрашивает соответствующий ключ реестра как в момент загрузки, так и в момент работы, производя мониторинг изменений в этом разделе реестра. Если изменения в параметрах обнаружены, запускается процедура активации изменившихся каналов. Идентификация каналов, которые необходимо обслуживать, осуществляется на основе факта присутствия в параметре идентифицирующей подстроки «pipe\sqlsva» в имени канала. Соответствующий канал начинает обслуживаться перехватчиком-клиентом сразу же после изменений, вносимых в алиасы MS SQL Server a как через непосредственную правку раздела реестра «HKLM\SOFTWARE\Microsoft\ MSSQLServer\Client\ConnectTo», так и с помощью штатных утилит клиентской части MS SQL Server. Работа клиентов MS SQL Server с службой перехватчика-клиента ничем не отличается от работы с любым другим обычным MS SQL Server oM. Таким образом, основная функциональность настройки заключена в настройке сеансов связи, реализуемых перехватчиком-клиентом и перехватчиком-сервером.

Похожие диссертации на Разработка архитектуры системы контроля доступа к распределенным корпоративным базам данных