Содержание к диссертации
Введение
1. Исследование особенностей защиты баз данных в корпоративных информационных системах 11
1.1. База данных как объект защиты 11
1.2. Описание и классификация угроз нарушения информационной безопасности в базах данных 15
1.3. Целостность как критерий оценки защищенности БД от воздействий 18
1.3.1. Понятие целостности и его связь с другими свойствами системы 18
1.3.2. Модели целостности 20
1.3.3. Количественное определение целостности 22
1.4. Анализ уязвимостей технологий обработки информации в БД 27
1.4.1. Уязвимости традиционных технологий процессов обработки 27
1.4.2. Уязвимость многоуровневой архитектуры СУБД 28
1.4.3. Угрозы и уязвимости, связанные с новыми технологиями переработки информации 30
1.5. Постановка задачи исследования 33
Выводы по главе 1 36
2. Разработка методики противодействия нарушению информационной безопасности на этапах предмашинной обработки ...37
2.1. Влияние на целостность данных искажений, вносимых оператором 37
2.1.1. Частота и виды ошибок оператора 37
2.1.2. Функции распределения потока ошибок оператора 39
2.1.3. Анализ методов обнаружения ошибок операторов 43
2.2. Влияние средств защиты от НСД на целостность данных 49
2.3. Оценка эффективности повышения качества приема информации
на основе адаптации к параметрам канала связи нижнего уровня 58
Выводы по главе 2 65
3. Анализ и исследование методов обеспечения целостности данных в БД 67
3.1. Управление целостностью в БД 67
3.2. Сравнение существующих технологий восстановления БД 69
3.3. Вероятностная модель процесса выполнения транзакций в БД 71
3.4. Повышение эффективности работы OLTP-приложений 82
3.5. Влияние ошибок операционных данных на качество агрегированных данных 90
3.5.1. Агрегирование данных 90
3.5.2. Расчет оператора агрегирования и вычислительных затрат 102
3.5.3. Формирование агрегатов на основе сетевого графа 104
3.5.4. Верификация данных 109
Выводы по главе 3 111
4. Программная реализация и экспериментальная проверка методов защиты данных 113
4.1. Программа моделирования ошибок оператора 113
4.2. Оценка эффективности метода защиты целостности с помощью контрольного суммирования по mod N 118
4.3. Программная реализация методов защиты от ошибок оператора 122
4.3.1. Программа автоматизированного подсчета числа и видов ошибок ввода текстовой информации 122
4.3.2. Программная реализация алгоритма восстановления искаженных и потерянных данных 123
4.3.3. Программа семантического анализа документов 128
4.4. Система анализа данных на основе OLAP-технологии 130
4.5. Система сбора статистики «Аналитик» 135
4.5.1. Структура системы сбора статистики «Аналитик» 135
4.5.2. Организация работы системы 138
4.5.3. Результаты экспериментальных исследований системы сбора статистики «Аналитик» 142
4.5.4. Методика организации проведения мониторинга БД 147
Выводы по главе 4 151
Выводы 153
Список использованной литературы 156
Приложения 164
- Описание и классификация угроз нарушения информационной безопасности в базах данных
- Функции распределения потока ошибок оператора
- Вероятностная модель процесса выполнения транзакций в БД
- Программная реализация алгоритма восстановления искаженных и потерянных данных
Описание и классификация угроз нарушения информационной безопасности в базах данных
Политика безопасности организации должна включать средства для обеспечения всех этих свойств, поскольку каждое из них значимо для эффективной защиты БД. Однако, если в существующих СУБД методы обеспечения безопасности достаточно хорошо реализованы, то методы поддержки целостности оставляют желать лучшего. Задача обеспечения целостности предусматривает комплекс мер по предотвращению непреднамеренного изменения или уничтожения информации, используемой информационной системой управления или системой поддержки принятия решений.
Вопросы поддержания целостности БД тесно соприкасаются с вопросами управления доступом, и во многих случаях для их решения используются одни и те же меха-низмы.
Для защиты конфиденциальности и целостности БД широко используются объекты БД такие как таблица, представление, индекс, кластер, табличная область (табличное пространство), роль, сегмент отката, библиотека и др., а также активные сущности (процедура, функция, пакет и триггер). Триггер имеет особое значение. Триггер - это хранимая процедура, которая автоматически выполняется тогда, когда происходит связанное с ним событие. Обычно события связаны с выполнением операторов вставки, модификации и удаления данных. Автоматическое срабатывание триггера при выполнении операций INSERT, DELETE, UPDATE создает возможности для дополнительного аудита и программируемого контроля выполняемых операций. Однако, триггеры могут быть использованы не только для реализации правил динамической проверки целостности дан-ных и дополнительного контроля доступа, но и для деструктивных действии, в частно-сти, создания нелегальной копии вводимых данных.
Эти же функции выполняют механизмы защиты от инъекций SQL (внедрение в SQL-предложения конструкции UNION, запрос которой возвращает конфиденциальную информацию), от анализа функциональных зависимостей, ограничений целостности и значений первичных ключей [84].
Угрозы доступности также могут привести к нарушению целостности. Например, используя уникальность натуральных, не генерируемых системой, первичных ключей, можно создать такую ситуацию, когда в таблицу невозможно будет вставить новые за-писи. При наличии ссылочной целостности можно организовать невозможность удале-ния родительских записей, умышленно (или неумышленно) создав подчиненные записи. При обновлении связанных записей, если внешний ключ не проиндексирован, в СУБД
Oracle, например, возможна организация взаимной блокировки, что приведет к сбою в транзакции. Блокировка записей или всей таблицы также делает ее недоступной для об новления. Загрузка системы бессмысленной работой, например [78], запрос вида SE LECT FROM Tabl,Tabl ORDER BY 1, где мощность отношения (количество строк в таблице Tabl) Ni =10000, мощность результирующего отношения N = Ni 2 = 100000000, потребует значительных ресурсов системы, что отрицательно скажется на выполнении операций других пользователей. \ Рассмотренные определения не дают количественной оценки целостности. Такая задача в БД и не ставится. Поддержка целостности означает набор правил, которые пользователю не следует нарушать. Правила должны быть заданы на некотором удоб-ном языке и должны храниться в системном каталоге, а СУБД должна следить за соблюдением заданных правил. Правила формулируются в виде моделей. Ниже рассматриваются наиболее известные модели целостности. Известны следующие модели целостности [20, 42]. Модель целостности Белл -ЛаПадулы (Bell-LaPadula Model) позволяет построить многоуровневую защиту БД и предназначена для управления субъектами, запрашивающими доступ к информации, и объектами (файлами, записями, полями) на основе классов доступа и матрицы соотно-, шений между иерархическими и неиерархическими компонентами. Принцип данной модели кратко характеризуются фразой: «не писать вниз, не читать сверху» и включает два ограничения. Первое - называется простым свойством секретности: неиерархичет ские компоненты (объекты доступа) каждого уровня автоматически приписываются и всем более высоким уровням. Второе ограничение, называемое сложным свойством, состоит в том, что информация, принадлежащая какому-либо уровню секретности, никогда не может быть записана в какой-либо объект, имеющий более низкий уровень секретности. Уровень доступа - иерархический компонент (например, несекретно, конфиденциально, секретно, совершенно секретно). Модель разрабатывалась для обеспечения сохранности данных от несанкционированных действий.
Модель целостности Биба (Biba Integrity Model) была разработана Кеннетом Биба в 1977 году, с целью обойти слабые места модели Белл - ЛаПадулы. Это формальная система безопасного перехода компьютерной системы из одного состояния в другое, описывающая набор правил контроля доступа. Согласно ей данные и объекты группируются в упорядоченные уровни целостности, а затем на их взаимодействие накладываются два ограничения: 1. Аксиома Простой Целостности утверждает, что объект на заданном уровне целостности не может читать объект на более низком уровне. 2. Аксиома Сложной Целостности утверждает, что объект на заданном уровне целостности не должен писать объектам на более высоком уровне. Данная модель призвана повысить уровень поддержания целостности данных. Сохранение целостности преследует три цели: - предотвратить изменение данных неавторизованными субъектами; - предотвратить неавторизованное изменение данных авторизованными субъектами; - поддерживать внутреннюю и внешнюю актуальность (т.е. данные должны отражать реальный мир). Принцип модели Биба обычно кратко характеризуется фразой: «не писать наверх, не читать вниз». Это значит, что в соответствии с данной моделью целостности создавать объекты пользователи могут только на своем или более низком уровне целостности. При этом просматривать содержимое пользователи могут только на своем или более высоком уровне. Модель Гогера-Гезингера основана на теории автоматов. Согласно ей система может при каждом действии переходить из одного разрешенного состояния только в несколько других. Субъекты и объекты в данной модели защиты разбиваются на группы -домены, и переход системы из одного состояния в другое выполняется только в соответствии с таблицей разрешений, в которой указано какие операции может выполнять субъект. В данной модели при переходе системы из одного состояния в другое используются транзакции, что обеспечивает общую целостность системы.
Функции распределения потока ошибок оператора
Параметр X обратно пропорционален среднему значению величины . Для проверки гипотезы о соответствии статистических данных показательному закону распределения безошибочных интервалов был использован критерий согласия Пирсона. Результаты
вычисления значений % приведены в таблице 3. Для абсолютных значений частостей Х = 4,3309. По таблице вероятностей Р[х ) [61] находим, что РІх ))0,92. Следовательно, гипотезу о показательном законе распределения безошибочных интервалов можно считать не противоречащей статистическим данным.
Для подтверждения выдвинутых гипотез были разработаны программы моделирования искажений, вносимых оператором и проверки соответствия распределения их закону Пуассона. Программа моделирования искажений описана в п. 4.1. Она предназначена для формирования последовательности к - разрядных случайных чисел, внесения в них искажений и проверки эффективности используемого механизма контроля ошибок.
Проверка соответствия распределению Пуассона осуществлялась с помощью программы, главное окно которой с результатами проверки представлено на рисунке 2.1. Текст программы приведен в приложении Б.1. В окне показаны следующие поля: «Вероятности появления групп ошибок», «Количество чисел», «Длина интервала», «Параметры законов распределения». Пользователь может задавать вероятности внесения ошибок соответствующего типа в генерируемые числа, количество генерируемых случайных чисел, длину интервалов, на которые разбивается исходная последовательность чисел (параметр X в распределении).
В поле «Параметры законов распределения» указываются начальные значения параметров А- теоретических распределений Пуассона для каждого типа ошибок. Их можно задать до расчетов, но молено использовать для подбора параметров распределений в процессе расчета. Для повышения точности данного метода длину интервала следует выбирать больше 20 [96].
В разделе «Результаты» отображаются результаты расчетов, т. е. значения /2 для каждого типа ошибки. По полученным значениям % при заданной длине интервала X находится уровень значимости а, который и определяет степень соответствия полученных экспериментальных распределений теоретическому распределению Пуассона с заданными параметрами X.
Для начала проверки необходимо задать все поля, предназначенные для заполнения пользователем, и нажать кнопку «Проверить». Число степеней свободы к = s - г -1, где s - число возможных значений количества ошибок на заданном интервале. Фактически определяется как длина интервала разбиения плюс единица (Х+1); г - число параметров теоретического закона распределения.
Распределение Пуассона имеет всего один параметр X. Следовательно, к = 21 -1-1 = 19. Для уровня значимости, равного 0,05 и к = \9, хкр = 30,1 [17]. По результатам, представленным на рисунке 2.1, нетрудно заметить, что распределения для ошибок первого и четвертого типов не соответствуют распределению Пуассона. Значения X распределений можно изменять, пока не будут получены приемлемые значения х После каждого изменения значений параметров необходимо повторно на жимать кнопку «Проверить», при этом значения % будут изменяться в соответствии с внесенными изменениями. При подборе значений необходимо помнить, что при увеличении значения X кривая соответствующего распределения сдвигается вправо от оси ординат, а при уменьшении — наоборот, сдвигается влево к оси ординат и в пределе совпадает с ней. Если подбор параметров приводит к лучшему согласованию, то можно квалифицировать исходные значения вероятностей этих ошибок как промахи. Таким образом, проверка распределений позволяет не только выявить соответст вие закону распределения, но и устранить промахи эмпирических данных, что сущест венно влияет на качество исходных данных. Разработанное программное обеспечение позволит также сравнить эффективность применяемых средств контроля икажений, вно симых оператором, и выбрать наиболее адекватные методы и средства обеспечения це лостности данных. Известен ряд методов обнаружения ошибок операторов на отдельных этапах обработки данных [55]: счетные методы, математические методы контроля, метод контрольных чисел, логические методы контроля, комбинированные методы. Так, на этапе подготовки и ввода широко используется сличение информации с первичными документами, сравнение с масками, двойной ввод-вывод. Использование масок менее трудоемко, чем другие методы. Маски позволяют выявить ошибки в формате представления полей, но не в содержании. Например, для исследуемой базы данных объемом до 50 Логические методы контроля используются в СУБД как ограничения целостности и служат в большей степени обеспечению конфиденциальности. При передаче данных по каналам связи и обработки на ЭВМ используются следующие методы: контрольное суммирование, балансовый контроль, подсчет числа слов, контрольные знаки, логическая проверка на согласованность данных и т. д. Применяемые методы либо реализуются визуально и малопроизводительны, либо требуют большой избыточности. Для обеспечения целостности данных необходимы такие способы и технические решения, которые охватывали бы как можно большее число этапов обработки информации и могли быть реализованы программными методами. Одной из задач настоящего исследования является анализ возможностей защи ты целостности данных от искажений, вносимых операторами, методами, которые не требовали бы специальных избыточных кодов в технических средствах и в то же время могли быть использованы в каналах связи. С этой точки зрения наибольший-интерес представляет метод контрольных цифр, применяемый для защиты от ошибок постоян ной цифровой информации (шифры изделий, цехов, участков, поставщиков и потреби телей, материалов и т.п.) [67, 77, 82,]. Метод контрольных цифр основан на добавлении к исходному постоянному числу проверочной цифры или группы цифр, образованных в результате некоторых преоб-разований над исходным числом по заранее заданному алгоритму. Для обнаружения ошибок заранее вводятся избыточные (контрольные) символы а0, значения которых вычисляются по следующей формуле [57]:
Вероятностная модель процесса выполнения транзакций в БД
Следовательно, в шифрах, применяемых в информационных системах, происходит не только увеличение вероятности ошибки, пропорциональное S, m и п, но и увеличение многократных пачек ошибок, что приводит к нарушению целостности данных. Поэтому необходимы специальные меры по защите от ошибок. Причем все операции следует проводить над зашифрованными сообщениями. В частности, при введении метода контроля по модулю, рассмотренного в п. 2.1.3, целесообразно все операции также проводить над зашифрованными сообщениями, так как это позволит с большей вероятностью обнаружить ошибки в зашифрованной информации.
Корпоративная сеть обычно строится на основе локальных сетей. На качество работы сети влияют состояние передающей среды, сетевого оборудования (сетевых плат, концентраторов, коммутаторов), программного обеспечения сервера, настройка сетевой операционной системы, алгоритмы прикладного программного обеспечения (ШЛО). В качестве передающей среды могут использоваться все предлагаемые на данный мо мент линии связи [14]: медные кабели, 4-х проводные телефонные линии, волоконно оптические кабели, УКВ радиоканалы, микроволновые и спутниковые каналы. Скорость передачи колеблется от 75 бит/с (низкоскоростной модем) до 100 млн. бит/с. (стандарт ная скорость передачи по ВОЛС). ! Для выявления причин неудовлетворительной работы сети необходима комплексная диагностика. Организация диагностики сети подробно описана в [102], в том числе измерение числа ошибок на канальном уровне. Число искажений канального уровня не должно превышать 1% от общего числа переданных по сети кадров. В сетях Ethernet наиболее распространенными являются следующие типы ошибок: короткий кадр (64 байт) с правильной контрольной последовательностью; длинный кадр ( 1518 байт) с правильной или неправильной контрольной последовательностью; ошибки контрольной последовательности (CRC error); ошибка выравнивания (кадр, содержащий число бит, не кратное числу байт); блики (последовательность сигналов, отличных по формату от кадров Ethernet, не содержащая разделителя SFD и длиной более 72 байт). I Значительно большее влияние на работу ППО в сети оказывают такие ошибки, как бесследное исчезновение или искажение информации в сетевых платах, маршрутизаторах или коммутаторах при полном отсутствии информации об ошибках нижних уровней (канального и физического). При этом приемо-перёдающий блок этого оборудования вычисляет правильную контрольную последовательность уже искаженной ранее информации и корректно оформленный кадр передается по сети. Никаких ошибок не фиксируется, т.е. отсутствие ошибок на канальном уровне еще не гарантирует того, что информация в сети не искажается. Даже наличие защиты с помощью контрольной суммы, выраженной в виде бита четности или 16-битной реализации - CRC-16, не исключает искажение или исчезновение информации. Контрольная сумма защищает весь пакет, если в качестве транспортного протокола используется TCP или UDP. Если применяются протоколы IPX/SPX или непосредственно IP, то контрольная сумма защищает t лишь заголовок пакета. Одной из причин исчезновения пакетов данных являются помехи. В проводных каналах наиболее опасными являются импульсные помехи и кратковременные перерывы связи, практически для любых видов модуляции. В радиоканалах заметное влияние на вероятность ошибки оказывают флуктуационные шумы, в коротковолновых радиоканалах — изменения уровня сигнала вследствие замирания. , Далее рассматривается влияние импульсных помех и кратковременных перерывов на коммутируемые проводные каналы связи. Кратковременным перерывом считают наличие снижения уровня сигнала более 17,4 дБ длительностью не более 300 мс. Импульсная помеха описывается формой линии и функциями распределения пиковой амплитуды и скважности. Скважность характеризует "плотность" импульсных помех в сигнале и определяется как отношение длительности импульсной помехи к средней величине длительности интервала между соседними помехами.: Нормирование импульсных помех производится путем ограничения времени пре-рывания ими заданных порогов анализа. При этом на одном переприемном участке в точке с относительны уровнем 4,34 дБ (на выходе канала ТЧ) доля времени, в течение которой импульсные шумы превышают 200, 400 и 600 мВ, должна быть не более 5 #10"5; 2 -10"5 и 1-Ю"5, а для 90% часовых сеансов измерений - 20»10"6; 8»10"6 и 5»10"6.
Задача фильтрации импульсных помех состоит в обнаружении помехи и последующем исправлении искаженных значений амплитуды наблюдаемого сигнала. Задача обнаружения обычно формулируется в виде решающего правила у, в соответствии с которым принимается решение о наличии (у=1) или отсутствии (у=0) импульсной помехи в заданный момент времени наблюдения сигнала. В приемном устройстве импульсная помеха проявляется в виде изменения полярности принятых единичных элементов, называемого дроблением. Для коммутируемой сети наиболее характерны короткие дроб-ления до 10 мсек (более 50%). На входе приемных устройств (сетевых плат, модемов) устанавливаются линейные фильтры с определенной заданной постоянной времени t3 сглаживания дроблений. В этом случае за счет переходных процессов в линейном фильтре импульсы дроблений с длительностью т = 0 - ts на регистрирующее устройство не поступают. Следовательно, кривая плотности распределения длительности дроблений искусственно усекается в диапазоне (0 -13).
Следствием ошибок является повторная передача кадров. Поэтому необходимо исследовать эффективность применения метода адаптации к параметрам канала связи, подверженного импульсным помехам, за счет изменения скорости и соответствующего изменения зоны регистрации приемника. Для моделирования дискретного канала использовалась модель Пуртова [101] с вероятностью ошибки р = 10"3 и коэффициентом группирования ОС =0,3. Будем считать, что изменения положительной и отрицатель ной полярностей равновероятны.
Программная реализация алгоритма восстановления искаженных и потерянных данных
В работе рассмотрены теоретические и практические вопросы решения задач повышения эффективности обнаружения, предупреждения, исправления и защиты от искажений информации по всей цепи от первичного до итогового документа. Основные результаты диссертационной работы можно сформулировать следующим образом.
Рассмотрены и классифицированы угрозы информационной безопасности в базах данных в защищенных корпоративных информационных системах. Предложено оценивать защищенность информации с позиции обеспечения целостности данных во всех информационных процессах корпоративных информационных систем, оцениваемую вероятностью ошибки в соответствующем процессе переработки информации. Защита целостности должна гарантировать полноту, согласованность и достоверность данных в процессах сбора, передачи и обработки информации.
Разработаны модели противодействия угрозам информационной безопасности, возникающим на нижнем уровне защищенной корпоративной информационной системы. Показано, что для цифровой информации, составляющей более 75% объема обрабатываемых сообщений, наиболее эффективным методом обнаружения ошибок, вносимых оператором, является суммирование цифровых данных по mod N с переменными весовыми коэффициентами, обеспечивающее обнаружение ошибок как на этапе подготовки информации, так и в канале связи в пределах защищаемой цифровой последовательности. Разработана методика противодействия нарушению информационной безопасности, обеспечивающая высокую степень обнаружения и исправления ошибок, позволяющая использовать безызбыточные коды на этапах предварительной обработки информации и снижающая количество необнаруженных ошибок на 16-18%. Разработаны алгоритмы и программы моделирования на ЭВМ ошибок, вносимых операторами, и методов защиты, приведены аналитические соотношения для расчета их эффективности. Разработаны алгоритмы и программы автоматизированного подсчета ошибок, синтаксического анализа документов, восстановления искаженных и потерянных данных.
Получены аналитические зависимости между ошибками на входе и выходе дешифратора путем моделирования непрерывного шифрования на основе регистров сдвига с обратными связями. Установлены границы увеличения числа искаженных двоичных разрядов в последовательности на выходе дешифратора. Определено влияние блочного криптографического преобразования информации на увеличение вероятности ошибок на выходе дешифратора. 4. Предложена вероятностная модель процесса выполнения транзакций, которая позволяет определить вероятности корректно оцененного правильного выполнения транзакции Рпр, обнаружения ошибки Р00, вероятность необнаруженной ошибки Рно, вероятность ложной ошибки Рло, а также значения максимально возможного числа повторений транзакций. Это делает возможным исследование базы данных традиционным математическим аппаратом, что очень важно при оценке качества функционирования ИС и выборе критериев их оптимизации. 5. Показано, что выбором стратегии управления параллельным выполнением транзакций можно добиться достаточно высокой эффективности функционирования OLTP-систем (операционных БД), являющихся источниками данных для хранилищ. Предложенный вариант комбинированной стратегии сохраняет достоинства оптимистической и пессимистической стратегий и снижает их недостатки, т.е. обеспечивает приемлемое время отклика при небольшом количестве ошибок. 6 . Разработаны алгоритмы и программы моделирования на ЭВМ ошибок, вносимых операторами, автоматизированного подсчета ошибок, синтаксического анализа документов, восстановления искаженных и потерянных данных и методов защиты, приведены аналитические соотношения для расчета их эффективности. Выполнена программная реализация и экспериментальная оценка корректности выносимых на защиту результатов. Практическая значимость диссертации подтверждается актами о внедрении результатов исследования в ОАО "НПО Тайфун", КНИИТМУ, МУЗ «Детская городская больница», учебный процесс кафедры компьютерных систем и сетей (ЭИУ2-КФ) КФ МГТУ им. Н.Э.Баумана. Основные положения и отдельные результаты работы докладывались и обсуждались на следующих конференциях и семинарах: - на V международном симпозиуме «Интеллектуальные системы (ИНТЕЛС 2002)» (Калуга 2002 г.); - на VI международном симпозиуме «Интеллектуальные системы (INTELS 2004)» (Саратов 2004 г.); - на V всероссийской научно-технической конференции «Новые информационные тех нологии в системах связи и управления». ФГУП КНИИТМУ, (Калуга 2006 г.); - на VIII всероссийской научно-технической конференции «Новые информационные технологии в системах связи и управления». ФГУП КНИИТМУ, (Калуга 2009 г.). В качестве направлений дальнейших исследований можно выделить: разработка методологии оценки качества и эффективности методов защиты данных от искажений и потерь; разработка математического аппарата для теоретического исследования целостности данных.